NEWS
[HowTo][Anleitung] Integration und Visualisierung des S10 Hauskraftwerks von E3DC in ioBroker
-
Habe heute ein Rückmeldung von E3DC zum negativen Wert bekommen:
vielen Dank für Ihre Anfrage.
ja eine Quelle wird immer negativ angezeigt.
Wir messen bei den Leistungsmesser auch immer die Flussrichtung.
Als Bezugspunkt dient hier der Netzpunkt des Hauses.
Ins Netz negatives Vorzeichen, aus dem Netz positives Vorzeichen.
Und da eine Quelle auch immer ins Netz speisen könnte sehen wir hier das
negative Vorzeichen.Ihr E3/DC Support Team
-
E3DC hat ja mit dem 2020-Update kürzlich die Modbus-Spec fürs Hauskraftwerk etwas erweitert, inzwischen kann man auch alle Leistungsmesser mit einzelnen Phasenwerten abrufen. Ich hab hier mal die Datei erweitert, die ich vor einiger Zeit auch schon mal hier gepostet hatte (weil bei mir der Import mit den Werten aus der Anleitung hier nicht funktioniert hat). In dieser CSV-Form mit Trennzeichen lässt es sich im Modbus-Adapter einfach importieren...
address;name;description;unit;type;len;factor;offset;role;room;poll;wp;cw 40001;Magic_Byte; ModBus ID;;uint16be;1;1;0;value;;true;false;false 40002;Modbus_Firmware;Modbus-Firmware-Version;;uint16be;1;1;0;value;;true;false;false 40003;Anzahl_Register;Anzahl unterstützter Register;;uint16be;1;1;0;value;;true;false;false 40004;Hersteller;Hersteller;;string;16;1;0;value;;true;false;false 40020;Modell;Modell;;string;16;1;0;value;;true;false;false 40036;Seriennummer;Seriennummer;;string;16;1;0;value;;true;false;false 40052;Firmware;Firmware-Release;;string;16;1;0;value;;true;false;false 40068;PV_Leistung;Photovoltaik-Leistung in Watt;W;int32sw;2;1;0;value;;true;false;false 40070;Batterie_Leistung;Batterie-Leistung in Watt;W;int32sw;2;1;0;value;;true;false;false 40072;Hausverbrauch_Leistung;Hausverbrauchs-Leistung in Watt;W;int32sw;2;1;0;value;;true;false;false 40074;Netz_Leistung;Leistung am Netzübergabepunkt;W;int32sw;2;1;0;value;;true;false;false 40076;Zusaetzliche_Einspeiser_Leistung;Leistung aller zusätzlichen Einspeiser in Watt;W;int32sw;2;1;0;value;;true;false;false 40078;Wallbox_Leistung;Leistung der Wallbox in Watt;W;int32sw;2;1;0;value;;true;false;false 40080;Wallbox_genutzte_Solarleistung;Solarleistung, die von der Wallbox genutzt wird in Watt;W;int32sw;2;1;0;value;;true;false;false 40082;Autarkie_Eigenverbrauch;Autarkie und Eigenverbrauch;;uint16be;1;1;0;value;;true;false;false 40083;Batterie_SOC;Batterie-SOC in Prozent;%;uint16be;1;1;0;value;;true;false;false 40084;Emergency_Power_Status;Emergency-Power Status;;uint16be;1;1;0;value;;true;false;false 40085;EMS_Status;EMS-Status;;uint16be;1;1;0;value;;true;false;false 40086;EMS Remote Control;EMS Remote Control;;int16be;1;1;0;value;;true;false;false 40087;EMS CTRL;EMS CTRL;;uint16be;1;1;0;value;;true;false;false 40088;WallBox_0_CTRL;WallBox_0_CTRL;;uint16be;1;1;0;value;;true;false;false 40089;WallBox_1_CTRL;WallBox_1_CTRL;;uint16be;1;1;0;value;;true;false;false 40090;WallBox_2_CTRL;WallBox_2_CTRL;;uint16be;1;1;0;value;;true;false;false 40091;WallBox_3_CTRL;WallBox_3_CTRL;;uint16be;1;1;0;value;;true;false;false 40092;WallBox_4_CTRL;WallBox_4_CTRL;;uint16be;1;1;0;value;;true;false;false 40093;WallBox_5_CTRL;WallBox_5_CTRL;;uint16be;1;1;0;value;;true;false;false 40094;WallBox_6_CTRL;WallBox_6_CTRL;;uint16be;1;1;0;value;;true;false;false 40095;WallBox_7_CTRL;WallBox_7_CTRL;;uint16be;1;1;0;value;;true;false;false 40096;DC_String_1_Voltage;Spannung in Volt (String 1);V;uint16be;1;1;0;value;;true;false;false 40097;DC_String_2_Voltage;Spannung in Volt (String 2);V;uint16be;1;1;0;value;;true;false;false 40098;DC_String_3_Voltage;Spannung in Volt (String 3);V;uint16be;1;1;0;value;;true;false;false 40099;DC_String_1_Current;Strom in Ampere (String 1);A;uint16be;1;1;0;value;;true;false;false 40100;DC_String_2_Current;Strom in Ampere (String 2);A;uint16be;1;1;0;value;;true;false;false 40101;DC_String_3_Current;Strom in Ampere (String 3);A;uint16be;1;1;0;value;;true;false;false 40102;DC_String_1_Power;Leistung in Watt (String 1);W;uint16be;1;1;0;value;;true;false;false 40103;DC_String_2_Power;Leistung in Watt (String 2);W;uint16be;1;1;0;value;;true;false;false 40104;DC_String_3_Power;Leistung in Watt (String 3);W;uint16be;1;1;0;value;;true;false;false 40105;Leistungsmesser_0;Leistungsmesser 0;;uint16be;1;1;0;value;;true;false;false 40106;Leistungsmesser_0_L1;Leistungsmesser 0 - Phase 1;W;int16be;1;1;0;value;;true;false;false 40107;Leistungsmesser_0_L2;Leistungsmesser 0 - Phase 2;W;int16be;1;1;0;value;;true;false;false 40108;Leistungsmesser_0_L3;Leistungsmesser 0 - Phase 3;W;int16be;1;1;0;value;;true;false;false 40109;Leistungsmesser_1;Leistungsmesser 1;;uint16be;1;1;0;value;;true;false;false 40110;Leistungsmesser_1_L1;Leistungsmesser 1 - Phase 1;W;int16be;1;1;0;value;;true;false;false 40111;Leistungsmesser_1_L2;Leistungsmesser 1 - Phase 2;W;int16be;1;1;0;value;;true;false;false 40112;Leistungsmesser_1_L3;Leistungsmesser 1 - Phase 3;W;int16be;1;1;0;value;;true;false;false 40113;Leistungsmesser_2;Leistungsmesser 2;;uint16be;1;1;0;value;;true;false;false 40114;Leistungsmesser_2_L1;Leistungsmesser 2 - Phase 1;W;int16be;1;1;0;value;;true;false;false 40115;Leistungsmesser_2_L2;Leistungsmesser 2 - Phase 2;W;int16be;1;1;0;value;;true;false;false 40116;Leistungsmesser_2_L3;Leistungsmesser 2 - Phase 3;W;int16be;1;1;0;value;;true;false;false 40117;Leistungsmesser_3;Leistungsmesser 3;;uint16be;1;1;0;value;;true;false;false 40118;Leistungsmesser_3_L1;Leistungsmesser 3 - Phase 1;W;int16be;1;1;0;value;;true;false;false 40119;Leistungsmesser_3_L2;Leistungsmesser 3 - Phase 2;W;int16be;1;1;0;value;;true;false;false 40120;Leistungsmesser_3_L3;Leistungsmesser 3 - Phase 3;W;int16be;1;1;0;value;;true;false;false 40121;Leistungsmesser_4;Leistungsmesser 4;;uint16be;1;1;0;value;;true;false;false 40122;Leistungsmesser_4_L1;Leistungsmesser 4 - Phase 1;W;int16be;1;1;0;value;;true;false;false 40123;Leistungsmesser_4_L2;Leistungsmesser 4 - Phase 2;W;int16be;1;1;0;value;;true;false;false 40124;Leistungsmesser_4_L3;Leistungsmesser 4 - Phase 3;W;int16be;1;1;0;value;;true;false;false 40125;Leistungsmesser_5;Leistungsmesser 5;;uint16be;1;1;0;value;;true;false;false 40126;Leistungsmesser_5_L1;Leistungsmesser 5 - Phase 1;W;int16be;1;1;0;value;;true;false;false 40127;Leistungsmesser_5_L2;Leistungsmesser 5 - Phase 2;W;int16be;1;1;0;value;;true;false;false 40128;Leistungsmesser_5_L3;Leistungsmesser 5 - Phase 3;W;int16be;1;1;0;value;;true;false;false 40129;Leistungsmesser_6;Leistungsmesser 6;;uint16be;1;1;0;value;;true;false;false 40130;Leistungsmesser_6_L1;Leistungsmesser 6 - Phase 1;W;int16be;1;1;0;value;;true;false;false 40131;Leistungsmesser_6_L2;Leistungsmesser 6 - Phase 2;W;int16be;1;1;0;value;;true;false;false 40132;Leistungsmesser_6_L3;Leistungsmesser 6 - Phase 3;W;int16be;1;1;0;value;;true;false;false
-
Mit dem Register 40078 und 80 kann man die Leistung aller Wallboxen abfragen (Summe). Kennt jemand eine Möglichkeit die Leistungswerte von jeder Wallbox (0-7) abzufragen.
Wallbox_Leistung_0
Wallbox_Sonnen_Leistung_0
Wallbox_Leistung_1
Wallbox_Sonnen_Leistung_1
usw. -
Hallo André, vielen Dank für deine Bemühungen. Seit heute Vormittag ist deine Anleitung down. In der Früh glaub ich funktionierte sie noch, hatte alles hergerichtet und dann war sie down. Weißt du den Grund? War das Absicht? Komme ich Koch irgendwie anders an deine Anleitung? Liebe Grüße Christoph
-
@Buia2002 sagte in [HowTo][Anleitung] Integration und Visualisierung des S10 Hauskraftwerks von E3DC in ioBroker:
Weißt du den Grund? War das Absicht? Komme ich Koch irgendwie anders an deine Anleitung?
Ja. Ja. Nein.
Sorry, das könnte ein paar Tage dauern. Ich baue aktuell die Website um.
MfG,
André -
Hi André,
das ist kein Problem. Ich befürchtete schon sie kommt gar nicht mehr. Mein Kumpel und ich sind eh noch ein paar Tage mit Jarolift beschäftigt. Das ist mehr verkabeln und Löten als vermutet.
Trotzdem vielen Dank.
LG Christoph
-
an dieser Anleitung hätte ich auch großes Interesse
-
Edit: Ich ziehe meine Frage zurück... Ich habe eben die Einträge neu erstelt und es handelte sich wohl um ein Relikt eines vorherigen Test...
Sorry, kann den Post leider nicht löschen. LG
Hallo zusammen,
ich habe mich, wie ich meine, peinlich genau an die Anleitung gehalten, scheitere aber an der Teilung der Adapterdatenpunkte in Form des js Script. Bei mir werden die Objekte angelegt, zeigen jedoch alle den Wert
Man verzeihe mir bitte meine Unkenntnis, aber ich komme an der Stelle einfach nicht weiter...?
-
@stevie77 Hast Du das Problem lösen können? Bei mir ist es genauso und ich komme nicht weiter
-
@Alex6879 Welches Problem? Bei mir läuft alles, siehe Importdaten, die ich etwas früher gepostet hatte.
-
@loni78
Hallo. Ist das Problem "kurz grün, dann gelb" gelöst? Ich habe das auch mit einem S10Pro.
VG -
Eigentlich sollte es ja nicht so schwer sein, aber es funktioniert bei mir nicht.
Der Modbus Adapter ist richtig eingerichtet und grün; bringt auch alle 2 Sekunden neue Werte:
Das Script habe ich eingebunden:
// Aufteilung der Datenpunkte mit doppelten Informationen // Aufteilung "Autarkie und Eigenverbrauch in Prozent" var id = 'modbus.0.holdingRegisters.40082_Autarkie_Eigenverbrauch'; createState('e3dc.modbus.Autarkie'); createState('e3dc.modbus.Eigenverbrauch'); on(id, function (obj) { setState('e3dc.modbus.Autarkie', (obj.state.val >> 8) & 0xFF, true); setState('e3dc.modbus.Eigenverbrauch', obj.state.val & 0xFF, true); console.log(obj.state.val); }); // Aufteilung "Modbus Firmware Version" var id1 = 'modbus.0.holdingRegisters.40002_Modbus_Firmware'; createState('e3dc.modbus.MajorVersion'); createState('e3dc.modbus.MinorVersion'); on(id1, function (obj1) { setState('e3dc.modbus.MajorVersion', (obj1.state.val >> 8) & 0xFF, true); setState('e3dc.modbus.MinorVersion', obj1.state.val & 0xFF, true); }); // EMS var id2 = 'modbus.0.holdingRegisters.40085_EMS_Status'; createState('e3dc.modbus.Ladesperre'); createState('e3dc.modbus.Entladesperre'); createState('e3dc.modbus.NotstrommodusMoeglich'); createState('e3dc.modbus.WetterbasiertesLaden'); createState('e3dc.modbus.Abregelstatus'); on(id2, function (obj2) { setState('e3dc.modbus.Ladesperre', (obj2.state.val >> 1) & 0xFF, true); setState('e3dc.modbus.Entladesperre', (obj2.state.val >> 2) & 0xFF, true);/* setState('e3dc.modbus.NotstrommodusMoeglich', (obj2.state.val >> 3) & 0xFF, true); setState('e3dc.modbus.WetterbasiertesLaden', (obj2.state.val >> 4) & 0xFF, true); setState('e3dc.modbus.Abregelstatus', (obj2.state.val >> 5) & 0xFF, true); */ });
Doch es werden "nur" Werte vom Skipt für Autarkie und Eigenverbrauch aktualisiert.
Hat wer eine Idee? -
..............
-
@ecki945 sagte in [HowTo][Anleitung] Integration und Visualisierung des S10 Hauskraftwerks von E3DC in ioBroker:
Doch es werden "nur" Werte vom Skipt für Autarkie und Eigenverbrauch aktualisiert.
Wenn sich am Wert vom Register 40002 nichts ändert, wird auch nichts aktualisiert. Einfach einmal manuell überschreiben.
-
Danke @ArnoD hat geklappt. Zu dem von @andre geposteten Script auf github habe ich noch ne Frage:
Laut der E3DC Modbus Doku ist die Codierung im Wert EMS-Status wie folgt aufgebaut:
Bit 0 = Ladesperre
Bit 1 = Entladesperre, ....Wenn nun wie im Script von @andre
setState('adapterdatenpunkte.modbus.Ladesperre', (obj.state.val >> 1) & 0xFF, true); setState('adapterdatenpunkte.modbus.Entladesperre', (obj.state.val >> 2) & 0xFF, true);
Der Wert vom Modbus übertragene Wert des EMS-Status 1 Bit nach Rechts geschoben wird, ist doch die Information über die Ladesperre und Entladesperre nicht mehr vorhanden bzw es wird das falsche Bit ausgewertet.
Müsste es nicht so implementiert sein:
setState('e3dc.modbus.Ladesperre', (obj.state.val) & 0x01, true); setState('e3dc.modbus.Entladesperre', (obj.state.val>> 1) & 0x01, true);
Oder hab ich wieder nen Denkfehler?
-
@olaf42
Stehen Speicher und IoBroker im gleichen Subnetz? E3DC erlaubt als "Feature" keine Kommunikation von Modbus über Subnetze, hatte das gleiche Problem und ich habe mein IoBroker VM eine VLAN im IOT Netz gegeben wo der Speicher steht, dann klappt es. -
Hi,
ich würde mir gern einen Datenpunkt erstellen (PVGesamt) welcher die Summe aus dem Positiven Wert des Zusatzwechselrichters (wird wie weiter vorn per Script *-1 genommen) und der PV-Leistung bildet, Quasi die Gesamte PV-Leistung der Anlage.
Kann da jemand helfen?Gruß
-
@musik231
Da musst du nur den Wert "modbus.0.holdingRegisters.40068_PV_Leistung" mit dem Wert "modbus.0.holdingRegisters.40076_Zusaetzliche_Einspeiser_Leistung" zusammenzählen.
Naturlich musst du dabei beachten das beim Regiester 40076 immer negative Werte angezeigt werden, also diesen Wert in eine positive Zahl vorher mit Math.abs() umwandeln. -
@musik231
Wenn du ein Beispiel benötigst wie man das Programmieren kann, dann sieh dir mal mein Script hier an:
https://forum.iobroker.net/topic/32976/e3dc-hauskraftwerk-steuernIn dem Script mache ich genau das was du suchst.
-
@arnod
Vielen lieben Dank