Modbus Zugriff für Fronius Symo

Begonnen von Roger, 03 Januar 2016, 19:51:56

Vorheriges Thema - Nächstes Thema

tpoetschan

Hallo zusammen,

ich freue mich sehr das diese Gemeinschaft hier solche genialen Module vorbringt. Das hilft mir ENORM!
Ganz ganz tolle Arbeit!! Echt klasse!

Ich habe das Modul nun mal testweise in Betrieb genommen und habe eine Log voll diesen nachfolgenden Meldungen:

Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 311.
Use of uninitialized value $nameOrConf in -f at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 285.
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 311.
Use of uninitialized value $nameOrConf in -f at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 285.
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 311.
Use of uninitialized value $nameOrConf in -f at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 285.
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 311.
Use of uninitialized value $nameOrConf in -f at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 285.
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 311.
Use of uninitialized value $nameOrConf in -f at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 285.
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 311.
Use of uninitialized value $nameOrConf in -f at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 285.
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 311.
Use of uninitialized value $nameOrConf in -f at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 285.
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 311.
Use of uninitialized value $nameOrConf in -f at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 285.
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 311.
Use of uninitialized value $nameOrConf in -f at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 285.
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 311.
Use of uninitialized value $nameOrConf in -f at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 285.
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 311.
Use of uninitialized value $nameOrConf in -f at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 285.
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 311.
Use of uninitialized value $nameOrConf in -f at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 285.
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 311.

Kann mir da jemand weiterhelfen?, wisst ihr an was das liegt?

Viele Grüße

Thomas

skynet

Ich habe mein Log mit den gleichen Meldungen gefüllt bekommen.
Habe Fronius erst kürzlich in Betrieb genommen.
Jetzt ist es wieder deaktiviert. Men Log bestand zu 99% aus diesen Hinweisen/Fehlern

Werte wurden aber geliefert.

tpoetschan

Exakt: Auch von mir ein Nachtrag - Die gelieferten Werte haben alle gestimmt!

Zwiebel

Hallo Roger,

sehr schöne das du deine Module zur Verfügung stellst.

Ich hab meinen Fronius Symo 7.0-3-M seit gestern in Betrieb. So wie es scheint funktioniert das auslesen von manchen Registern nicht, oder geben unplausible Daten zurück.
Wie z.B.
Modbus_MPPT -> Current_String2__A -> 0 A und Operating_State_String2 -> 65535 (deutet darauf hin das ich auch den string2 nicht auslesen kann)
Modbus_Meter -> Energy_L* -> werte sind unplausiebel

Ich habe einen Fronius Smart Meter verbaut. Welches Register gibt die aktuelle Leistung aus ob gerade Strom bezogen oder eingespeist wird?

Laut dem Dokument:
http://www.fronius.com/Applikationen/contentserverdownload/downloadcsitem.aspx?id=361552
Auf der Seite 62 sollte der Smart Meter mit der ID 240 abfragbar sein. Aber ich bekomme nur "no FD" zurück.
Also hab ich den Energy Meter so definiert:
Zitatdefine FroniusModbusMeter Fronius_Modbus_Meter 1 30 192.168.x.x:502 TCP

Hast du zu meinen Themen eine idee?

viele Grüße
Zwiebel

tpoetschan

Hey Zwiebel!
Sieht du bei direktem Zugriff auf den WR das Smart-Meter? (Im Dashboard)

Tauchen bei dir auch die Fehlermeldungen auf, die ich habe?

Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 311.
Use of uninitialized value $nameOrConf in -f at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 285.
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 311.
Use of uninitialized value $nameOrConf in -f at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 285.
Use of uninitialized value in subroutine entry at /usr/lib/x86_64-linux-gnu/perl5/5.20/Device/SerialPort.pm line 311.

Zwiebel

Hallo tpoetschan,

Du meinst die "startpage" vom WR? Da sehe ich meinen Verbrauch/Netzbezug. Also die Komunikation WR -> SmartMeter funktioniert reibungslos.
Das ist nicht das problem.

Ich habe keiner deiner Fehlermeldungen. Ich frage den WR aber über TCP ab nicht über RS485. Kann es sein das deine FHEM Platform sehr "exotisch" ist?

viele Grüße
Zwiebel

vuffiraa

Zitat von: Zwiebel am 28 April 2017, 14:20:41
Hallo Roger,

sehr schöne das du deine Module zur Verfügung stellst.

Ich hab meinen Fronius Symo 7.0-3-M seit gestern in Betrieb. So wie es scheint funktioniert das auslesen von manchen Registern nicht, oder geben unplausible Daten zurück.
Wie z.B.
Modbus_MPPT -> Current_String2__A -> 0 A und Operating_State_String2 -> 65535 (deutet darauf hin das ich auch den string2 nicht auslesen kann)
Modbus_Meter -> Energy_L* -> werte sind unplausiebel

Ich habe einen Fronius Smart Meter verbaut. Welches Register gibt die aktuelle Leistung aus ob gerade Strom bezogen oder eingespeist wird?

Laut dem Dokument:
http://www.fronius.com/Applikationen/contentserverdownload/downloadcsitem.aspx?id=361552
Auf der Seite 62 sollte der Smart Meter mit der ID 240 abfragbar sein. Aber ich bekomme nur "no FD" zurück.
Also hab ich den Energy Meter so definiert:
Hast du zu meinen Themen eine idee?

