Abfrage des Huawei SDongleA-05 verbessern (beschleunigen) #16063
Replies: 6 comments 26 replies
-
Ich gehe mal davon aus das die Abfrage per Modbus erfolgt? Grundsätzlich sollte man nur 1 System haben das eine Modbus Abfrage durchführt, alles andere gibt immer Probleme wie du schon selbst gemerkt hast. Sobald du mehrere Systeme hast die ständig zugreifen wollen solltest du über einen Modbusproxy nachdenken. Dann ist dieser die zentrale Anlaufstelle für deine Abfragen. Das ist grundsätzlich der normale Weg. Da muss niemand was umprogrammieren. https://docs.evcc.io/docs/reference/configuration/modbusproxy |
Beta Was this translation helpful? Give feedback.
-
How is your dongle connected to the internet? Wifi ? Is the signal strong ? (You can see this when conected to the main inverter’s internal management wifi, and logged in as installer) Is your network reliable high quality and without any problems? Perhaps try to connect it using ethernet cable? |
Beta Was this translation helpful? Give feedback.
-
Das ist genau der Punkt.. evcc ließt jedes meter sequentiell aus-- wobei in diesem Fall auch das parallele Auslesen eher kontraproduktiv wäre- Dadurch dass er aber 3 seperate Anfragen an den dongle schickt (pv, slave, battery) dauert es einfach gefühlt unendlich lange.. Da ich nicht glaube, dass sich das evcc team diesem Problem annehmen wird (was durchaus verständlich ist) würde ich mir selbst eine komplettabfrage in node-red erstellen und diese Daten via mqtt zur Verfügung stellen. pv, slave und battery dann entsprechend als custom meter einbinden.. problematisch wird dann nur die aktive batterie-Steuerung. Alternativ nur pv und slave als custom-meter einbinden und in evcc zusätzlich den modbus-proxy aktivieren und die Batterie weiterhin via evcc auslesen und steuern lassen.. in noder-red dann zumindest pv und slave noch in einen rutsch auslesen.. dann aber die Abfrage an den modbus-proxy senden. |
Beta Was this translation helpful? Give feedback.
-
Oder einen AP zwischenschalten und direkt die WR per WLAN auslesen. Habe ich selber aber nie umgesetzt, da ich keine Performanceprobleme habe (habe allerdings auch keinen Slave-WR). |
Beta Was this translation helpful? Give feedback.
-
You would connect RS485 directly to the main inverter’s COM port - such an easy and cheap thing to try :) |
Beta Was this translation helpful? Give feedback.
-
Hier mal ein kleines "Optimierungs-Tutorial" für Huawei... Es ist in der Tat so, dass Huawei bei Einzelabfragen sehr langsam ist. Man liest deshalb besser mehrere Register, sprich Registerbereiche, mit einer einzigen Abfrage aus. Ich lese WR+Batterie+EnFluRi zum Beispiel in 3 Abfragen aus:
Eine weitere Optimierung ist es, die Verbindung nur ein Mal aufzumachen und diese persistent zu halten, sprich die Verbindung nicht mit jedem Zyklus neu aufzumachen, da der Verbindungsaufbau zum WR recht lahm ist und die erste Abfrage im Anschluss i.d.R. in die Hose geht, sofern man nicht einen kurzen Sleep einbaut. Last but not least kann man die Abfragegeschwindigkeit enorm beschleunigen, indem man die RS485 Baudrate auf 19.200 hoch setzt (Default=9.600). Das MUSS man sowohl im SDongle als auch im SUN2000 machen, da sich die beiden sonst nicht mehr verstehen. Dazu bedarf es Installer-Rechten. Auf den SDongle kommt man per WLAN und FusionSolar App. Dieser spannt, nachdem er neu gesteckt wurde, ein Konfigurations-WLAN auf. Und ja, die RS485 Einstellung hat auch auf den SDongle großen Einfluss. Ich gehe davon aus, dass das ein Serial-USB-Converter ist. Damit kann ich die oben genannten Registersätze von einem WR und einer Batterie in deutlich unter 5s auslesen. Was mir ja vorschwebt ist ein "intelligenter" Proxy mit Cache, der periodisch große Register-Bereiche asynchron von den Geräten ausliest und vorhält. Mehrere Clients könnten sich dann auf den Proxy verbinden und Einzel- oder Bereichsabfragen tätigen, die aus dem Cache bedient werden. |
Beta Was this translation helpful? Give feedback.
-
Meine PV-Anlage besteht aus einem Master-Wechselrichter Huawei SUN2000MA-10KTL-M1, einem Slave-Wechselrichter Huawei SUN2000MA-8KTL-M1, dem Huawei Smart Power Sensor DTSU666-H 100A und dem Speicher Huawei LUNA2000-15-S0.
Mit dem Template
SUN2000 with SDongle & Power Sensor
kann ich auch alle 4 Geräte grundsätzlich auslesen.Allerdings ist der SDongleA-05, über den die Abfrage erfolgt, leider elend langsam. Wenn ich z.B. per Kommandozeile darauf zugreife, dann dauert es manchmal über 10 Sekunden, um nur eine Abfrage zu beantworten.
Damit also alle 4 Geräte sauber abgefragt werden, ohne dass ständig Timeout-Probleme auftauchen, musste ich schon in evcc unter Konfiguration → Allgemein → Regelverhalten das
Aktualisierungsintervall
auf 45 Sekunden hochsetzen.Und selbst das reicht leider nicht immer. Vor allem, wenn man parallel noch mit der Huawei FusionSolar App (oder über die FusionSolar-Webseite) eine Abfrage macht oder eine Konfigurationsänderung durchführt, schlägt in 8 von 10 Fällen entweder der Änderungsrequest fehl oder evcc zeigt anschließend ein

