NEWS
Test Adapter sun2000 v0.1.x - Huawei Wechselrichter
-
@bolliy
Danke das du dir so viel Mühe und Arbeit machst.
Echt supi -
Btw. habe v0.3.1 mit "auto adjust" laufen und es sieht sehr gut aus! Topp
-
@all Habe hier ein Wallbox liegen, die ich am WE in Betrieb nehme.
Kann jemand zufällig einen Modbus Proxy via Docker empfehlen? -
@trackerthecode Ich habe leider keine mobus proxy Erfahrungen.
Zu einem anderen Projekt habe ich dieses gefunden: https://forum.openwb.de/viewtopic.php?t=6027https://github.com/tiagocoutinho/modbus-proxy#docker
LG Stephan
-
@bolliy
Hallo bolliy,erstmal danke für den tollen Adpater. Ich hatte zuerst die Abfrage über die Javascript Lösung, aber die lief nicht rund. Dein Adapter läuft bei mir zuverlässig. Mir fehlen 2 Datenpunkte. Ist es möglich den Arbeitsmodus mit einzubauen? Also "Maximaler Eigenverbaruch / Erzwungene Lade und Entladeladung" Im Skript war der Datenpunkt da. Und was noch cool wäre wenn man die Maximale bzw. Minimale Entladeleistung des Speichers über einen Datenpunkt setzen könnte. Momentan muss ich das umständlich über die Fusion Solar Webseite ändern. Hintergrund ist , wenn das Auto nicht mit Überschuss geladen wird, mein Speicher leergezogen wird. Ich würde das gerne dann über den Adapter auf 500Watt (Haus Grundverbrauch)setzen solange das Auto mit 11KW geladen wird. Danach würde ich das wieder auf die maximale 5000W setzen.
Gruß Dimi
-
@dimi Hallo Dimi,
würdest du bitte ein issue über https://github.com/bolliy/ioBroker.sun2000/issues erstellen. So kann ich dein Anliegen nicht vergessen. Sofern auch andere User die Datenpunkte benötigen, wäre ein "Daumen hoch" auf dem issue sicherlich hilfreich.
Im dem Issue verweise bitte auf das js script, welches du bisher verwendest hast. Und beschreibe bitte ganau um welche Datenpunkte es sich handeln.Der 2te Punkt werden bei mir als Services bezeichnet und sind bereits bei mir im Hinterkopf hinterlegt. Da ich mit meinem Leaf die gleichen Anforderungen habe, werde ich das sicherlich einbauen. Allerdings wird die Umsetzung noch etwas dauern, da eine ordentliche Umsetzung etwas Aufwand bedeutet.
Momentan befindet sich der Adapter (v0.3.1) noch im Prozess to stable https://github.com/ioBroker/ioBroker.repositories/pull/3305
Danach kann der Adapter über das offizielle ioBroker Repro installiert werden.
LG Stephan
-
@bolliy aus irgendeinen Grund hatte der Adapter meine CPU zur extremen Auslastung gebracht. Der Adapter ist dann von selbst ausgestiegen!
{"timeout":10000,"delay":0,"connectDelay":5000,"modbusAdjust":false,"min":0,"max":6000,"stat":{"successLevel":10,"successCounter":0,"successSumCounter":61,"errorCounter":0,"errorSumCounter":1,"lastLength":2,"SuccessDelay":0,"ErrorDelay":0}}
-
@dragst3r 'It's Not a Bug, It's a Feature.'
Nach der (Erst)nstallation des Adapter wird die auto-adjust Funktion aktiviert. Der Adapter durchläuft dabei mehrere Adjustment Steps. Immer wenn ein Fehler auftritt werden die Verzögerungswerte (delays) sukzessive erhöht bis ein stabiler Zustand eintritt. Der auto-adjust Vorgang kann mehrere Minuten dauern. Danach werden die ermittelten Werte abgespeichert und der Adapter automatisch neu gestartet und die auto-adjust Funktion wieder deaktiviert.https://forum.iobroker.net/post/1126843
Stephan
-
@bolliy ups... sorry. Hatte ich nicht richtig gelesen. Ich teste es erneut. Dank dir.
EDIT: Es war ein Fehler meinerseits. Durch eine falsche Berechnung in einem Skript hatte er die InfluxDB ausgelastet.
-
@bolliy
erstmal Danke für die Entwicklung dieses tollen Adapters, worauf ich schon fast ein Jahr warte.Fragen:
- Kann der Adapter schon irgendwelche Werte auf den WR zurückschreiben oder Einstellungen verändern (ich habe aktuell Version 0.2.1 installiert) und falls ja, welche (z.B. min SOC, maximale Ladeleistung Batterie, minimale Ladeleistung Batterie, Batterie in den Ruhemodus / Standby-Modus / Betriebsmodus versetzen) und ab welcher Adapter-Version ?
- Kann der Adapter bisher nur Werte vom WR auslesen ?
- Welche Firmware-Versionen für Sun2000, Luna2000, Dongle und MBus sind die Mindestanforderungen für den Sun2000-Adapter (meine Installierten Versionen: WR V100R001C00SPC153, Akku V100R002C00SPC117, Mbus V100R001C00SPC330, SDongleA-05 V100R001C00SPC133) ?
VG
Besimo -
@besimo
zu 1. Nein, ist aber geplant. Benötige ich auch für meine Anwendung
zu 2. ja
zu 3. mind. SDongleA-05 V100R001C00SPC133. (siehe readme https://github.com/bolliy/ioBroker.sun2000) Aufdatieren wird allerdings empfohlen.Die aktuelle Version ist v0.3.1 - bitte auch aktualisieren!
Stephan
-
Mir ist aufgefallen als der WR in Standby ging, das der Adapter aufgehört den Hausverbrauch zu aktualisieren. Erst als der Adapter neu gestartet wurde, nach dem Standby sozusagen, wurden die Werte wieder aktualisiert.
Jedoch habe ich noch in Log nachts stehen:
sun2000.0 2024-02-15 20:24:02.361 warn Error while reading from 192.168.2.16 [Reg: 30000, Len: 75, modbusID: 2] with: Timed out
-
@dragst3r Momentan befindet sich der Adapter (v0.3.1) noch im Prozess to stable https://github.com/ioBroker/ioBroker.repositories/pull/3305
Danach kümmere ich mich gerne darum...
Ihr dürft den Pull Request gerne mit bewerten - dann geht es vielleicht etwas schneller. -
@bolliy Ich konnte die aktuelle Version 0.3.1 nun auch testen und endlich läuft es auch bei mir mit zwei Wechselrichtern. Das Intervall konnte ich nun auf 20s setzen was vorher überhaupt nicht ging. Er hat es dann wohl angepasst auf 23,448s. Jedenfalls sind auf den ersten Blick die Timeout Fehlermeldungen bei mir verschwunden und er aktualisiert die Daten sehr viel schneller als vorher.
Eine Frage, falls jemand vielleicht die gleiche Konstellation hat. Ich wollte nun Überschussladen mit NRGKick umsetzen und habe da auch eine entsprechende Lizenz. Aber das scheint wohl gar nicht zu gehen. Die NRGKick gelingt da keine stabile Verbindung (wohl die gleichen Timeout Probleme wie der Adapter zuvor hatte). Bzw. kann es ggf. gar nicht gehen weil der Adapter nun schon die Daten abfragt und das Dongle eine zweite Abfrage nun gar nicht mehr schaffen würde?
Bliebe dann ggf. als Alternative dann doch nur EVCC oder wie habt ihr das umgesetzt, also Abfrage der Daten + Überschussladen parallel?
-
@lcars toll, dass es jetzt bei dir auch funktioniert
Wenn du neben dem sun2000 Adapter auch mit deiner Wallbox über modbus tcp auf die WR zugreifen möchtest, benötigst du einen sog. modbus proxy.
Ich habe leider noch keine Erfahrungen mit einem mobus proxy. Aber dieser soll funktionieren: https://github.com/tiagocoutinho/modbus-proxy
LG Stephan
-
@lcars sofern du den modbus-proxy einsetzt und dieser funktioniert, dann solltest du die auto-adjust Funktion aktivieren. Dann klappt es bestimmt auch mit dem angestrebten 20s Intervall.
-
@lcars ich übergebe die Werte via MQTT an EVCC. Erscheint mir das einfachste.
-
Leider läuft der modbus-proxy bei mir nicht und bricht beim Start immer mit einer Fehlermeldung ab die auch andere berichten. Getestet mit docker und auch richtig installiert auf raspi.
Ich habe da als Alternative dies nun über einen haproxy laufen und es geht. Jedenfalls ruft der Adapter die Infos nun über diesen Proxy der max. nun eine Connection zu dem Huawei Dongle aufbaut.Mit dem NRGkick muss ich dann mal sehen ob das parallel nun läuft, aber da scheint bei denen die Software wohl noch buggy zu sein.
-
@lcars ich könnte mir vorstellen einen sog. modbus-read-cache in den Adapter einzubauen. Ein third-party device (z.B. eine Wallbox) könnte sich dann die Daten (virtueller Zähler) über den Adapter ziehen (all out of the box). Das würde sehr schnell und ohne timeouts funktionieren.
Wie ist die Meinung hierzu? -
@bolliy Das wäre optimal. Im Grunde fragt die Wallbox auch nur irgendwelche Register ab (von versch. ModBus IDs wenn man mehr als einen Inverter hat). D.h. du müsstest diese Abfragen beantworten. D.h. es könnten auch Register sein die du selbst nicht abrufst. Und man müsste dann die Geschwindigkeit managen. Z.B. du fragst deine Liste der Register ab in dem Intervall, wenn von außen aber auf dem Cache neue Anfragen kommen zu ggf. Registern die du nicht hast, dann müsstest du das zeitlich managen damit es nicht zu schnell abgefragt wird weil es sonst wieder Timeouts oder der Busy Fehler kommt.
Weiterhin müsstest du dann auch einen Port aufmachen (am besten die Portnummer könnte man angeben) worüber man sich dann verbinden kann zu dem Cache.