Aplikace pro vizualizaci dat z MorningStar TriStar
Diskuze na téma regulátorů TriStar Morningstar
-
- Příspěvky: 97
- Registrován: čtv zář 15, 2011 11:50 am
Re: Aplikace pro vizualizaci dat z MorningStar TriStar
Majitelů SDS je tu víc a tohle vypadá hodně pěkně. Díky.
Pokusy v podobě kusu funkčního kódu jsou vítány
Pokusy v podobě kusu funkčního kódu jsou vítány
-
- Příspěvky: 999
- Registrován: čtv črc 28, 2011 12:01 pm
Re: Aplikace pro vizualizaci dat z MorningStar TriStar
Bezva, to je moc hezký reverzní inženýring. Pomocí tohoto je tedy možné vyčítat na jakékoliv platformě co umí alespoň HTTP request a jednoduchou aritmetiku. Díky!
-
- Příspěvky: 1403
- Registrován: pon zář 12, 2011 11:32 am
Re: Aplikace pro vizualizaci dat z MorningStar TriStar
Skvělé, poklona...
Inteligentní ostrov - www.vati.cz
-
- Příspěvky: 221
- Registrován: ned kvě 20, 2012 9:20 pm
Re: Aplikace pro vizualizaci dat z MorningStar TriStar
zde je prakticky PHP script na vycitani dat z tristaru:
upravte si radek 3 a 4 a melo by to snad fungovat vsude.
upravte si radek 3 a 4 a melo by to snad fungovat vsude.
Kód: Vybrat vše
<?
$ip_tristaru="192.168.1.1";
$klic=61; //popis klicu viz nize
/* Dostupne klice
38 napeti baterie
51 cilove napeti
27 napeti pole
61 Sweep Vmp
62 Sweep Voc
*/
//nejdrive ziskame hodnotu Hi
if (($handle = fopen("http://".$ip_tristaru."/MBCSV.cgi?ID=1&F=4&AHI=0&ALO=0&RHI=0&RLO=1", "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$hi=$data[4]; }
fclose($handle);
}
//potom ziskame hodnotu Lo
if (($handle = fopen("http://".$ip_tristaru."/MBCSV.cgi?ID=1&F=4&AHI=0&ALO=1&RHI=0&RLO=1", "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$lo=$data[4]; }
fclose($handle);
}
//potom vypocteme scale factor
$scale_factor=$hi.($lo/65535);
//nacteme pozadovanou hodnotu
if (($handle = fopen("http://".$ip_tristaru."/MBCSV.cgi?ID=1&F=4&AHI=0&ALO=".$klic."&RHI=0&RLO=1", "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$hodnota1=$data[3];
$hodnota2=$data[4]; }
fclose($handle);
}
//a provedeme vypocet
$hodnota=$hodnota1*256+$hodnota2;
//prozeneme to pres scale factor a tim dostaneme srozumitelnou hodnotu
$vysledek=(($hodnota*$scale_factor)/32768)/10;
echo $vysledek;
- Přílohy
-
- test.rar
- (597 bajtů) Staženo 175 x
-
- R.I.P.
- Příspěvky: 4927
- Registrován: pát bře 04, 2011 11:36 am
Re: Aplikace pro vizualizaci dat z MorningStar TriStar
pokud mi neco neuniklo, nedalo by se cist vse hromadne jednim HTTP dotazem? Nejsem si jist ale onehda jsem to tak nejak povrchne zkoumal a mam pocit ze www rozhrani tristaru cte vsechny hodnoty zaroven v jednom dotazu a az pote je zpracuje, coz by bylo zrejme o neco efektivnejsi z pohledu sitoveho provozu.
-
- Příspěvky: 221
- Registrován: ned kvě 20, 2012 9:20 pm
Re: Aplikace pro vizualizaci dat z MorningStar TriStar
muj tristar to cte presne takto, nacte stranku plus javascript a pak si pomoci ajaxu dotahuje vsechny modbus pakety pekne po jednom. Samozrejme hi a lo cte pouze jednou na zacatku session ne pro kazdou hodnotu.
-
- R.I.P.
- Příspěvky: 4927
- Registrován: pát bře 04, 2011 11:36 am
Re: Aplikace pro vizualizaci dat z MorningStar TriStar
aha .... je to mozne. Kdybych byl navrhar jejich www rozhrani, resil bych to jako blok dat a zpracoval to az na strane www rozhrani. Duvody by byly mensi vytizeni systemu beziciho na tristaru a mensi rezie prenosu po siti (mene http dotazu). Ale samozrejme pokud to maji resene tak ze jeden dotaz = jedna hodnota, pak je to samozrejme taky reseni.
-
- Příspěvky: 372
- Registrován: ned srp 12, 2012 10:12 am
- Lokalita: SK - pri TT
- Systémové napětí: 48V
- Výkon panelů [Wp]: 7900
- Kapacita baterie [kWh]: 30
- Chci prodávat energii: NE
- Chci/Mám dotaci: NE
Re: Aplikace pro vizualizaci dat z MorningStar TriStar
To by bolo skvele, ale nejde mi to, kedze potrebujem volat tristar na porte 8088. Ak zadam klasicky IP:port, nenacita to. Vysledok da vzdy 0. Robim niekde chybu?
O malých domácich veterných elektrárňach: http://www.vawt.om2cm.sk/
-
- Příspěvky: 221
- Registrován: ned kvě 20, 2012 9:20 pm
Re: Aplikace pro vizualizaci dat z MorningStar TriStar
to je divny, me to fuguje.
zkus tuhle adresu dat do browseru
jestli to bude fungovat, tak ten port nedavej do promenne, ale primo
ho napis do toho fopenu takto:
zkus tuhle adresu dat do browseru
Kód: Vybrat vše
http://192.168.1.1:8080/MBCSV.cgi?ID=1&F=4&AHI=0&ALO=0&RHI=0&RLO=1
ho napis do toho fopenu takto:
Kód: Vybrat vše
fopen("http://".$ip_tristaru.":8080/MBCSV.cgi?ID=1&F=4&AHI=0&ALO=0&RHI=0&RLO=1", "r"))
-
- Příspěvky: 372
- Registrován: ned srp 12, 2012 10:12 am
- Lokalita: SK - pri TT
- Systémové napětí: 48V
- Výkon panelů [Wp]: 7900
- Kapacita baterie [kWh]: 30
- Chci prodávat energii: NE
- Chci/Mám dotaci: NE
Re: Aplikace pro vizualizaci dat z MorningStar TriStar
Aaaa, moja chyba. Zadaval som tam port, ktory je v tom tvojom programiku. Ten je iny, ako port pre webserver. Uz to je ok. Vysledok dava sice s 12 desatinnymi miestami a kazdy vysledok je iny (webserver, tvoj program, php skript), ale to bude tym, ze slnko prave vychadza a nemeria sa to v tom istom case.
Je mozne tam zakomponovat aj nejake automaticke obnovanie - znovunacitanie dat po nastavenom case?
Pre zobrazenie vykonu je ten vypocet iny?
Je mozne tam zakomponovat aj nejake automaticke obnovanie - znovunacitanie dat po nastavenom case?
Pre zobrazenie vykonu je ten vypocet iny?
O malých domácich veterných elektrárňach: http://www.vawt.om2cm.sk/
-
- Příspěvky: 221
- Registrován: ned kvě 20, 2012 9:20 pm
Re: Aplikace pro vizualizaci dat z MorningStar TriStar
ano je to tim, ze ty data dostavs v jiny cas, nicmne ty rozdily urcite nejsou vice jak desetiny.
jinak ten muj ukazkovy php skrip nebyl myslen jako nejaka konkretni aplikace ale spise jako
demonstrace vyuziti meho navodu v praxi. Konkretni aplikaci necham rad na nekom kdo umi
php lip nez ja
ano pro vypocet vykonu je jiny vzorec, stejne tak pro vypocet proudu.
jinak ten muj ukazkovy php skrip nebyl myslen jako nejaka konkretni aplikace ale spise jako
demonstrace vyuziti meho navodu v praxi. Konkretni aplikaci necham rad na nekom kdo umi
php lip nez ja
ano pro vypocet vykonu je jiny vzorec, stejne tak pro vypocet proudu.
-
- Příspěvky: 372
- Registrován: ned srp 12, 2012 10:12 am
- Lokalita: SK - pri TT
- Systémové napětí: 48V
- Výkon panelů [Wp]: 7900
- Kapacita baterie [kWh]: 30
- Chci prodávat energii: NE
- Chci/Mám dotaci: NE
Re: Aplikace pro vizualizaci dat z MorningStar TriStar
Znovunacitanie by som si uz nejak dorobil, s pomocou netu... Ale tie odlisne vypocty pre vykon a prud by si nemohol dat?
O malých domácich veterných elektrárňach: http://www.vawt.om2cm.sk/
-
- Příspěvky: 810
- Registrován: pon srp 08, 2011 9:55 am
Re: Aplikace pro vizualizaci dat z MorningStar TriStar
Nedavno jsem pri pouziti aplikace pro vizualizaci dat z MorningStaru Tristaru dostal tuto chybu:
Bylo to v okamziku, kdyz jsem mel okno aplikace minimalizovane a neco jsem nastavoval v nastaveni aplikace, takze je to asi moje chyba, jen tak informuji.
Bylo to v okamziku, kdyz jsem mel okno aplikace minimalizovane a neco jsem nastavoval v nastaveni aplikace, takze je to asi moje chyba, jen tak informuji.
-
- Příspěvky: 830
- Registrován: pon led 21, 2013 6:36 pm
- Lokalita: Doubravička
- Systémové napětí: 48V
- Výkon panelů [Wp]: 8700
- Kapacita baterie [kWh]: 25
- Chci prodávat energii: NE
- Chci/Mám dotaci: NE
- Bydliště: Doubravička
Re: Aplikace pro vizualizaci dat z MorningStar TriStar
Našel jsem nějaký zajímavý projekt. Je to sice s arduinem, ale třeba to někomu pomůže při inspiraci.
http://solar-monitoring-project.googlec ... svn/trunk/
http://solar-monitoring-project.googlec ... svn/trunk/
24x Solární panel JINKO SOLAR 225 Pmpp=225W, 2x Regulátor STUDER VT-80, 2x Střídač Studer XTM 4000-48, BSP, RCC, 1x AKU 48V LFP200Ah 1x AKU 48 V LFP280Ah. Řizení a dohled, SDS, vlastní vyčítání arduinem DUE v krabičce (ARMOSY), export dat do RPi s databází a html stránkou.
http://95.85.214.80, viewtopic.php?t=4809
http://95.85.214.80, viewtopic.php?t=4809
-
- Příspěvky: 221
- Registrován: ned kvě 20, 2012 9:20 pm
Re: Aplikace pro vizualizaci dat z MorningStar TriStar
takze pro zobrazeni proudovych hodnot je postup podobny jako u napetovych hodnot.
Nejdrive potrebujem dostat proudovy scale factor.
K jeho vypoctu potrebujeme Hi a Lo hodnoty
Hi ziskame:
Lo ziskame:
potom vypocteme stejnym zpusobem jako jsme to delali u V scale factoru
Vypocet I scale factoru je:
Hi+(Lo/65535)
v mem pripade
80 + (0/65535) = 800 (Pozor Hi a Lo se scitaji TEXTOVE proto tedy 80+0 = 800)
Jakmile mame proudovy scale factor
muzeme nacist napr dobijeci proud:
a potom stejnym vzorcem prevedeme na citelnou hodnotu, ale pouzijeme proudovy scale faktor.
((Hodnota * Iscale factor) /32768) /10
---------------------------------------------------------------------------------------------------------------------
pro vypocet vykonovych hodnot potrebujeme proudovy i napetovy scale factor.
jakmile mame tyto dva scale faktory k dispozici, muzeme si zavolat napr. vystupni vykon
v mem pripade treba: 1,4,2,3,244
tj:
3*256+224=1012
a pouzijeme vzorec:
(hodnota * IScale factor * VScale factor)/131072/100
tj:
(1012*800*1800)/131072/100 = 111W
Nejdrive potrebujem dostat proudovy scale factor.
K jeho vypoctu potrebujeme Hi a Lo hodnoty
Hi ziskame:
Kód: Vybrat vše
http://192.168.1.1/MBCSV.cgi?ID=1&F=4&AHI=0&ALO=2&RHI=0&RLO=1
Kód: Vybrat vše
http://192.168.1.1/MBCSV.cgi?ID=1&F=4&AHI=0&ALO=3&RHI=0&RLO=1
Vypocet I scale factoru je:
Hi+(Lo/65535)
v mem pripade
80 + (0/65535) = 800 (Pozor Hi a Lo se scitaji TEXTOVE proto tedy 80+0 = 800)
Jakmile mame proudovy scale factor
muzeme nacist napr dobijeci proud:
Kód: Vybrat vše
http://192.168.1.1/MBCSV.cgi?ID=1&F=4&AHI=0&ALO=39&RHI=0&RLO=1
((Hodnota * Iscale factor) /32768) /10
---------------------------------------------------------------------------------------------------------------------
pro vypocet vykonovych hodnot potrebujeme proudovy i napetovy scale factor.
jakmile mame tyto dva scale faktory k dispozici, muzeme si zavolat napr. vystupni vykon
Kód: Vybrat vše
http://192.168.1.1/MBCSV.cgi?ID=1&F=4&AHI=0&ALO=58&RHI=0&RLO=1
tj:
3*256+224=1012
a pouzijeme vzorec:
(hodnota * IScale factor * VScale factor)/131072/100
tj:
(1012*800*1800)/131072/100 = 111W
-
- Příspěvky: 221
- Registrován: ned kvě 20, 2012 9:20 pm
Re: Aplikace pro vizualizaci dat z MorningStar TriStar
zde pro vas mam dalsi PHP priklad, tentokrat se vsemi daty
na zacatku jsou tri funkce ktere je mozna dat do externiho souboru ale pro zjednoduseni jsem dal vse do jednoho souboru:
vystupem aplikace jest kompletni data:
Edit: oprava v jednotce napeti pole
na zacatku jsou tri funkce ktere je mozna dat do externiho souboru ale pro zjednoduseni jsem dal vse do jednoho souboru:
Kód: Vybrat vše
<?
$ip_tristaru="192.168.1.1:80";
$klice=array(
"napeti baterie" =>array("38","V"),
"cilove napeti" =>array("51","V"),
"Nabijeci proud" =>array("39","A"),
"Napeti pole" =>array("27","V"),
"Proud pole" =>array("29","A"),
"Vystupni vykon" =>array("58","W"),
"Sweep Vmp" =>array("61","V"),
"Sweep Voc" =>array("62","V"),
"Sweep Pmax" =>array("60","W"),
"Teplota Baterie"=>array("37","C"),
"Teplota Tristar"=>array("35","C"),
"Kilowatty" =>array("56","kWh"),
);
// funkce
function get_data($ip,$alo) {
if (($handle = fopen("http://".$ip."/MBCSV.cgi?ID=1&F=4&AHI=0&ALO=".$alo."&RHI=0&RLO=1", "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$hodnota[1]=$data[3];
$hodnota[2]=$data[4]; }
fclose($handle);
}
Return $hodnota;
}
function get_scale($ip,$alo){
$hi=get_data($ip,$alo);
$lo=get_data($ip,$alo+1);
$hi=$hi[2];
$lo=$lo[2];
$scale_factor=$hi.($lo/65535);
return $scale_factor;
}
function get_scaled_value($raw_data,$jednotka,$vscale,$iscale){
switch ($jednotka) {
case "V":
$hodnota=$raw_data[1]*256+$raw_data[2];
$vysledek=(($hodnota*$vscale)/32768)/10;
break;
case "A":
$hodnota=$raw_data[1]*256+$raw_data[2];
$vysledek=(($hodnota*$iscale)/32768)/10;
break;
case "W":
$hodnota=$raw_data[1]*256+$raw_data[2];
$vysledek=(($hodnota*$vscale*$iscale)/131072)/100;
break;
case "C":
$vysledek=$raw_data[2];
break;
case "kWh":
$vysledek=$raw_data[2];
break;
}
return round($vysledek,2);
}
// samotny program
$vscale=get_scale($ip_tristaru,0);
$iscale=get_scale($ip_tristaru,2);
foreach($klice as $polozka=>$hodnota)
{
list($alo,$jednotka)=$hodnota;
$raw_data=get_data($ip_tristaru,$alo);
echo $polozka . ":" . get_scaled_value($raw_data,$jednotka,$vscale,$iscale).$jednotka."<br>";
}
Kód: Vybrat vše
napeti baterie:26.72V
cilove napeti:29.4V
Nabijeci proud:3.69A
Napeti pole:25.48A
NProud pole:1.57A
Vystupni vykon:99.65W
Sweep Vmp:57.34V
Sweep Voc:67.55V
Sweep Pmax:88.44W
Teplota Baterie:25C
Teplota Tristar:25C
Kilowattt:148kWh
Edit: oprava v jednotce napeti pole
- Přílohy
-
- test.rar
- (865 bajtů) Staženo 161 x
Naposledy upravil(a) prochazka85 dne pon kvě 06, 2013 12:32 pm, celkem upraveno 1 x.
-
- Příspěvky: 372
- Registrován: ned srp 12, 2012 10:12 am
- Lokalita: SK - pri TT
- Systémové napětí: 48V
- Výkon panelů [Wp]: 7900
- Kapacita baterie [kWh]: 30
- Chci prodávat energii: NE
- Chci/Mám dotaci: NE
Re: Aplikace pro vizualizaci dat z MorningStar TriStar
To je vynikajuce! Dakujem velmi pekne!
kWh to ukazuje akosi menej, neviem ci to nie je hodnota po niektorom resete.
Napatie pola davalo zlu hodnotu, ked som prepisal "A" na "V" tak to uz je ok. Ale to s tym nemohlo suvisiet, bolo to mozno len zle nacitane.
Keby to malo este dve veci: charge state a automaticke obnovovanie udajov, tak by tomu uz nic nechybalo. Potom by som sa uz snad vedel pohrat s nejakym krajsim grafickym vystupom. Obnovit celu stranku by som dokazal, ale to asi nie je najlepsie riesenie. O Ajaxe viem len ze existuje...
edit: podla toho co vidim v programe s tym asi prepisanie A na V suviselo...
kWh to ukazuje akosi menej, neviem ci to nie je hodnota po niektorom resete.
Napatie pola davalo zlu hodnotu, ked som prepisal "A" na "V" tak to uz je ok. Ale to s tym nemohlo suvisiet, bolo to mozno len zle nacitane.
Keby to malo este dve veci: charge state a automaticke obnovovanie udajov, tak by tomu uz nic nechybalo. Potom by som sa uz snad vedel pohrat s nejakym krajsim grafickym vystupom. Obnovit celu stranku by som dokazal, ale to asi nie je najlepsie riesenie. O Ajaxe viem len ze existuje...
edit: podla toho co vidim v programe s tym asi prepisanie A na V suviselo...
Naposledy upravil(a) miroc dne pon kvě 06, 2013 11:58 am, celkem upraveno 1 x.
O malých domácich veterných elektrárňach: http://www.vawt.om2cm.sk/
-
- Příspěvky: 830
- Registrován: pon led 21, 2013 6:36 pm
- Lokalita: Doubravička
- Systémové napětí: 48V
- Výkon panelů [Wp]: 8700
- Kapacita baterie [kWh]: 25
- Chci prodávat energii: NE
- Chci/Mám dotaci: NE
- Bydliště: Doubravička
Re: Aplikace pro vizualizaci dat z MorningStar TriStar
Děkuji moc pane, tady je vážně každý den svátek. Jeden den napíšeš ježíškovi a druhý den máš dárek. Trochu jsem to oprášil (Nproud pole v A asi není ta správná jednotka ). Chodí to skvěle. PARÁDA
24x Solární panel JINKO SOLAR 225 Pmpp=225W, 2x Regulátor STUDER VT-80, 2x Střídač Studer XTM 4000-48, BSP, RCC, 1x AKU 48V LFP200Ah 1x AKU 48 V LFP280Ah. Řizení a dohled, SDS, vlastní vyčítání arduinem DUE v krabičce (ARMOSY), export dat do RPi s databází a html stránkou.
http://95.85.214.80, viewtopic.php?t=4809
http://95.85.214.80, viewtopic.php?t=4809
-
- Příspěvky: 830
- Registrován: pon led 21, 2013 6:36 pm
- Lokalita: Doubravička
- Systémové napětí: 48V
- Výkon panelů [Wp]: 8700
- Kapacita baterie [kWh]: 25
- Chci prodávat energii: NE
- Chci/Mám dotaci: NE
- Bydliště: Doubravička
Re: Aplikace pro vizualizaci dat z MorningStar TriStar
Ta špatná hodnota Napětí pole samozřejmně souvisí, viz program. Protože když dáš "A", tak se to počítá podle vorce na proud (iscale). Takže je to potřeba opravit! Ale alespoň to není taková nuda, vždy je potřeba trochu postudovat materiál. Ještě jednou D Ě K U J I autorovi za prográmek.
Snažím se příklad aplikovat na zařízení SDS, ale zatím se mi nedaří. Nemohu od tristaru dostat odpověd přes funkci
http_get(192,168,1,251,'192.168.1.251','/MBCSV.cgi?ID=1&F=4&AHI=0&ALO=35&RHI=0&RLO=1');
Pokusím se ještě postudovat. Další pokus udělám s tím, že uvedený příklad nahraji do SDS, výsledky uveřejním zde.
Snažím se příklad aplikovat na zařízení SDS, ale zatím se mi nedaří. Nemohu od tristaru dostat odpověd přes funkci
http_get(192,168,1,251,'192.168.1.251','/MBCSV.cgi?ID=1&F=4&AHI=0&ALO=35&RHI=0&RLO=1');
Pokusím se ještě postudovat. Další pokus udělám s tím, že uvedený příklad nahraji do SDS, výsledky uveřejním zde.
24x Solární panel JINKO SOLAR 225 Pmpp=225W, 2x Regulátor STUDER VT-80, 2x Střídač Studer XTM 4000-48, BSP, RCC, 1x AKU 48V LFP200Ah 1x AKU 48 V LFP280Ah. Řizení a dohled, SDS, vlastní vyčítání arduinem DUE v krabičce (ARMOSY), export dat do RPi s databází a html stránkou.
http://95.85.214.80, viewtopic.php?t=4809
http://95.85.214.80, viewtopic.php?t=4809
-
- Příspěvky: 221
- Registrován: ned kvě 20, 2012 9:20 pm
Re: Aplikace pro vizualizaci dat z MorningStar TriStar
samozrejmne mate pravdu, byla to moje chyba v poli "Napeti pole" =>array("27","A"), byla chybne uvedena jednotka A melo tam byt V
-
- Podobná témata
- Odpovědi
- Zobrazení
- Poslední příspěvek
-
- 1 Odpovědi
- 687 Zobrazení
-
Poslední příspěvek od bubenikpp
-
- 30 Odpovědi
- 2958 Zobrazení
-
Poslední příspěvek od z.karas
-
- 8 Odpovědi
- 1888 Zobrazení
-
Poslední příspěvek od rottenkiwi
-
- 17 Odpovědi
- 2666 Zobrazení
-
Poslední příspěvek od Mikel
-
- 4 Odpovědi
- 1152 Zobrazení
-
Poslední příspěvek od ACDC