- Używany sprzęt:
- Program dla ESP8266:
- Wbudowany serwer internetowy ESP8266:
- Komunikacja z aplikacją mobilną (Blynk)
- Komunikacja z ThingSpeak
Celem tego projektu jest zdalne monitorowanie banku baterii litowych w instalacji słonecznej. Śledzi prąd indywidualnie dla każdego pakietu baterii. Komunikuje się również z ładowarką słoneczną i oblicza aktualne wartości mocy zasilającej dom i baterię akumulatorów. Zawiera serwer WWW z wykresami, wewnętrznymi danymi historycznymi i opcjonalnie może również przesyłać dane do Thingspeak i Blynk.
Ten projekt IoT jest częścią eksperymentu mającego na celu sprawdzenie zachowania i żywotności akumulatorów litowo-jonowych (w tym BMS) połączonych równolegle w instalacji słonecznej. Stosowana tutaj chemia akumulatorów litowych to nie LiFePo4 3,65 V / ogniwo, co jest zwykle zalecane do instalacji słonecznych, ale zwykłe akumulatory litowo-jonowe 4,2 V / ogniwo, o większej pojemności i ryzyku eksploatacji. Jak widać na powyższym zdjęciu, zestawy akumulatorów są umieszczone w workach bezpieczeństwa poniżej, a analizator akumulatorów i wszystko jest na dachu. Zastosowany tutaj kontroler słoneczny to Tracer 2206AN.
Używany sprzęt:
Pełny schemat obwodu tego systemu monitorowania akumulatora litowo-jonowego przedstawiono poniżej
NodeMCU (D-Duino) deska jest zasilany przez DC-DC przetwornicy który konwertery napięcia wyjściowego akumulatora do 5V. Regulowany pin wyjściowy DC 3,3 V na płycie służy do zasilania czujników DS18B20 i RHT03. Schemat pokazuje również, jak 5 baterii litowych (każda 24 V) jest podłączonych przez czujnik prądu ACS712 w celu monitorowania prądu płynącego przez każdą baterię. Wyjściowe wartości analogowe z tych czujników prądu są mierzone przez moduły ADS1115 ADC w celu uzyskania wyższej rozdzielczości, a otrzymany wynik jest następnie przesyłany do karty ESP za pośrednictwem komunikacji I2C. Możesz również odnieść się do tego projektu monitorowania energii, w którym ACS712 był używany w podobny sposób. Zastosowaliśmy również moduł czujnika napięciado monitorowania napięcia akumulatora. Ten projekt monitoruje tylko pełne napięcie akumulatora. Możesz sprawdzić ten projekt monitorowania napięcia ogniwa, jeśli musisz monitorować napięcie każdej baterii.
Można zauważyć, w jaki sposób panel słoneczny (24 V 500 W) jest połączony z akumulatorem za pośrednictwem kontrolera słonecznego MPPT w celu ładowania akumulatora z energii słonecznej. Kontroler słoneczny komunikuje się przez RJ45, więc użyliśmy konwertera XY-017 TTL na RS485 do komunikacji między kontrolerem słonecznym a płytą ESP8266.
Program dla ESP8266:
W tym monitorze akumulatora litowo-jonowego, ESP8266 (D-duino) jest zaprogramowany do odczytu prądu i napięcia akumulatora, a także komunikuje się z ładowarką słoneczną w celu obliczenia aktualnych wartości mocy zasilającej dom i akumulatora. Skonfigurowaliśmy również serwer WWW do tworzenia wykresów danych historycznych i wizualizacji parametrów. Zaprogramowaliśmy również opcję przesyłania tych wartości do ThingSpeak i Blynk, aby monitorować je zdalnie przez Internet. Jeśli jesteś nowy w ThingSpeak i Blynk, możesz polecić poniższe dwa projekty.
- Monitorowanie temperatury i wilgotności za pomocą Thingspeak
- Sterowanie diodą LED RGB za pomocą Blynk
Po zrozumieniu podstaw program nie wymaga objaśnień. Kompletny program dla tego projektu można pobrać z poniższego linku. Możesz użyć Arduino IDE, aby bezpośrednio przesłać ten kod do płyty ESP.
- Kod systemu monitorowania baterii litowej opartej na IoT
Uwagi o programie
Upewnij się, że dołączasz następujące pakiety bibliotek do swojego Arduino IDE przed skompilowaniem kodu
- Adafruit_ADS1015 (wejścia analogowe)
- NtpClientLib (klient NTP z obsługą DST)
- TimeLib (funkcje czasu)
- Adafruit SSD1306 - sterownik wyświetlacza OLED
- RemoteDebug - dzienniki debugowania usługi Telnet
- Modbus Master - do komunikacji MODBUS
W przypadku komunikacji Modbus RS485 z Tracerem, te odniesienia od dpoulson i jaminNZx były bardzo przydatne
Wbudowany serwer internetowy ESP8266:
Strona serwera WWW pokazuje surowe pomiary z bieżących mierników i wartości uzyskane z komunikacji MODBUS z ładowarką. Zapewnia opcję bezpośredniego sterowania przekaźnikiem półprzewodnikowym AC i wyjściem obciążenia DC w ładowarce słonecznej. Zapewnia również opcję włączania / wyłączania komunikacji Blynk lub Modbus. Pełna strona serwera WWW dotycząca systemu monitorowania akumulatorów litowo-jonowych jest pokazana poniżej
Poniższy obraz przedstawia wartości dystrybucji energii z paneli fotowoltaicznych do domu, banku akumulatorów i pakietów:
Dane w czasie rzeczywistym wykreślone jako wykres na serwerze sieciowym są pokazane poniżej
Możliwe jest również przeglądanie danych historycznych poprzez wybranie wymaganych danych i czasu. Umożliwia to zdalne monitorowanie systemu w dowolnym momencie.
Komunikacja z aplikacją mobilną (Blynk)
Jak wspomniano wcześniej, program dla tego monitora baterii litowej pozwala nam również komunikować się z aplikacją mobilną o nazwie Blynk do zdalnego monitorowania. Możesz pobrać aplikację ze sklepu Play lub Appstore. Migawka aplikacji mobilnej jest pokazana poniżej
Po pobraniu aplikacji Blynk możesz zeskanować poniższy kod QR, aby przygotować konfigurację projektu do testów.
Komunikacja z ThingSpeak
ThingSpeak to popularna platforma analityczna IoT. Zaprogramowaliśmy również nasz ESP, aby wysyłał monitorowane wartości do ThingSpeak. Dashboard ThingSpeak jest pokazany poniżej.
Pełny kod tego monitora baterii litowej można pobrać stąd.
Mam nadzieję, że zrozumiałeś projekt i wykorzystasz go podczas budowania swoich systemów. Jeśli masz jakieś pytania, możesz je zostawić w sekcji komentarzy lub skorzystać z naszego forum, aby uzyskać odpowiedzi na inne pytania techniczne.