NEWS
Wallbox Heidelberg Energy Control mit Iobroker verbinden
-
Habe nun eine Lösung mit einem 2,75EUR-Stick umgesetzt, die ich hier vorstelle:
https://forum.iobroker.net/topic/51751/heidelberg-energy-control-pv-laden-modbus-blockly -
Kommentar gelöscht
-
@steff393 das wbec sieht ja schon sehr komfortabel aus. Aber wie bring ich innerhalb der Heidelberg 400V auf 5V für das WLAN Modul?
Bisher kenne ich nur die umständliche Variante über 230 -> 12/24V Netzteil und dann über einen weiteren Auto Spannungswandler auf 5V.
-
@tobi-2 Bei dem gleichen Problem stehe ich auch aktuell. Hast du es lösen können in iobroker?
-
@maxpd Gar nicht. WBEC wird per USB Netzteil gespeist. Heidelberg und wbec sind mit 2 geschirmten Kabeln verbunden.
-
@smartmike88 Hi, hast du es mit dem EW11 ans Laufen gebracht? Ich habe das gleiche Problem wie du, die Wallbox macht blau-weiße Party, weil sie scheinbar einen Komunikationsfehler hat und der ioBroker bleibt gelb, weil er scheinbar auch nicht mit dem EW11 kommunizieren kann. Wahrscheinlich sitrzt das Problem vor dem Rechner. Hast du es am Laufen? Kannst du mir Screenshots deiner Configs schicken? Mein Verständnis vom EW11 (da ist die Doku ja leider mangelhaft) ist, dass die "Serial Port Settings" zu den geforderten Einstellungen der Heidelberg passen müssen und dass die "Communication Settings" an die Kommunikation mit dem ioBroker angepasst werden muss. So sehen meine Configs aktuell aus:
Der Kommunikationsfehler zwischen EW11 und Wallbox könnte eventuell auch am Abschlusswiderstand liegen, oder? Ich hab mal versucht zu messen, konnte bei der EW11 aber nichts sinnvolles messen. Kann ich da einfach einen "parallel" mit reinklemmen?
Aber dass EW11 und ioBroker einfach nicht zusammenfinden wollen, verwundert mich am meisten.Danke vorab,
Gruß, Thomas -
@tom2406 stell mal um...
-
@ftd danke fürs Feedback, werde ich später mal versuchen. Aber ganz verstehe ich das nicht, warum muss ich am EW11 auf „Server“ stellen? Der EW11 inkl der Wallbox soll doch der Slave/Client sein und der ioBroker der Master?! Meine Wallbox ist ja auch als Slave deklariert, sonst kann ich sie ja nicht Überschuss-steuern.
Müsste ich bei deiner Config dann auch im ioBroker auf Client umstellen?Die serial Config muss ich aber trotzdem an die Wallbox anpassen, oder? Hier dürfte ich deine Baudrate etc ja nicht übernehmen, da von Heidelberg das hier gefordert wird:
-
@tom2406 said in Wallbox Heidelberg Energy Control mit Iobroker verbinden:
@ftd danke fürs Feedback, werde ich später mal versuchen. Aber ganz verstehe ich das nicht, warum muss ich am EW11 auf „Server“ stellen? Der EW11 inkl der Wallbox soll doch der Slave/Client sein und der ioBroker der Master?! Meine Wallbox ist ja auch als Slave deklariert, sonst kann ich sie ja nicht Überschuss-steuern.
Müsste ich bei deiner Config dann auch im ioBroker auf Client umstellen?In dem Thread von vor 2,5 Jahren https://forum.iobroker.net/topic/29594/modbus-lan-converter stand der Adapter auf Master. Ich hatte ihn damals auch eine Zeit lang nicht grün bekommen, weil die GeräteID nicht gestimmt hatte.
Die serial Config muss ich aber trotzdem an die Wallbox anpassen, oder? Hier dürfte ich deine Baudrate etc ja nicht übernehmen, da von Heidelberg das hier gefordert wird:
Richtig, nimm die Baudrate, die von Heidelberg gefordert ist.
-
@ftd also meinst du, dass es korrekt ist, dass der Adapter auf Master/Server steht (welchen Sinn das auch immer macht). Hab es damit auch kurzzeitig grün bekommen, sehe die Logik dahinter nur nicht.
Also hat es bei dir damals an der Geräte-ID gelegen?! Was hattest du dann eingestellt, damit sich ioBroker und EW11 vertragen?
Der Gedanke mit MQTT ist mir auch gekommen, werde aber auch da aus dem EW11 nicht schlau. Habe MQTT eingestellt und der ioBroker findet ihn auch anstandslos und alles grün, aber ich bekomme ja eben nur ein „Signal“ vom ganzen EW11, wo natürlich kein Inhalt drin ist. Muss ich da also mit einem Skript rangehen, um die Nachrichten zu vereinzeln, die ich brauche?!
Sorry für die ganzen Fragen, aber ich verzweifle an der Kiste -
@ftd also mittlerweile bin ich soweit, dass der Modbus-Adapter immer so 5sek grün, dann 2sek gelb und dann wieder 5sek grün ist … aber ich glaube ich bekomme den nicht dauerhaft grün, solange die Verbindung zwischen EW11 und Wallbox nicht sauber steht, die blinkt immer noch im Kommunikationsfehler.
Aber ich sehe keinen Fehler, wenn ich die Wallbox-Anforderungen mit meinen EW11-Einstellungen Vergleiche:
Oder übersehe ich etwas? Habe auch schon die Drähte A+B getauscht … -
@tom2406 Also wenn die Verbindung vom EW11 zur Wallbox funktioniert, dann bist du kurz vor dem Erfolg würde ich sagen. Ich vermute weiterhin eine falsche GeräteID im ioBroker Modbus Adapter... wie gesagt, war bei mir damals der Fall, wo ich kurz davor war, dass Ding in die Tonne zu kloppen.
Da mir aber der Modbus-Adapter nicht gefallen hat (nutze ich auch nicht mehr), bin ich den harten Weg gegangen und habe selber den EW11 via MQTT angebunden.
Meine Lösung: Ein eigener kleiner Proxmox LXC-Container, wo ich jede Menge Kleinkram selber zusammenbaue... unter anderem einen Mosquitto MQTT Dienst.
1) Ein Script für die Konfigurationen aller anderen Scripte
run .sh
#!/bin/bash cd /home/scripts set -o pipefail /home/scripts/scripts.sh
2) Ein Script, welches die Registrer des EW11 ausliest und in eine Datei schreibt
ew11 .py
#Import Files import sys import os import time import getopt import struct from pymodbus.client.sync import ModbusTcpClient #Open TCP Port # die IP-Adresse von deinem EW11 client = ModbusTcpClient('192.168.178.83', port=8899) #Beispiel von der Wallbox #04 (0x04) Read Input Registrer #hier am besten Google zur Hilfe nehmen result = client.read_input_registers(0x04,2, unit=0x02) meinErstesInputRegister = float(result.registers[1] / 100) f = open('/home/scripts/log/meinErstesInputRegister', 'w') f.write(str(meinErstesInputRegister)) f.close()
3) Ein Script, welches die Datei öffnet und via MQTT published
pubmqtt .py
#!/usr/bin/python import sys import os import time import getopt import struct import paho.mqtt.client as mqtt f = open('/home/scripts/log/meinErstesInputRegister', 'rt') meinErstesInputRegister = f.read() f.close() client = mqtt.Client() client.connect("localhost",1883,60) client.publish("EW11/meinErstesInputRegister", meinErstesInputRegister) client.disconnect()
4) Ein Script, welches die Scripte letztendlich ausführt
scripts .sh
#!/bin/bash sudo python /home/scripts/ew11.py sudo python /home/scripts/pubmqtt.py
5) Ein Cronjob dazu
* * * * * sleep 10 && /home/scripts/run.sh >> /home/scriptes/log/logfile.log 2>&1
6) meinErstesInputRegister kommt via MQTT im ioBroker an
So läuft das seit rund 2,5 Jahren bei mir.
-
@ftd ich habe noch nicht versucht sie mit iobroker zu verbinden, hatte einfach nur mal die technik in der wallbox verbaut. anfänglich alles gut. Aber am nächsten Tag ebenfalls Blau Weißes geblinke.
Für micht heißt dass, dass das Problem nicht im iobroker liegt sondern in der Box?
-
Hallo, ich habe hier seit ein paar Tagen auf meinem Basteltisch einen "Elfin EE11 Modbus LAN Converter" und eine "Heidelberg Wallbox Energy Control".
Soweit kann ich über den IOBroker-ModBus-Adapter und auch qModMaster die Input-Register und Holding-Register lesen und schreiben.
Meine Elfin-Konfiguration entspricht exakt der von Tom2406 vom 28.7.2022.
Beste Grüße
AU -
Hallo,
im ModBus-Adapter ist bei mir Master eingestellt und die Heidelberg Wallbox ist mit Bus-ID=1 konfiguriert. Somit läuft die Wallbox im Slave-Modus.
Gruß
AU -
@ftd ich hab genau den EE11 Adapter - aber leider blinkt meine Wallbox immer weiß/blau wegen Kommunikationsstörung und bekomme auch kein Signal in den Iobroker rein.
Kannst du mir sagen was ich bei dem EE11 Adapter und bei der Wallbox (Dipschalter) einstellen muss? Hab schon alles ausprobiert.... -
Hallo zusammen,
ich habe ein merkwürdiges Verhalten bei der Heidelberg EC. Die Verbindung zu IOBroker steht. Alles ist grün und ich bekomme auch alle Register im IO angezeigt... z.B. die Spannung auf den Phasen ändert sich oder die Temperatur schwankt. Jedoch zeigt mir das Register charging state immer eine 10 UND die Wallbox blinkt auch Weiß/Blau.
Hat evtl. jemand eine Idee? Die Kommunikation funktioniert ja eigentlich.Vielen Dank
Rötty -
Ich habe mein System mittlerweile durch viel probieren mittlerweile soweit, dass ich, genau wie Roetty, Inputdatenbekomme, aber leider nichts schreiben/steuern kann. Da ich auch den EW11 über Wifi habe, hier mal meine Einstellungen. Da das Auslesen einwandfrei funktioniert, verstehe ich das blinken zwecks Kommunikationsfehler nicht und mit dem Charging State 10 kann ich auch nicht viel anfangen.
Ich habe ja noch immer etwas den EW11 in Verdacht, da er glaube ich keinen Abschlusswiderstand verbaut hat. Den schreibt Heidelberg ja dringend vor, aber letztlich habe ich halt auch "nur" 10cm Busleitung verbaut, da der EW11 mit in der Wallbox sitzt. Das sollte eigentlich auch ohne Abschlusswiderstand funktionieren. Vor allem: Warum sollte, wenn es am Abschlusswiderstand liegen sollte das Auslesen klappen aber der Command nicht?!
-
@tom2406
Hey Tom,
ich hab´s bereits gelöst! Du musst z.B. mit Blockly die gewünschten Parameter "beschreiben". Ich habe es damit gemacht und einfach mal eine 60 in den "Current_Command" geschrieben und Zack! Es funktioniert.VG
-
@roetty Versucht hab ich das auch schon, aber entweder ich bin zu doof für Blockly oder ich habe noch wo anders ein Problem. Aber ich bekomme Blockly generell nicht sauber ans Laufen, habe vorhin noch versucht einen Shelly damit zu schalten (Zeitgetriggert, alle 1s), und das wollte auch nicht.
Ich hatte schon die Register im ioBroker-Modbus-Adapter in Verdacht. Weil in der Anleitung der Heidelberg explizit steht "Unterstütz werden ausschlielich die folgenden Funktionen: .... 06 (0x06) Write Single Register" und ich im Modbus-Adapter ja nicht die 06 sondern nur die 04 Holding-Register aussuchen kann. Aber das hast du genau so!? Kannst du mal deine Einstellung Screenshotten, so wie ich es hatte. Also sowohl vom Modbus-Adapter im ioBroker als auch die EInstellungen vom EW11. Nicht, dass ich noch irgendwo ein zeitliches Problem eingebaut habe.
Edit:
Ich hab es mir jetzt so zusammen gebastelt, aber es geht trotzdem nicht. Ich dachte ich setze lieber mal alle write-Werte, damit ich mir damit nichts lahm lege, weil z.B. der Remote Lock falsch ist. Aber der Charging State bleibt auf 10 und die Wallbox blinkt blau:
Edit: An meinen Blockly-Fähigkeiten kann es nicht liegen. Ich sehe unter "Objekte" genau, dass die Werte sauber alle paar Sekunden neu gesetzt werden. Aber es scheint nicht bei der Wallbox anzukommen.