NEWS
ModBus Adapter - einige Register "hin und wieder" lesen?
-
@wendy2702 sagte in ModBus Adapter - einige Register "hin und wieder" lesen?:
Dabei wirst du wahrscheinlich nur sicherstellen müssen das zum einmaligen Start der zweiten Instanz, die erste gestoppt ist.
kommt auf den RTU2TCP Konverter an.
Ich glaube:tm: die müssten auch mehrfach ansprechbar sein -
@martinsu wenn alles ordentlich läuft, sind die zusätzlichen Informationen nicht der Rede Wert im Paket mitzukommen.
Wobei ich mich frage, wieso man die Seriennummer abfragt.Ansonsten eine zweite Instanz erstellen, die diese Parameter nur 1x am Tag abruft.
@martinsu sagte in ModBus Adapter - einige Register "hin und wieder" lesen?:
ModBus-RTU über einen Konverter (PE11) ans LAN angeschlossen.
sollte ja per Modbus TCP laufen.
Allerdings dürfte das nicht gerade Ressourcenschonender sein
@homoran
Das mit den Seriennummern ist ein AlphaEss Problem. Die spielen eine neue Software auf, ohne dass du es mit bekommst. Aber plötzlich hat der Wechselrichter ein seltsames Verhalten. Besonders weil ich eine Steuerung laufen habe, die PV-Überschussstrom verbraucht.
Einmal musste ich nach einem Update den Wechselrichter neu starten, weil er nicht von selber wieder bootete.
Die EMS Version V0.11.64 war bei AlphaEss Hi10 eine totale Katastrophe. Ständig hat er bei einem (kleinen) Lastwechsel Strom aus der Batterie genommen, dann hat er wieder nachgeladen, obwohl genügend Solarstrom vorhanden war. Durch die ständigen lade/entlade Vorgänge konnte ich keinen Überschuss verbrauchen.
Im Internet sind immer mehr Leute, die mit dem Hi10 unzufrieden sind, dass andere Versionen wohl besser sind.Momentan habe ich die Versionsnummern "abgeklemmt", da der Wechselrichter keine Verbindung zum Internet hat.
Aber 2 Instanzen von ModBus auf das gleiche Gerät, das klappt doch nicht?!?
Naja, ich dachte es gäbe vielleicht einen einfache Möglichkeit, die ich noch nicht gesehen habe
Danke -
@homoran
Das mit den Seriennummern ist ein AlphaEss Problem. Die spielen eine neue Software auf, ohne dass du es mit bekommst. Aber plötzlich hat der Wechselrichter ein seltsames Verhalten. Besonders weil ich eine Steuerung laufen habe, die PV-Überschussstrom verbraucht.
Einmal musste ich nach einem Update den Wechselrichter neu starten, weil er nicht von selber wieder bootete.
Die EMS Version V0.11.64 war bei AlphaEss Hi10 eine totale Katastrophe. Ständig hat er bei einem (kleinen) Lastwechsel Strom aus der Batterie genommen, dann hat er wieder nachgeladen, obwohl genügend Solarstrom vorhanden war. Durch die ständigen lade/entlade Vorgänge konnte ich keinen Überschuss verbrauchen.
Im Internet sind immer mehr Leute, die mit dem Hi10 unzufrieden sind, dass andere Versionen wohl besser sind.Momentan habe ich die Versionsnummern "abgeklemmt", da der Wechselrichter keine Verbindung zum Internet hat.
Aber 2 Instanzen von ModBus auf das gleiche Gerät, das klappt doch nicht?!?
Naja, ich dachte es gäbe vielleicht einen einfache Möglichkeit, die ich noch nicht gesehen habe
Danke@martinsu sagte in ModBus Adapter - einige Register "hin und wieder" lesen?:
das klappt doch nicht?!?
das klappt bei RTU2USB am Server nicht, da nur eine Instanz auf den seriellen Port des Servers zugreifen kann, aber
@homoran sagte in ModBus Adapter - einige Register "hin und wieder" lesen?:
@wendy2702 sagte in ModBus Adapter - einige Register "hin und wieder" lesen?:
Dabei wirst du wahrscheinlich nur sicherstellen müssen das zum einmaligen Start der zweiten Instanz, die erste gestoppt ist.
kommt auf den RTU2TCP Konverter an.
Ich glaube:tm: die müssten auch mehrfach ansprechbar sein -
@martinsu sagte in ModBus Adapter - einige Register "hin und wieder" lesen?:
damit er nicht nach Hause telefoniert
Wie kommst du darauf?
Und wenn es so wäre, sperre Ihm doch den Internetzugang.
Wenn dich Software Versionen usw. nicht interessieren, lösche doch einfach die Register oder löse es wi @Homoran geschrieben hat. Dabei wirst du wahrscheinlich nur sicherstellen müssen das zum einmaligen Start der zweiten Instanz, die erste gestoppt ist.
@wendy2702
Auch da hat der AlphaEss Hi10 ein großes Problem.
Ich dachte natürlich auch, in der FritzBox den Internetzugang für den AlphaEss Wechselrichter zu sperren und gut ist.
Aber da habe ich zu kurz gedacht.
Wenn der AlphaEss Hi10 ein Netzwerk sieht, kann er sich NICHT vorstellen, dass es KEIN Internet gibt.
Etwa alle 30 Minuten versucht er irgendwie (gewaltsam) ins Internet zu kommen und blockiert etwa 3 Minuten lang das LAN-Netzwerk. Nichts geht mehr, der ModBus-Adapter mit ioBroker flippt aus, weil er keinen Zugriff mehr hat.
Unmögliches Verhalten des AlphaEss Hi10 Wechselrichters!!!!! -
@wendy2702
Auch da hat der AlphaEss Hi10 ein großes Problem.
Ich dachte natürlich auch, in der FritzBox den Internetzugang für den AlphaEss Wechselrichter zu sperren und gut ist.
Aber da habe ich zu kurz gedacht.
Wenn der AlphaEss Hi10 ein Netzwerk sieht, kann er sich NICHT vorstellen, dass es KEIN Internet gibt.
Etwa alle 30 Minuten versucht er irgendwie (gewaltsam) ins Internet zu kommen und blockiert etwa 3 Minuten lang das LAN-Netzwerk. Nichts geht mehr, der ModBus-Adapter mit ioBroker flippt aus, weil er keinen Zugriff mehr hat.
Unmögliches Verhalten des AlphaEss Hi10 Wechselrichters!!!!! -
@martinsu interessant und noch nie gehört.
Wäre spannend zu wissen wie der WR das „stören“ anstellt.
@wendy2702
Würde mich auch mal interessieren.
Es gibt doch genaue Vorschriften, was man auf dem Netzwerk darf und nicht darf, und daran müssten sich die AlphaEss doch auch halten.
Ich habe leider keinen Netzwerkanalysator. Mit einem Digitalvoltmeter kommt man da nicht weiter.Deshalb habe ich mir einen TCP-RTU Konverter dazwischen geschaltet (Der Tip kam aus einem anderen Forum, genau wegen dem o.a. Problemen. Er hatte mir den Protoss PE11 empfohlen, weil er gute Erfahrungen damit hatte)
Interessant fand ich bei dem ModBus-Adapter in den Einstellungen, dass man dort bei Verbindungsparameter "TCP" einstellen muss und NICHT "RTU over TCP". Das hatte ich zuerst gedacht, es funktionierte auch etwas, aber ständig Timeouts. -
@wendy2702
Würde mich auch mal interessieren.
Es gibt doch genaue Vorschriften, was man auf dem Netzwerk darf und nicht darf, und daran müssten sich die AlphaEss doch auch halten.
Ich habe leider keinen Netzwerkanalysator. Mit einem Digitalvoltmeter kommt man da nicht weiter.Deshalb habe ich mir einen TCP-RTU Konverter dazwischen geschaltet (Der Tip kam aus einem anderen Forum, genau wegen dem o.a. Problemen. Er hatte mir den Protoss PE11 empfohlen, weil er gute Erfahrungen damit hatte)
Interessant fand ich bei dem ModBus-Adapter in den Einstellungen, dass man dort bei Verbindungsparameter "TCP" einstellen muss und NICHT "RTU over TCP". Das hatte ich zuerst gedacht, es funktionierte auch etwas, aber ständig Timeouts. -
@martinsu du könntest ja mal mit Wireshark gucken ob du siehst was der WR so sendet wenn er das Internet gesperrt bekommt.
@wendy2702
gute Idee, werde ich demnächst mal testen.... -
@wendy2702
gute Idee, werde ich demnächst mal testen....Für den, den es interessiert:
Ich hatte dieses seltsame Netzwerkverhalten der Firma AlphaEss geschrieben.
Das ist die Antwort:
Sehr geehrte Kundin/Kunde,
möchte ich Ihnen gerne erklären, dass unser System ohne Internetverbindung nicht einwandfrei funktionieren kann. Die Berechnung diverser Daten, die Freigabe von Befehlen an die EMS und BMS sowie die Kommunikation zwischen den Komponenten erfolgen ausschließlich in einem netzgestützten Umfeld. Nur so können die Daten korrekt übertragen und in der APP angezeigt werden.
Anhand dieser technischen Gegebenheiten empfehle ich Ihnen, das System bitte so schnell wie möglich wieder mit dem Internet zu verbinden. Dies stellt die Grundvoraussetzung für eine störungsfreie Funktion des Systems dar.
Leider habe ich beim AlphaEss Hi10 die Wechselrichterprobleme mit und ohne Internet.
Dass die App ohne Internet nicht funktioniert, ist klar. Ich greife per VPN auf den Oberfläche des ioBrokers zu. -
Pack eine zweite Netzwerk karte in deinen IOB und stöpsel an diese den Modbus Port deines WR Ran. Jetzt noch IPs festlegen und schon hast du den Modbus ohne dem WR am Internet hängen zu haben
https://ipcamtalk.com/threads/dual-nic-setup-on-your-blue-iris-machine.40264/
Nach diesem Setup. Ersetzte jedoch ipcam mit Wechselrichter und blueiris mit IOB
-
Pack eine zweite Netzwerk karte in deinen IOB und stöpsel an diese den Modbus Port deines WR Ran. Jetzt noch IPs festlegen und schon hast du den Modbus ohne dem WR am Internet hängen zu haben
https://ipcamtalk.com/threads/dual-nic-setup-on-your-blue-iris-machine.40264/
Nach diesem Setup. Ersetzte jedoch ipcam mit Wechselrichter und blueiris mit IOB
@mpl1338
Hallo,
ich habe es einfacher gemacht.
Nur zur Info, mein AlphaEss Hi10 Wechselrichter hat 3 Schnittstellen:- WLAN (ohne ModBus-Funktionalität), bei mir abgeschraubt.
- LAN mit ModBus-TCP, bei mir nicht verwendet wegen den oben beschriebenen Problemen
- ModBus-RTU (das ist eine RS485 ohne Internet-Funktion).
Ich habe einen Protos PE11 an ModBus-RTU angeschlossen und das LAN-Kabel vom Wechselrichter in den PE11 gesteckt. Lief sofort wieder ohne den ModBus-ioBroker-Adapter anzupassen (nur IP). Natürlich muss der PE11 eingestellt werden.
Der PE11 kostet ~30€, es gibt auch andere RS485-TCP Wandler, die müssen aber ModBus unterstützen.
-
Hallo,
ich wollte nochmal darauf zurück kommen, einige Register nur "ab und zu" zu lesen:
Hintergrund ist, dass mein Alpha ESS Hi10 bekannt dafür ist, bei Modbus etwas zickig zu sein:- Timing & Stabilität: Alpha ESS reagiert langsam
- Alpha ESS mag keine zusammengefassten Register
- Register 1086 PV_Gesamtenergie ⚠️ Problemregister – sehr langsam (müsste ich auch nur einmal am Tag lesen)
Als Beispiel der Batterie-SOC muss z.B. nicht im Sekundentakt gelesen werden, einmal pro Minute würde reichen,
ChatGPT meint, dass es bei den Holdingregistern eine "Stift" gäbe, so dass man für jedes Register eine eigene Zeit eingeben könnte. Aber in den neueren Versionen gibt es den Stift wohl nicht mehr.
Dann gibt es die Datei objects.jsonl in der u.a. die ganzen Modbus Register mit Einstellungen aufgelistet sind.
Eine Beispielzeile sieht so aus:
{"k":"modbus.0.holdingRegisters.294_BATT_POW","v":{"_id":"modbus.0.holdingRegisters.294_BATT_POW","type":"state","common":{"name":"Batterie Leistung","role":"value","type":"number","read":true,"write":true,"def":0,"unit":"W"},"native":{"regType":"holdingRegs","address":294,"deviceId":85,"type":"int16be","len":1,"offset":0,"factor":1,"poll":true,"pollingInterval":5000},"from":"system.adapter.modbus.0","user":"system.user.admin","ts":1765771203671,"acl":{"object":1636,"state":1636,"owner":"system.user.admin","ownerGroup":"system.group.administrator"}}}
Der Vorschlag war, "pollingInterval":5000 einzufügen.
Hat das schon mal jemand gemacht? Klappt das? (ich wollte vermeiden, dass mir das um die Ohren fliegt)@bluefox
Als Schöpfer des ModBus-Adapters: Wäre das eine Option, für jedes Register ein Feld für eine eigene Pollingzeit? Oder einen Teiler zur Standard Polling Zeit? (z.B. Teiler 10 bedeutet => Register Pollingzeit = 10 x Standard-Pollingzeit) -
Hallo,
ich habe etwas hin und her probiert und habe tatsächlich eine Lösung gefunden. Vielleicht kann der eine oder andere etwas davon gebrauchen.
Nötig ist das alles, weil mein Wechselrichter "Alpha Ess Hi10" nach meiner Meinung absoluter Schrott ist. (Hinterher ist man immer klüger)
Der WR hat eine ModBus-TCP und eine ModBus-RTU Schnittstelle. Ein Betrieb über ModBus-TCP läuft fast gut, aber der telefoniert ständig nach Hause und außerdem fummeln die Alpha Ess des häufigeren im WR rum, einmal musste ich einen Neustart durchführen, weil nichts mehr ging.
Ein Sperren des Internetzugriffes des WR in der FritzBox führt zu ganz seltsamen Reaktionen im Netzwerk (habe ich schon ausführlich beschrieben). Also habe ich einen TCP-RTU Wandler dazwischen geschaltet.
Da die RTU-Schnittstelle nur mit 9600 Baud 8n1 läuft, kann man nicht alle Register mehr im Sekundentakt abfragen.
Es ist tatsächlich möglich, 3 ModBus Adapter zu installieren und die gleichen Schnittstellendefinitionen einzustellen, aber verschiedene Holding-Register.
ModBus.0 frage ich z.B. alle 1,5 Sek ab (Datenabfrageintervall=1500) für aktuelle PV-Leistung usw.
ModBus.1 frage ich z.B. alle 5 Min ab (Datenabfrageintervall=300000) für Tages-PV-Leistung, Batterie SOC, usw.
ModBus.2 schalte ich kurz vor Mitternacht für 2 Minuten auf aktiv und frage Batterie-StateofHealth, Versionsnummern usw. ab um diverse Tageswerte zu berechnen.
Dabei ist mir etwas aufgefallen. Der Datenpunkt "modbus.x.info.connection" liefert den Wert 'true', wenn der Adapter läuft und ' ' (nichts) wenn der Adapter NICHT läuft. Dabei bekam ich auch noch folgende Fehlermeldung:
State value to set for "modbus.x.info.connection" has to be type "boolean" but received type "string"Dann noch eine Besonderheit des Alpha Ess WR. Dieser Wechselrichter hat Probleme, mehrere Register hintereinander zu lesen, in meinem Beispiel das Register 33 (signed 32 Bit Big Endian) sowie die Register 1086 bis 1088. (Register 33 mit 32 Bit bedeutet Register 33 mit 16 Bit und Register 34 mit 16 Bit)
Register 33 ist bei mir die Netzleistung in Watt (Die Leistung die ins Haus oder aus dem Haus fließt)
signed 32 Bit bedeutet +/-2.147.483.647 Watt. Recht unwahrscheinlich dass ich diese Werte erreichen werde.
Ich lese jetzt nur noch Register 34 mit 16 Bit, das entspricht einer max Leistung von +/-32KW (werde ich wohl nie erreichen) und schon habe ich viele Lesefehler weniger.
Vielleicht gibt es noch andere, die mit meinen Erfahrungen etwas anfangen können.
(Schade dass man solche Work-arounds machen muss, um die Fehler eines Wechselrichters zu umgehen)