WiFi logger elektroměrů s pulsním výstupem

Logger umožňuje načítaní pulsů až tří elektroměrů s pulsním výstupem a načtené hodnoty odesílá na server Emoncms a funguje na základě modulu Wemos s ESP8266. Hodnoty počtu pulsů a Wh jsou ukládány do paměti typu FRAM FM24LC16, která je oproti eeprom mnohem rychlejší, má skoro neomezený počet zápisů a údaje si pamatuje i po vypnutí napájení paměti.
Schema zapojení
Pro logger využívám upraveny WifiManager Kena Taylora, kde se nastaví připojení k WiFi síti, adresa, port, ID a API klíč serveru Emoncms a pak parametry pulsních výstupů jednotlivých elektroměrů( pulse/kWh) a počáteční stav ve Wh. Na server Emoncms se odesílají z každého elektroměru celkový počet pulsů, celkový stav Wh a síla WiFi signálu.
Program je zkompilovaný a nahraný do modulu přes Arduino IDE (1.8.5) s doinstalovanou podporou pro ESP8266. Před kompilaci je potřeba mít v Manažeru desek Arduino IDE podporu pro ESP8266 ve verzi 2.4.1, nejnovější verze způsobují chyby překladu.
Plošný spoj
DPS je upravená jak pro osazení paměti FRAM v DIP tak v SOIC pouzdře. Použil jsem paměť FM24CL16 2kB se sběrnici I2C, která byla cenově i skladově dostupná. Pro použití paměti v programu jsem nenašel žádnou knihovnu, která by s touto pamětí spolehlivě fungovala. Paměť nemá jen jednu I2C adresu, ale je organizovaná do 8 x 256Byte bank, kdy je každá banka přístupná přes I2C adresu. Bance 0 odpovídá adresa 0x50 až po banku 7 s adresou 0x57. Proto jsem upravil původní knihovnu EEPROMAnything.h
tak aby fungovala s pamětí pro mé potřeby.
Přes serial port 115200Bd je možné kontrolovat stav modulu. Delším stiskem tlačítka CONFIG se spoušti konfigurace modulu. Pokud je osazen jumper DEL a tlačítkem CONFIG se spustí konfigurace dojde ke smazání WiFi konfigurace , formátování vnitřní SPIFFS paměti kde je uloženo nastavení wifimanageru a smazaní celé FRAM paměti do které se ukládají pulsy a Wh. K napájení modulu používám upravenou USB nabíječku s vyvedenými vodiči pro pro 230V.
Realizace
Download:
SW ESP_nacitani_pulsu_elektromeru_wifimanager
Máte aj vy zaujímavú konštrukciu, alebo článok a chceli by ste sa o to podeliť s viac ako 250.000 čitateľmi? Tak neváhajte a dajte nám vedieť, radi ju uverejníme a to vrátane obrazových a video príloh. Rovnako uvítame aj autorov teoretických článkov, či autorov zaujímavých videí z oblasti elektroniky / elektrotechniky.
Kontaktujte nás!
Ahoj,
vyzerá to fajne. Avšak bola testovaná presnosť?
Ja mám vyrobené niečo veľmi podobné.
Sčítavam pulzy a potom raz za hodinu ich pošlem na server.
Napriek tomu som zistil, že mi to uteká.
Tak som si vyrobil generátor pulzov a zistil som, že presnosť je tak 0,5% -> t.z. cca do 5impulzov z tisíc sa stratí.
Prerábal som rôzne kód, checkoval som to aj priamo v Loopke tam sa to zlepšilo na cca 0,1% ale aj tak som nedosiahol úplnú presnosť.
Máte to lepšie? Ak áno vedeli by sme to prekonzultovať?
Ďakujem
Palo