NEWS
Hausstromverbrauch per Modbus an IDM Wärmepumpe senden
-
@bushveld Alles zurück auf 0!
Ich hab mir noch mal alles angesehen und jetzt hoffentlich richtig erkannt.
Das sind Register von der Wärmepumpe, die dort Werte benötigt um möglichst autark zu arbeiten?
und nicht die Register deiner Solaranlage, die du dafür verwenden willst, wie ich irrtümlich annahm?Dann müssen das natürlich Holdingregister sein.
Dort ist es normal dass nur solange der eingegebene Wert angezeigt wird, bis er vom Gerät übernommen wird. Anschließend wirdnull
angezeigt.
Um das zu verhindern muss die Checkbox auslesen o.ä. angehakt sein. Aber nicht CW!Bitte umstellen und davon die Einstellungen im Modbus Adapter zeigen.
Für den Screenshot das Fenster so schmal wie möglich machen, ohne dass Daten verloren gehen.
Ein 4k Ultrawide Screenshot ist mobil nicht lesbar! -
Hallo @homoran
sorry für die schlecht formatierte Log Meldung, sonst schicke ich solche Ansagen und mach's nun selber...
Ich habe das Blockly Script geändert und "steuere" mit "aktualisiere" getauscht
STEUERE
timeout = setTimeout(async () => { timeout = null; setState('modbus.0.holdingRegisters.82_Hausverbrauch' /* Hausverbrauch */, (getState('senec.0.ENERGY.GUI_HOUSE_POW').val / 1000)); }, 10000);
AKTUALISERE
timeout = setTimeout(async () => { timeout = null; setState('modbus.0.holdingRegisters.82_Hausverbrauch' /* Hausverbrauch */, (getState('senec.0.ENERGY.GUI_HOUSE_POW').val / 1000), true); }, 10000);
Ich habe auf ein Holding Register zurück geändert und bekomme das gleich Verhalten wieder
- einmal schreiben kommt auf der WP an
- dann ändet sich nichts mehr
- den ersten Wert in im ioBroker und auf der WP bleibt der erste Wert stehen
- im log ist keine Fehlermeldung
Bezüglich der Definition des Registers muss ich dann noch mal ein Bild nehmen um nicht irgend etwas weg zu lassen.
Willst du mit js einen Wert verändern?
Ich möchte der Wärmepumpe den aktuellen Hausstromverbrauch mitteilen damit diese korrekt rechnen kann. Da ich eine Variable schreibe würde ich hier auf verändern tippen und daher das Holdingregister.welches Format soll das Register denn haben?
S. erster Post: ich habe nur die Info FLOATKann es sein dass die WP etwas zurückmeldet was zum Fehler führt?
-
@bushveld ich hab eben noch editiert.
die Checkbox heisst
Abfrage
Anhaken und Erfolg melden! -
unsere post haben sich überschnitten, hier die Einstellungen zum Register und Adapter
-
@bushveld sagte in Hausstromverbrauch per Modbus an IDM Wärmepumpe senden:
hier die Einstellungen zum Register und Adapter
super!
Das kann ich lesen.EDIT:
im Blockly natürlich steuere nehmen!
du willst ja nicht nur den Wert in ioBroker aktualisieren, sondern die WP steuern. -
Hallo @homoran
jetzt wird es wild.
Den Haken "Abfrage" habe ich gesetzt und es werden nun keine "null" values mehr angezeigt.
Blockly habe ich wieder auf "steuere" geändertNun bekomme ich 1x einen korrekten Wert und dann bekommen ich, auch einmalig den Wert der PV Erzeugung angezeigt.
Ich werde mich nun erst einmal um die Logik in der WP kümmern, meine Vermutung ist dass diese selber denkt. Da die WP im Moment nur Werte vom Wechselrichter bekommt und die WP derzeit nicht aktiv ist scheint diese schlicht die PV Erzeugung als Hausverbrauch auszuweisen.
Ich denke das Skript tut was es soll. Vielen Dank!
Den Post lasse ich offen da ich gerne das Ergebnis hier noch anfügen möchte, sollte die IDM wirklich so um die Eckedenken dann hilft es dem nächsten vielleicht auch wenn es nicht wirklich ein modbus Thema ist. -
@bushveld zeig noch mal dein Blockly.
- besteht das wirklich nur aus dem was im Screenshot gezeigt ist?
- kein Trigger? - dann wird es nur einmal beim Scriptstart/speichern ausgeführt.
- der DP heisst xxx.current
- das wäre der Strom, nicht die Leistung
- besteht das wirklich nur aus dem was im Screenshot gezeigt ist?
-
Hallo @homoran
Nun schlägt der Noob durch bei mir. Ich brauche einen Trigger, mach ja eigentlich Sinn,
- welchen nehme ich da am besten da sich der Hausstrom ständig ändert kann ich vermutlich "Falls Objekt ID wurde geändert" nehmen?
- was meinst du mit DP ? Ich habe bei der Senec nichts besseres gefunden als GUI_HOUSE_POW was mit House Power Current beschrieben ist und eine Leistung zu sein scheint [W] die IDM hätten den Hausverbrauch gerne als [kW]
-
@bushveld sagte in Hausstromverbrauch per Modbus an IDM Wärmepumpe senden:
vermutlich "Falls Objekt ID wurde geändert" nehmen?
richtig!
@bushveld sagte in Hausstromverbrauch per Modbus an IDM Wärmepumpe senden:
was meinst du mit DP
DatenPunkt.
@bushveld sagte in Hausstromverbrauch per Modbus an IDM Wärmepumpe senden:
GUI_HOUSE_POW was mit House Power Current beschrieben ist und eine Leistung zu sein scheint [W]
Super korrekt
und das für einen Herstellerdann musst du mal prüfen was da so rauskommt
-
Hallo @homoran
es ist wie vermutet. Ich schreibe konkurrieren mit meinem Wechselrichter die gleichen Register.
Derzeit ist bei mir ein Fronius Wechselrichter und ein Senec Akku installiert. Der Senec Akku kann mit dem WR nur via Modbus RTU kommunizieren und das nur vom WR zum Akku, Die IDM WP kann leider nur modbus tcp. Das führt dazu, dass ich nur vom WR die PV Erzeugung in der IDM WP bekomme, da diese keine anderen Daten kennt fehlt der Rest, diese Daten sitzen alle im Senec Speicher der nur über modbus RTU erreichbar ist.
Das der Senec Akku seine Daten nur ungern preisgibt und lieber alles einsammelt wird im Netz an vielen Stellen diskutiert, ein Schelm der schlimmers denkt..Die Lösung in meinem Fall ist recht einfach: der ioBroker kann den Senec Akku lesen und die IDM WP Register befüllen.
Bleibt noch das konkurrierende Schreiben. Auch das ist leicht gelöst, die IDM hat für Fronius WR eine eigenen Schnittstelle, diese einfach auf GLT (Gebäudeleittechnik) umstellen lassen und schon geht alles nur noch über Modbus und der Fronius schreibt nicht mehr. Das muss man allerdings über den Service der IDM oder den Heizungsbauer machen lassen da die Einstellung sich in der sog. Fachmannebene befindet.Viele Grüße und vielen für die Unterstützung!
Michael