Seite 2 von 2

Re: Anbindung Saxpower mit 1.9x

Verfasst: Sa Mai 10, 2025 1:35 pm
von openWB
Wo liegt mein Bock? :lol:
Geh auf SW2, damit sollte das direkt laufen.

Re: Anbindung Saxpower mit 1.9x

Verfasst: Sa Mai 10, 2025 2:07 pm
von Johnny79
Hast du meine Beiträge gelesen? Speziell Beitrag 126993?

Re: Anbindung Saxpower mit 1.9x

Verfasst: Sa Mai 10, 2025 2:45 pm
von rleidner
Johnny79 hat geschrieben: Sa Mai 10, 2025 1:31 pm Im drop-down Menü unter EVU taucht Saxpower auch nicht auf. Da der Speicher als Bezugszähler nicht bekannt ist.
Wo liegt mein Bock? :lol:
Die Konfiguration der Module in 1.9 passiert in diesen php-Dateien:

Code: Alles auswählen

:~/openWB $ ls -l web/settings/modulconfig*
-rw-r--r-- 1 pi pi  49181 Jan  6 12:07 web/settings/modulconfigbat.php
-rw-r--r-- 1 pi pi  71386 Jan  6 12:07 web/settings/modulconfigevu.php
-rw-r--r-- 1 pi pi  88651 Jan  6 12:07 web/settings/modulconfigpv.php
Diese php-Files sind entsprechend zu ergänzen.
Der php-code legt die konfigurierten Parameter in dieser Datei ab:

Code: Alles auswählen

~/openWB $ ls -l openwb.conf
-rwxrwxrwx 1 pi pi 23890 Mär 31 22:28 openwb.conf
Die Namen der Parameter für Dein Modul legt Du selbst fest, die müssen aber eindeutig sein.
In der openwb.conf müssen die Parameter mit default Werten initialisiert werden, das passiert hier:

Code: Alles auswählen

~/openWB $ ls -l runs/updateConfig.sh 
-rwxr-xr-x 1 pi pi 80547 Mär  7 22:59 runs/updateConfig.sh
Hier wird für jeden Parameter geprüft ob er existiert. Wenn nicht wird er an die Datei angehängt, z.B. so:

Code: Alles auswählen

	if ! grep -Fq "good_we_ip=" $ConfigFile; then
		echo "good_we_ip=192.168.1.1" >> $ConfigFile

Re: Anbindung Saxpower mit 1.9x

Verfasst: Mo Mai 12, 2025 9:03 am
von Johnny79
rleidner hat geschrieben: Sa Mai 10, 2025 2:45 pm
Vielen Dank dir für die Erläuterung, das hat mich ein deutliches Stück weitergebracht.

Ich konnte das Modul nun als EVU-Modul einbinden.

Es scheint nun nur noch an der Modbus-Kommunikation zu scheitern. Hier die Fehlermeldung vom EVU-Status:

Code: Alles auswählen

modules.common.modbus <class 'modules.common.fault_state.FaultState'> ('modules.common.modbus Modbus Error: [Input/Output] Modbus Error: [Invalid Message] Incomplete message received, expected at least 8 bytes (0 received)', <FaultStateLevel.ERROR: 2>)
Debug-Log zeigt folgendes:

Code: Alles auswählen

2025-05-11 13:38:45: PID: 14096: plugstatlp1 0 plugstatlp2 0 plugstatlp3 0 (LV1) at 1273 loadvars loadvars.sh
2025-05-11 13:38:45: PID: 14096: lp1enabled 1 lp2enabled 1 lp3enabled 1 (LV1) at 1272 loadvars loadvars.sh
2025-05-11 13:38:45: PID: 14096: EVU 1:V/0A 2: V/0A 3: V/0A (LV1) at 1271 loadvars loadvars.sh
2025-05-11 13:38:45: PID: 14096: lla3 0 llv3 239.7 llas13  llas23  soclp1 63 soclp2  (LV1) at 1270 loadvars loadvars.sh
2025-05-11 13:38:45: PID: 14096: lla2 0 llv2 239.2 llas12  llas22  sofortll 10 hausverbrauch 0 wattbezug -3210 uberschuss 3210 (LV1) at 1269 loadvars loadvars.sh
2025-05-11 13:38:45: PID: 14096: lla1 0 llv1 239.3 llas11  llas21  mindestuberschuss 800 abschaltuberschuss 700 lademodus 2 (LV1) at 1268 loadvars loadvars.sh
2025-05-11 13:38:45: PID: 14096: pv1watt -3390 pv2watt  pvwatt -3390 ladeleistung 0 llalt 8 nachtladen 0 nachtladen 0 minimalA 8 maximalA 16 (LV1) at 1267 loadvars loadvars.sh
2025-05-11 13:38:44: PID: 14096: speicherleistung 1380 speichersoc 86 (LV1) at 1262 loadvars loadvars.sh
2025-05-11 13:38:44: PID: 14096: ungültiger Wert für evua3:  (LV0) at 993 loadvars loadvars.sh
2025-05-11 13:38:44: PID: 14096: ungültiger Wert für evua2:  (LV0) at 989 loadvars loadvars.sh
2025-05-11 13:38:44: PID: 14096: ungültiger Wert für evua1:  (LV0) at 985 loadvars loadvars.sh
legacy_run_server.py: error: unrecognized arguments: 1
2025-05-11 13:38:44: PID: 2888: legacy run server: usage: legacy_run_server.py [-h] component_type ip_address
2025-05-11 13:38:42: PID: 14096: **** Regulation loop start **** (LV1) at 77 main /var/www/html/openWB/regel.sh
2025-05-11 13:38:40: PID: 12706: **** FATAL ********************************* (LV0) at 68 cleanup /var/www/html/openWB/regel.sh
2025-05-11 13:38:40: PID: 12706: **** FATAL Regulation loop needs 9 seconds (LV0) at 67 cleanup /var/www/html/openWB/regel.sh
2025-05-11 13:38:40: PID: 12706: **** FATAL ********************************* (LV0) at 66 cleanup /var/www/html/openWB/regel.sh
2025-05-11 13:38:36: PID: 12706: anzahlphasen 1 (LV1) at 585 main
Potentielle Ursachen aus meiner Laiensicht:
Übergabe der Modbus-IP klappt nicht.
Eine Herausforderung könnte auch sein, dass Saxpower die Daten via Modbus TCP mit unterschiedlichen Unit-IDs bereit stellt.

Bat-Modul: SoC und Wirkleistung über Unit-ID: 64
EVU-Modul: Werte über Unit-ID: 40

Werde mir das in Ruhe mal genauer anschauen, woran es da hapert. Mich etwas genauer in die Modbus-Bausteine in Python einlesen und andere bereits in openWB eingebunden Module anschauen, wie es dort gelöst wird.
Konnte bisher allerdings kein Modul finden, welches Messwerte über Modbus mit selber IP aber unterschiedlicher Unit-ID bereitstellt.