sériová komunikace micrologu
Souhrn tématu
Microlog lze použít pro zpracování sériových dat z balancérů baterií, které posílají 64byte zprávy o napětí a proudu jednotlivých článků. Pro správné načítání dat se využívá postup zpracování po jednotlivých znacích s oddělováním hodnot separátory, což umožňuje pracovat s delšími datagramy i při omezené velikosti bufferu. Připojení regulátoru Midnite přes Modbus RS232 je možné pro čtení a využití dat k ovládání periferií a vizualizaci stavu baterií.
- kodl69
- Příspěvky: 8490
- Registrován: sob črc 19, 2014 8:56 pm
- Reputace:1103
- Lokalita: severně od Brna
- Systémové napětí: 48V
- Výkon panelů [Wp]: 8000
- Kapacita baterie [kWh]: 12
- Chci prodávat energii: NE
- Chci/Mám dotaci: NE
- Lokalita:severně od BrnaSystémové napětí:48VVýkon panelů [Wp]:8000 Kapacita baterie [kWh]:12
sériová komunikace micrologu
Uvažuji o použití micrologu pro ovládání mé FV, ale potřeboval bych zpracovávat sériová data z balancérů - mám 2 sady aku, balancery posílají na 16s baterii vždy 64byte dat, napětí jednotlivých článků, proudy balancerů - bylo by možné nějak toto do micrologu připojit a potom zaznamenaná data vizualizovat, příp. použít k ovládání periferií? Příp. připojit regulátor midnite (modbus, rs 232) a z tohoto vyčítat data?
ostrov skoro 8kWp neustále ve stádiu zrodu: smartshunt(ex WBJR), MPPT150/45, MPPT 250/100(ex midnitesolar 150 clasic lite), 16S a různě P cca 340Ah Winston, MP II 5000,( ex Powerjack 8kW, ex samodomo cca 4kW). 48V DC rozvody a spotřebiče.
- svango
- Příspěvky: 169
- Registrován: čtv dub 12, 2018 2:44 pm
- Reputace:9
- Bydliště: Trencin
Re: sériová komunikace micrologu
jedna z moznosti by mohla byt: https://www.arduino.cc/en/Tutorial/ArduinoSoftwareRS232
druha: https://www.sparkfun.com/datasheets/Pro ... ter-v2.pdf
druha: https://www.sparkfun.com/datasheets/Pro ... ter-v2.pdf
FVE1 - 3kW do 48V 7.2kWh LiFe cez 5kW Axpert, FVE2 domcek pre maleho - 0.26kW do 12V 0.5kWh LiFe cez Victron375, termicky ohrev vody 200 l
- kodl69
- Příspěvky: 8490
- Registrován: sob črc 19, 2014 8:56 pm
- Reputace:1103
- Lokalita: severně od Brna
- Systémové napětí: 48V
- Výkon panelů [Wp]: 8000
- Kapacita baterie [kWh]: 12
- Chci prodávat energii: NE
- Chci/Mám dotaci: NE
- Lokalita:severně od BrnaSystémové napětí:48VVýkon panelů [Wp]:8000 Kapacita baterie [kWh]:12
Re: sériová komunikace micrologu
Tak jako jak to připojit hw nemám problém, ani s galvanickým oddělením, ale řekni mi, kam načtu 16 hodnot napětí a 16 hodnot proudu, navíc datagram je tak dlouhej, že nevleze do vstupního bufferu UART na arduinu, a když ho zvětším, tak zas chybí místo v paměti... Navíc už je to 3 roky starý, o použití micrologu vůbec neuvažuju, všechno ostatní mi řeší midnite.
ostrov skoro 8kWp neustále ve stádiu zrodu: smartshunt(ex WBJR), MPPT150/45, MPPT 250/100(ex midnitesolar 150 clasic lite), 16S a různě P cca 340Ah Winston, MP II 5000,( ex Powerjack 8kW, ex samodomo cca 4kW). 48V DC rozvody a spotřebiče.
- youda
- Příspěvky: 3153
- Registrován: stř dub 27, 2016 12:12 am
- Reputace:962
Re: sériová komunikace micrologu
Ahoj Kodl69,
když už tady vyplavalo to historické vlákno, tak bych se chtěl zeptat - jakým způsobem si nakonec vyřešil to načítání dat z balancerů?
Pokud bys to pořád chtěl načítat do Arduina a zatím to nemáš, tak většinou se to dělá cca takto:
- buffer nastavíš malý, klidně jen 50 bytů
- po příchodu každého znaku do bufferu kontroluješ, jestli se jedná o separátor hodnot. Například FF, 00 nebo čárka
- jakmile narazíš na separátor, zpracuješ obsah bufferu (přesuneš do proměnné) a vyprázdníš jej
Touto technikou lze zpracovávat libovolně dlouhou zprávu (datagram), za předpokladu že jednotlivé hodnoty ve zprávě jsou odděleny nějakým znakem - separátorem.
když už tady vyplavalo to historické vlákno, tak bych se chtěl zeptat - jakým způsobem si nakonec vyřešil to načítání dat z balancerů?
Pokud bys to pořád chtěl načítat do Arduina a zatím to nemáš, tak většinou se to dělá cca takto:
- buffer nastavíš malý, klidně jen 50 bytů
- po příchodu každého znaku do bufferu kontroluješ, jestli se jedná o separátor hodnot. Například FF, 00 nebo čárka
- jakmile narazíš na separátor, zpracuješ obsah bufferu (přesuneš do proměnné) a vyprázdníš jej
Touto technikou lze zpracovávat libovolně dlouhou zprávu (datagram), za předpokladu že jednotlivé hodnoty ve zprávě jsou odděleny nějakým znakem - separátorem.
Youdova ostrovní laboratoř 20kWp: https://youda.mypower.cz
- mypower.cz
- R.I.P.
- Příspěvky: 4895
- Registrován: pát bře 04, 2011 11:36 am
- Reputace:523
Re: sériová komunikace micrologu
Presne totez co pise youda jsem chtel napsat dnes odpoledne, ale nebyl jsem u netu
youda me predbehl. Presne tak. Me badani pri tehdejsim aktivnejsim vyvoji micrologu me privedla take na zpracovavani vetsich dat za behu tak jak prichazeji. Microlog takhle zpracovava HTTP requesty. Vicmene je to stavovy automat.
https://microlog.mypower.cz/source
treba funkce
Dodatecne omluva za trilete zpozdeni kodlovi, to me uplne uniklo tohle tema teda 
Mam uz i novou verzi kde zpracovavam i HTTP POST, ctu a parsuju Cookies z HTTP Headeru a podobne. Ulozit cely request do ram a az pak zpracovat by bylo samozrejme nekdy neresitelne. Obzvlast kdyz POSTnu treba soubor se zalohou konfigurace, ktera se uklada do EPROM. Soucasne verze tohle jeste neumi a nemam plne dokoncenou novou, proto neni jeste vydano.
https://microlog.mypower.cz/source
treba funkce
Kód: Vybrat vše
word WebServer_c(char * lbuf,char c,word xmode, byte * datastruct, unsigned long * xparam)Mam uz i novou verzi kde zpracovavam i HTTP POST, ctu a parsuju Cookies z HTTP Headeru a podobne. Ulozit cely request do ram a az pak zpracovat by bylo samozrejme nekdy neresitelne. Obzvlast kdyz POSTnu treba soubor se zalohou konfigurace, ktera se uklada do EPROM. Soucasne verze tohle jeste neumi a nemam plne dokoncenou novou, proto neni jeste vydano.
- rottenkiwi
- Příspěvky: 5449
- Registrován: pát úno 13, 2015 2:24 pm
- Reputace:287
- Lokalita: SO, SK
- Bydliště: SO, SK
- Lokalita:SO, SK
Re: sériová komunikace micrologu
To mi nejako nejde do hlavy. Ako spracujem 64 bytov, ak mám 16-znakový buffer
a CRC mám až na konci ? Resp. ako zakomponujem kontrolný kód už do tých 16 znakov ?
a CRC mám až na konci ? Resp. ako zakomponujem kontrolný kód už do tých 16 znakov ?
- mypower.cz
- R.I.P.
- Příspěvky: 4895
- Registrován: pát bře 04, 2011 11:36 am
- Reputace:523
Re: sériová komunikace micrologu
Zpracovavam uplne normalne opet za behu jako by CRC predem byl OK a prubezne si pocitam taky CRC. Pokud CRC na zaver nesedi, pak cely vysledek zahodimrottenkiwi píše:To mi nejako nejde do hlavy. Ako spracujem 64 bytov, ak mám 16-znakový buffer
a CRC mám až na konci ? Resp. ako zakomponujem kontrolný kód už do tých 16 znakov ?
Kdo je online
Uživatelé procházející toto fórum: Claudebot [Bot]
