Wraz z rozwojem technologii energii odnawialnej, systemy zasilane energią słoneczną zyskały na popularności. Projekt Smart-Energy-System projektuje i wdraża inteligentny system zarządzania baterią i obciążeniem oparty na panelach słonecznych, bateriach i Arduino. Panel słoneczny przekształca światło słoneczne w energię elektryczną, aby ładować baterię, a bateria, za pomocą przetwornicy podwyższającej, dostarcza moc do Arduino i innych urządzeń peryferyjnych.
Arduino jest odpowiedzialne za monitorowanie stanu baterii, zbieranie oraz wyświetlanie danych o napięciu, natężeniu i mocy baterii i obciążeniach. Jednocześnie system wykorzystuje moduł INA226 do monitorowania kluczowych parametrów takich jak napięcie, natężenie i moc baterii i dwóch obciążeń.
Komponenty sprzętowe
Następujące komponenty nie są sprzedawane na tej stronie. Zaleca się zakup ich zgodnie z Twoimi potrzebami:
1. Bateria (5V): Zapewnia zasilanie dla Arduino i obciążenia.
2. Wyświetlacz: Wyświetla dane dotyczące napięcia, prądu i mocy baterii oraz obciążenia.
3. Drewniana deska: Wspiera i mocuje różne elementy sprzętowe.
Połączenia systemowe
-
Panel słoneczny: Zapewnia stabilny prąd i napięcie do ładowania baterii przez przetwornicę obniżającą napięcie.
-
Bateria: Dostarcza zasilanie 12V do Arduino, zapewniając jego działanie.
-
Arduino: Połączone z wyświetlaczem przez I2C, aby pokazać dane w czasie rzeczywistym o stanie baterii i obciążenia.
-
Moduł INA226: Monitoruje napięcie, prąd i moc zarówno baterii, jak i dwóch obciążeń.
Implementacja kodu
#include "INA226.h" #define INA_COUNT 4 // IIC Address Selection // A1 = 0 A0 = 0 ->0x40 // A1 = 0 A0 = 1 ->0x41 // A1 = 1 A0 = 0 ->0x44 // A1 = 1 A0 = 1 ->0x45 INA226 INA[INA_COUNT] = { INA226(0x40), INA226(0x41), INA226(0x44), INA226(0x45) }; char string_V[10]; char string_I[10]; char string_W[10]; char string_X[10]; void setup() { Serial.begin(115200); Serial.println(__FILE__); Serial.print("INA226_LIB_VERSION: "); Serial.println(INA226_LIB_VERSION); Wire.begin(); bool niepowodzenie = false; dla (int ID = 0; ID < INA_COUNT; ID++) { if (!INA[ID].begin() ) { failed = true; Serial.println(ID); } INA[ID].ustawMaksymalnyPrądShunt(8, 0.01); } jeśli (niepowodzenie) { Serial.println("Nie można połączyć się z jednym lub więcej INA. Napraw i uruchom ponownie"); while (1); } Serial.println("\nID\tBUS\tSHUNT\tPRĄD\tMOC"); } void loop() { float voltage = INA[0].getBusVoltage(); dtostrf(napięcie, 4, 3, string_V); // Konwertuj liczbę zmiennoprzecinkową na łańcuch znaków, zachowując trzy miejsca po przecinku char string_X[50]; char str[50]; sprintf(string_X, "page0.t10.txt=\"%s V\"\xff\xff\xff", string_V); // Łączenie łańcuchów znaków Serial.print(string_X); Serial.print(str); opóźnienie(1000); }
Funkcje
-
Monitorowanie baterii: Używa modułu INA226 do monitorowania napięcia, prądu i mocy baterii w czasie rzeczywistym oraz przesyłania danych do Arduino za pomocą komunikacji szeregowej.
-
Funkcjonalność wyświetlacza: Wyświetla napięcie, prąd i moc zarówno baterii, jak i obciążenia na ekranie LCD za pomocą I2C.
-
Zarządzanie obciążeniem: System wykorzystuje Arduino do monitorowania stanu dwóch obciążeń i dostosowuje zasilanie na podstawie danych pobranych z modułu INA226.
-
Zdalne sterowanie: System może być zintegrowany z platformą inteligentnego domu za pomocą IoT, co umożliwia zdalne sterowanie przez aplikację mobilną w celu przeglądania danych i dostosowywania ustawień systemu.
Przypadki użycia
-
Zdalne monitorowanie baterii: Użytkownicy mogą monitorować stan ładowania baterii i poziomy mocy, zapewniając, że urządzenia działają w optymalnym zakresie mocy.
-
Zarządzanie obciążeniem: Odpowiednie dla inteligentnych domów lub systemów zasilanych energią słoneczną, może monitorować wiele urządzeń obciążeniowych, aby zapewnić stabilną pracę.
-
Przyjazne dla środowiska zarządzanie energią: System wykorzystuje energię słoneczną, zmniejszając zależność od tradycyjnych źródeł energii i poprawiając zrównoważony rozwój systemu.
Przyszły rozwój i ekspansja
-
Rozszerzenie wielofunkcyjne: Użytkownicy mogą dodać dodatkowe moduły czujników, takie jak czujniki temperatury, wilgotności i światła, aby jeszcze bardziej usprawnić monitorowanie środowiska.
-
Inteligentne przewidywanie i dostosowanie: System będzie wykorzystywał technologię AI do inteligentnego przewidywania zużycia energii, dostosowując tryby zasilania w celu optymalizacji wydajności systemu.
-
Optymalizowane zarządzanie energią słoneczną: W miarę jak technologia paneli słonecznych nadal się rozwija, system może integrować bardziej wydajne panele słoneczne, aby zwiększyć ogólną efektywność ładowania i czas użytkowania.
-
Zarządzanie wieloma urządzeniami: Dzięki wykorzystaniu platform chmurowych i IoT, użytkownicy mogą zarządzać i monitorować wiele urządzeń, co umożliwia szerszą kontrolę systemów inteligentnego domu.
Wniosek