You are currently viewing Selbststromversorgung #8 – aktuelle Solarleistung mit Raspberry und WLAN anzeigen lassen

Selbststromversorgung #8 – aktuelle Solarleistung mit Raspberry und WLAN anzeigen lassen

  • Beitrags-Autor:
  • Beitrags-Kategorie:Uncategorized

Mit einem Raspberry Pi 3B , einem Raspberry Sense HAT und einem Gehäuse kann man sehr leicht eine WLAN Leistungsanzeige für die aktuelle Solarleistung aufbauen. Der Raspberry wird einfach mit dem aktuellen Raspberry NOOBS Betriebssystem betankt und ist per WLAN mit der Fritzbox verbunden. Die aktuellen Daten der FritzDECT Steckdose (hier ist das Solarmodul angeschlossen) wird nun ununterbrochen abgefragt und dann mit einer Leuchtschrift angezeigt. Wenn der Yoystick betätigt wird, fährt der Raspberry herunter.

Das notwendige Material.

Installationsschritte

  • auf der Fritzbox einen neuen Benutzer anlegen und die AIN Nummer der FritzDECT! Steckdose notieren (siehe Bilder weiter unten)
  • auf dem Raspberry ein aktuelles NOOBS installieren
  • Update mit „sudo apt-get update“ durchführen
  • Upgrade mit „sudo apt-get upgrade“ durchführen
  • die beiden Dateien aus der ZIP  ( watt.zip ) in das Verzeichnis PI kopieren
  • in der Datei dect.sh die Zeilen für „user“, „pass“ und „ain“ anpassen (hier kann man den Befehl „nano dect.sh“ verwenden. Mit STRG+X  kann die Änderung gespeichert werden)
  • die Datei dect.sh startfähig machen „chmod +x dect.sh“
  • Mit diesem einfachen Befehl wird dann einmalig die Leistung der Steckdose abgefragt und angezeigt. Bei mir war es dunkel, daher 0 Watt. Die Anzeige erfolgt in Watt und mit Faktor 100. Eine Anzeige von 3340 entspricht 33,4 Watt.
  • Für einen Test kann nun die watt.py mit dem Befehl „python watt.py“ gestartet werden. Die Anzeige müsste nun laufen.
  • Damit beim Starten des Raspis die Python Datei automatisch aufgerufen wird, muss ein Eintrag in die crontab gemacht werden. Ganz unten ist diese neue Zeile zu sehen. Sie beginnt mit @reboot …
    Die Crontab kann man mit „crontab -e“ aufrufen. Ebenso wird hier wieder mit STRG+X gespeichert und geschlossen.

So muss der Benutzer auf der Fritzbox angelegt. Alle Berechtigungen genu so einstellen. Die hier gezeigten Usernamen, Passwörter und AIN’s sind frei gewählt.

Hier wird die benötigte AIN abgelesen

Nachtrag:

Natürlich kann man die Darstellung der LED Leuchtschrift beliebig in Geschwindigkeit, Farbe und Textinhalt anpassen. Ebenso wäre es möglich, die Anzeigefunktion auszusetzen, wenn keine Solarleistung erzeugt wird. Es sollte aber unbedingt vermieden werden, den laufenden Raspberry Pi einfach auszuschalten. Wenn man den Joystick drückt, wird nach wenigen Sekunden ein Timer in der Anzeige erscheinen, der von 10 langsam herunterzählt. Bei der Null sollte man dem Raspberry noch 30 Sekunden Zeit lassen, um alle Prozesse sauber zu beenden. Im Python Programm habe ich noch eine kleine Zeitschleife von 30 Sekunden eingebaut, damit sichergestellt ist, dass die WLAN Verbindung vor dem ersten Aufruf der Daten aufgebaut ist. Wer mit LAN den Anschluss realisiert, kann diese Zeile natürlich entfernen.
Die Fritzbox ist ständig per DECT Funkverbindung mit der FritzDECT Steckdose verbunden. Diese ermittelt ca. alle 30 Sekunden einen neuen Leistungswert. Zum Glück ist die Schnittstelle zum Auslesen der Aktoren einer Fritzbox sehr gut dokumentiert und damit sehr leicht nutzbar.

05.02.2019 neue Python Software für das Anzeigedisplay:

Das aktualisierte Pythonprogramm (watt.py) vom Jan. 2019 prüft vor der Abfrage der Fritzbox, ob diese auch wirklich per WLAN erreichbar ist. Hierzu wird ein Ping Befehl auf die IP Adresse der Fritzbox abgesetzt. Bei einer abweichenden IP Adresse muss das Programm angepasst werden.  Antwortet die Fritzbox nicht, erfolgt ein Neustart des Raspberry. Solange die Solarleistung unter 5 Watt liegt (Nacht) wird die Anzeige abgeschalten. Es wird dann nur ein kleiner grüner Punkt im Display alle 30 Sekunden zu sehen sein.

14.01.2023 neues Script für die Fritzbox nötig

Nach der Installation der neuen Softwareversion ab Fritz OS 7.50 kann die FritzDECT Steckdose nicht mehr ausgelesen werden. Ich habe ein neues ZIP File watt2.zip erstellt. Hier funktioniert wieder alles.