viele Grüße
Zwiebel

Ich beziehe mich auf die Beobachtung, dass die Werte für Modbus_Meter -> Energy_L* nicht plausibel sind.

Bei mir wurde ein Smart Meter installiert, den ich auch über Modbus TCP in Fhem auslesen kann. Das Problem mit dem Energy-Werten hatte ich auch. Laut dem verlinktem Dokument liefern die Energy-Register Werte vom Typ float32. Im Modul Fronius_Modbus_Meter werden die Register aber als uint32 interpretiert. Das führt zu den komischen Werten.

Wenn man für die Energy-Register in der Definition unpack => "N" nach unpack => "f>" ändert, sehen die Werte viel besser und plausibel aus. Vielleicht kann Roger das in das Modul aus dem ersten Beitrag ändern.

Gruß Vuffiraa
FHEM 5.8 auf Cubietruck, Raspi B+

Weinzierl KNX IP BAOS 770, Homematic, EnOcean

dukerider33

Hallo Leute,

bin neu hier und arbeite zum ersten Mal mit fhem,

habe dies scripts für meinen Fronius WR hinzugefügt, status wird auch "open" angezeigt, (siehe screenshot) allerdings bekomme ich kein Logfile und kann somit kein Plot erstellen.
Hat jemand eine idee?



Danke!

vuffiraa

Zitat von: dukerider33 am 21 Mai 2017, 11:58:04
Hallo Leute,

bin neu hier und arbeite zum ersten Mal mit fhem,

habe dies scripts für meinen Fronius WR hinzugefügt, status wird auch "open" angezeigt, (siehe screenshot) allerdings bekomme ich kein Logfile und kann somit kein Plot erstellen.
Hat jemand eine idee?



Danke!
Hallo dukerider33,

Da scheint bei der Definition einiges durcheinander gekommen zu sein.

Im ersten Beitrag hier steht die Definitionsvorlage:
define <name2> Fronius_Modbus       1   30 192.168.nnn.nnn:502 TCP

Danach sollte das Gerät den richtigen Namen haben und den Internals sollte TYPE = Fronius_Modbus stehen.

Gruß vuffiraa
FHEM 5.8 auf Cubietruck, Raspi B+

Weinzierl KNX IP BAOS 770, Homematic, EnOcean

dukerider33

Hallo Vuffiraa,

danke für die Antwort,
inzwischen habe ich mir FHem auf meiner Synology installiert und bin dort noch am Testen. Habe es soweit zumindest mal laufen, allerdings habe ich noch Berechtigungsproblem mit SFTP auf die Synology.
Am Wochenende werde ich mir dann meine Config neu machen und den Fronius Symo hinzufügen. Ich werde dann hier weiter berichten.


LG
Manfred

dukerider33

Hi,
so nun hab ich FHEM auf meiner Synology am Laufen, allerdings hab ich ein Problem mit der config. Ich sehe zwar den Fronius im Webinterface dieser schreibt aber kein Logfile. Irgendwas ist falsch in meiner config:

define WR Modbus
define WR Fronius_Modbus 192.168.1.22:502 TCP

define 98_Fronius_Modbus_Meter.pm Modbus 192.168.1.22:502 TCP

define 98_Fronius_Modbus.pm Modbus 192.168.1.22:502 TCP

Kann jemand helfen?

Danke!

vitolinker

Moin Dukerider,

habe zwar noch keinen Fronius aber deine Definitionen sind falsch.
Lese noch einmal genau das allererste Post in diesem Thread.
<name> ist von dir frei zu wählen und nicht der Dateiname.
Probiere mal
define meinWechselrichter ...

VG

dukerider33

Zitat von: vitolinker am 25 Mai 2017, 09:52:07
Moin Dukerider,

habe zwar noch keinen Fronius aber deine Definitionen sind falsch.
Lese noch einmal genau das allererste Post in diesem Thread.
<name> ist von dir frei zu wählen und nicht der Dateiname.
Probiere mal
define meinWechselrichter ...

VG

Hi und danke für die Antwort,

dann sollte das in meinem Fall so aussehen?

define Mein_WR Modbus
define Mein_WR Fronius_Modbus       1   30 192.168.1.22:502 TCP
define Mein_WR Fronius_Modbus_MPPT  1   60 192.168.1.22:502 TCP
define Mein_WR Fronius_Modbus_Meter 240 30 192.168.1.22:502 TCP

wozu sind die paramter 1 bzw 30 und 240 30 vor der IP?
Ich glaube ich verstehe da irgendwas total falsch.

LG
Manfred

vitolinker

Hallo Manfred,

schaue doch mal in der Dokumentation von den entsprechenden Modulen. Im Texteditor die 98_... Dateien öffnen.
Da steht für 1 30 die ID und das Intervall in Sekunden.
Beim Meter weiß ich es nicht auf die Schnelle, aber ich vermute entweder ein Intervall oder ein Timeout.

VG

vitolinker

Nachtrag: Im Meter code steht, dass die 240 die Modbus ID des Zählers ist:
Die Modbus Geräte-ID des Energiezählers ist 240

VG