Im Teil I berichtete ich von meinem Projekt mit dem Solar Batterie Speicher. Heute kann ich berichten wie es weiter ging und wie der aktuelle Stand ist.

Über Ostern war endlich Zeit dafür die Platine zu bestücken. Die erste Version hatte ich mit ein paar Verbesserungen versehen und so gab es dann eine Version 1.1. Diese wurde bestückt und die Inbetriebnahme verlief soweit unproblematisch. Bis auf den Umstand, die LED waren falsch eingelötet aber das war schnell erkannt und behoben. Noch einmal Zur Erinnerung, die Baugruppe umfasst folgende Bausteine:

  • Einen ESP32 + Funkmodul und OLED Display für die DTU
  • Einen ESP8266 mit INA219 und ADS1115 für die Spannungsmessung und Strommessung über einem Shunt
  • Ein paar passive Bauteile zur Anzeige und Beschaltung herum

Angefangen habe ich mit dem ES8266 und dem INA219. Nachdem die Tasmota Firmware aufgespielt war ging es darum den INA219 zu kalibrieren. Der ADS1115 ist funktionell auch dabei – wird aber aktuell so nicht verwendet. Durch dieses Modul steht nun folgendes als Echtzeitwert zur Verfügung:

  • Die Batteriespannung
  • Der Lade- und Entladestrom

Durch die externe Beschaltung kann der INA219 direkt am Shunt verbaut werden. Er ist über den I2C Bus mit dem Controller verbunden. Die Messgenauigkeit ist angemessen gut. Das Modul liefert alle benötigten Parameter per MQTT an die zentrale Steuerung.

Das zweite wesentliche Kernstück ist der ESP32 für die DTU. Hier hatte ich vorgesehen openDTU einzusetzen. Das hat sich jedoch erst einmal auf später verschoben. Aktuell nutze ich AhoyDTU und die Version habe ich jetzt auch aufgespielt. Der Grund dafür ist einfach. Per MQTT lässt sich bei openDTU der Wechselrichter einfach nicht auf ein Limit einstellen. Der Bug ist mehrfach dokumentiert und so bleib noch die alternative es über einen API Aufruf zu machen. Das gin zwar aber da ich dann in der gesamten Steuerung ausschliesslich hierzu etwas anders machen müsste habe ich dann entschieden AhoyDTU zu nehmen. Das hatte übrigens später noch Vorteile.

Nachdem nun der Wechselrichter auf der DTU eingetragen war und das Modul soweit mechanisch montiert war ging es an die Software.

Controller Platine, die roten LEDs sind heller als erwartet 😉

Aufgrund der neueren DTU Firmware waren jetzt nur wenige Anpassungen an den MQTT Pfaden notwendig und eigentlich wollte ich die Steuerung komplett neu in NodeRED machen. Da ich aber nun die AhoyDTU habe und mit MQTT ein wesentlicher Teil bereits lauffähig ist, inkl. der business intelligence der Software Stand jetzt Aufräumen, optimieren und Verbesserungen einbauen an. Verbesserungen, weil jetzt habe ich endlich auch die Sensordaten zur Batterie in Echtzeit vorliegen.

Das Dashboard (siehe Bild oben) sieht nun deutlich aufgeräumter aus. Die Logik zum Laden, sowohl mit PV als auch mit dem Überschuss aus dem hauseigenen Energienetz ist optimiert und um längen besser. Die Leistung des Inverters lässt sich besser abgestimmt auf die Batterie regeln. Damit kann die gespeicherte Energie sinnvoller genutzt werden. Vielleicht ist eine Erweiterung um 3.2kWh doch zukünftig drin.

AhoyDTU Webansicht

Wie geht es weiter?

Die Steuerung ist jetzt als Version 3.x in Betrieb. Der Flow ist unwesentlicher komplizierter geworden und der größte Teil sind Nodes zur Anzeige der Daten auf dem Dashboard. Hier steht vielleicht noch einmal eine Bereinigung an – etwas aufräumen im Editor. Das ist umfangreich aber der Kern ist und bleibt der zentrale Function Node mit der eigentlichen Steuerung. Das sind immerhin fast 700 Zeilen dokumentierter Code.

Ein Fazit kann ich jetzt bereits ziehen. Die Steuerung ist genau wie ich es wollte zu 100% auf meine Umgebung angepasst. Ich habe nichts vergleichbares gefunden das so anzupassen gewesen wäre, um den Aufwand für den Selbstbau sein zu lassen. Von dem Spaß mal ganz abgesehen.