und einen oder mehrere "timeout"-Einträge im Fehlerprotokoll an.
Außerdem ist ein Intervall von 45 Sekunden bei bewölktem Himmel ziemlich nervig, weil dann evcc sehr oft den Änderungen der Sonneneinstrahlung hinterherläuft. Es kommt eine Wolke, der Überschuss reicht nicht mehr aus und bis evcc den Ladestrom passend reduziert hat, lädt man das Auto ungewollt aus dem Stadtnetz oder Hausakku. Wenn evcc dann den Ladestrom reduziert hat, ist die Wolke oft schon wieder vorbei und der wieder vorhandene Überschuss landet nicht im Auto. Wenn evcc dann wieder hochgeregelt hat, schlägt schon die nächste Wolke zu. Usw.
Daher wäre meine Frage an diejenigen, die sich mit der Programmierung der Schnittstellen zu den Wechselrichtern beschäftigen, ob man vielleicht im Falle von Huawei die Abfrage so gestalten kann, dass man statt 4 einzelner Abfragen nacheinander (die dann 4x 10 Sekunden brauchen) alles in einer Abfrage an den Dongle zusammenfassen könnte, sodass das Ganze nur noch 10 oder vielleicht maximal 15 Sekunden benötigen würde.
Besteht da Hoffnung, dass man das entsprechend ändern könnte?
Das wäre mir sogar einen finanziellen Beitrag wert, weil die Alternative die Anschaffung einer EMMA-A02 oder eines Smartlogger3000A wäre, was ein paar Hundert Euro kostet UND das Risiko birgt, dass bei der Umstellung auf die neue Schnittstelle die historischen Daten in FusionSolar teilweise oder sogar ganz verloren gehen (die Aussagen in den Foren dazu sind da leider etwas widersprüchlich, auch was die richtige Reihenfolge bei der Umstellung angeht, aber es haben schon Huawei-Besitzer alle historischen Daten verloren).
Und es würde allen evcc-Nutzern zugute kommen, die Huawei bei sich im Einsatz haben.
Beta Was this translation helpful? Give feedback.
All reactions