PV-Monitor trifft LoRa Boiler

Published November 2021 in None

Der PV-Monitor ermöglicht das direkte Auslesen der Daten einer Solaranlage. Ein Anlagenmonitoring ohne Internetverbindung ist somit möglich. Auf Basis der ausgelesenen Echtzeitwerte wird ein Heißwassergerät (Boiler) mit Sonnenstrom betrieben. Die Zentrale bildet ein Raspberry Pi, auf dem meine eigene SmartHome Lösung läuft. Eine Verbindung zum Heißwassergerät (Raspi Pico) ist mit einem LoRa Modul realisiert, die PV Anlage ist per LAN und ModBus_TCP angebunden. Alle Programme sind in Python bzw. Micropython geschrieben.

can't load pic01_logo.jpg Foto Wikipedia  

Seit einiger Zeit haben wir eine Fotovoltaik-Anlage in Betrieb. Die Anlage besteht aus Solarmodulen, Wechselrichtern und Akku. Wie leider üblich, ist man zwar Eigentümer der Anlage, hat aber nicht die Hoheit über die eigenen Anlagendaten. Der Hersteller greift die Daten ab und stellt sie dann "freundlicherweise" dem Eigentümer zu seinen Bedingungen über ein Webportal wieder zur Verfügung. Für eine Anlage, die 25 Jahre und mehr in Betrieb sein soll, ist die Abhängigkeit von der Webseite eines Anbieters ein ziemliches Risiko. Es gibt Anlagen, die bei einem längerfristigen Internetausfall oder Insolvenz des Portalbetreibers ihre Funktion einstellen. Kein Strom trotz Sonnenschein.

Bei Herstellern, die das SunSpec ModBus-Protokoll unterstützen und Zugriff auf die Anlage ermöglichen, ist zumindest eine gewisse Risikominimierung vorhanden. Die Anlage muss dazu ggf. vom Installateur passend konfiguriert werden.

Hardware

Die Anlage ist über LAN an eine FritzBox angeschlossen. Dort kann man eine Internet- oder nur eine Heimnetzberechtigung der PV-Anlage einstellen. Ein Raspberry Pi greift über die FritzBox per ModBus_TCP auf die Anlage zu und kann Daten des Wechselrichters und des Energiemeters abrufen. An den Netzbezugs- oder Einspeisedaten erkennt der RasPi, ob Solarenergie eingespeist und damit über den eigenen Verbrauch hinaus produziert wird. Ist dies der Fall, gibt der RasPi diese Übermenge per LoRa Verbindung (LoRa_RFM95W Modul) an einen Microcontroller (Raspberry Pico, LoRa_SX1276 Modul) weiter. Der Controller schaltet daraufhin einen Warmwasserboiler ein, sofern dessen Temperatur zu niedrig ist. Damit der Boiler nicht mehr als die zur Verfügung stehende Überschussenergie aufnimmt, ist eine Leistungselektronik oder eine Stufenheizung notwendig. Das ist dann allerdings Sache einer Fachperson, weil hohe Ströme und Spannungen auftreten. Für Tests und Fehlersuche habe ich noch einen weiteren Microcontroller (ESP32TTGO) verwendet. Im Gegensatz zu den beiden Raspberries hat er in dieser Ausführung ein LoRa Modem und ein OLED Display bereits direkt auf der Platine aufgelötet.

can't load pic01_logo.jpg RasPi mit LAN, LoRa Modul und OLED Display
can't load pic01_logo.jpg LoRa Modul mit Eigenbau-Antenne
can't load pic01_logo.jpg Solarboiler Box
can't load pic01_logo.jpg Testplatine mit Pico

Software

Das gesamte Softwarepaket hat drei wesentliche Bestandteile, die erheblichen Rechercheaufwand und viele (Fehl)Versuche bis zur endgültigen Lösung bedeuteten:

  • die Python-Programmierung der ModBus_TCP Registerzugriffe,
  • die abgestimmte Python- und Micropython-Programmierung der LoRa Bibliotheken,
  • das Management der Überschussenergie zwischen dem zentralen Raspberry und dem Microcontroller Pico mit der Boileransteuerung.

Die Programme sind im Downloadbereich vorhanden. Sie sind, noch einmal ausdrücklich hervorgehoben, nur in der spezifischen Vor-Ort-Situation einsetzbar und lauffähig. Ihren Zweck als Vorlage für Eigenentwicklungen sollten sie aber erfüllen. Die Sicherheits- und Lizenzhinweise stehen im Menüpunkt Legal und Licence

Downloads

⇑ Up ⇑

Comments


Leave a Comment
Your input data or your comment will not be published.
Name:

Website:

Comment: