Logování a zobrazování dat ze Sitonu pomocí EmonCMS

Pro jeden ze způsobu logování dat z fotovoltaického měniče Siton 210 budeme potřebovat Arduino s připojeným převodníkem RS485 a Raspberry Pi s nainstalovaným serverem EmonCMS.

Pro příjem a zpracování dat z měniče potřebujeme obvod z Arduinem a převodníkem RS485 tzv. EmonHub, který je napájen z Raspberry Pi napětím 5V. Komunikační dvouvodičové rozhraní mezi měničem a EmonHubem je RS485, které má velkou odolnost proti rušení, umožňuje připojení na velkou vzdálenost a zároveň je možné na stejnou sběrnici připojovat více zařízení.

 

Plošný spoj je možné si zhotovit na univerzální desce, osadit součástky a propojit drátky nebo zhotovit podle tohoto návodu nebo případně si nechat někde vyrobit. Dokumentace pro DPS je v sekci downloadu, rozměry DPS 43,2 x 60,3mm

Dále si vyrobíme plochý propojovací kabel s konektory IDC 10pinový pro připojení EmonHubu a 40pinový k Raspberry Pi.

Pro nahrání programu do Arduina stáhneme ze stránek Arduina programovací prostředí IDE a to zip. verzi, kterou po stažení rozbalíme na disk. V rozbaleném adresáři Arduino-1.x.x vytvoříme složku portable. 


Pak IDE spustíme spuštěním souboru arduino.exe, provede se inicializace celého prostředí a složky portable. Program ukončíme a do podsložky arduino-1.x.x\<portable\sketchbook\libraries nakopírujeme potřebné knihovny EasyTransfer a Modbus ze sekce download.


Poté Připojíme Arduino přes USB kabel k PC a opět spustíme Arduino IDE a otevřeme .ino zdrojový program pro EmonHub. Program je ve dvou verzích, pro komunikace EasyTransfer a pro ModBus RTU. ModBus verze je lepší pro připojení více měničů Siton, protože si sám komunikaci řídí. Parametry komunikace ModBus RTU jsou, rychlost 9600 Bd; 8 data bitů; 1 stop bit, bez parity.


Verzi EasyTransfer můžeme použít pro starší verzi software v měniči, ale není nejvhodnější pro připojení více měničů, protože komunikace není řízená a může občas dojít ke konfliktu dat na sběrnici RS485, kdy více měničů pošlou data současně. V Arduino IDE nastavíme správnou desku Arduino Nano a Port s připojeným Arduinem, pak program zkompilujeme a zároveň nahrajeme do Arduina. Hotový EmonHub propojíme z měničem nebo více měniči přes RS485 A-A; B-B vhodné je propojit i GND pro srovnání potenciálů.

 

Jako zařízení pro logování a zobrazení dat nám bude sloužit Raspberry Pi s nainstalovaným serverem EmonCMS, odzkoušeno mám Raspberry Pi 2 model B a Raspberry Pi 3 model B.

Raspberry je pak možné nastavit tak, že se data budou odesílat na internetový server EmonCMS, kde je bude mít přístupné odkudkoliv. Drobnou nevýhodou je, že EmonCMS je už placený a za každý jednotlivý logovaný údaj se platí 1 libra ročně. Pokud budeme logovat jen do Raspberry s EmonCMS data si běžně zobrazíme jen pří přístupu z domácí sítě. Existuje možnost i tato data mít přístupná z internetu, ale je potřeba mít veřejnou IP adresu a v nastavení domácího AP routeru provést přesměrování požadavku na naši veřejnou IP s portem 80 na Raspberry s běžícím serverem EmonCMS. 
Ze stránek GitHubu stáhneme image SD karty s EmonCMS, odzkoušel jsem poslední verzi emonSD-30Oct18 (Stable).

Pomocí aplikace Rufus nahrajeme image na micro SD kartu, při záměru logovaní dat je vhodné použít min. 16GB.

Pokud použijeme Raspberry Pi 2 je potřeba po nahraní image v  souboru na  SD kartě config.txt smazat řádky:
arm_freq=1200
arm_freq_min=600

SSH je v této verzi image defaultně vypnuté, pokud bychom ho potřebovali zprovoznit pro připojení k Raspberry přes terminálovou aplikaci, je třeba vytvořit v kořenové složce na kartě soubor ssh (soubor je bez přípony)

Micro SD kartu vložíme do Raspberry, připojíme přes HDMI monitor, klávesnici a síťový UTP kabel k domácímu AP routeru. Připojíme napájení a na monitoru můžeme sledovat bootování, poté proběhne update, trvá to cca 15-20minut.

Pro rozšíření oddílu pro logování dat na zbytek prostoru na SD kartě, provedeme přihlášení:

emonpi login: pi
Password: emonpi2016

Po přihlášení pak příkazem:

sudo emonSDexpand

provedeme rozšíření oddílu na celý zbytek SD karty, trvá to cca 20 minut a po ukončení se Raspberry vypne. Odpojíme a znovu připojíme napětí 5V z micro USB, počkáme až Raspberry nabootuje a zjistíme jeho IP adresu.

Aktuální IP adresu Raspberry můžeme zjistit i z jiného PC v síti pomocí aplikace Advanced IP Scanner.

Protože aktuální IP se může občas změnit, je lepší ji rezervovat v nastavení AP routeru v sekci DHCP, pak bude mít Raspberry IP adresu pokaždé stejnou. Zjištěnou IP adresu zadáme do prohlížeče na jiném PC v síti a zobrazí se nám úvodní stránka EmonCMS.

 

Postup na zprovoznění ukládání a příklad vizualizace dat ve videu.

Poznámka:
Další možnosti vytváření různých grafů v EmonCMS je přes menu Setup / Graphs. Vložení vytvořeného grafu na Dashboard pak provedeme přes ikonu grafů a položku graph.

Download:

EmonHub3.ino
DPS_EmonHub3
Modbus library
EasyTransfer library

Příspěvek byl publikován v rubrice Arduino, Elektronika, Fotovoltaika se štítky , , , , , , . Můžete si uložit jeho odkaz mezi své oblíbené záložky.

Napsat komentář

Vaše emailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *