Brovning / fronius

IP-Symcon (IPS) Modul für Fronius Inverter (Wechselrichter) und SmartMeter (Energiezähler) mit ModBus TCP Unterstützung (bspw. Galvo, Primo, Symo, Symo Hybrid,...).
16 stars 1 forks source link

DCA_SF, DCV_SF, DCW_SF, DCWH_SF erhalten falschen Wert 254 #16

Closed Brovning closed 2 years ago

Brovning commented 2 years ago

Describe the bug In dem tollen Modul hier, sind die beiden Strings ja als 1_DCW und 2_DCW hinterlegt. Muss man den Integer Wert nur noch geteilt durch 10 nehmen, damit man auf den Watt Wert kommt. Das wäre bei mir dann plausibel wenn ich das mit der Gesamtleistung beider Strings vergleiche…

Hier was ich meine: image

20395 → wären 2039Watt 1270 → wären 127Watt In summe etwa 2150Watt - was auch der Fronius Statusanzeige entspricht.

die 127Watt sind dem Norddach zuzuordnen und der fehlenden Sonne :slight_smile:

Sobald mein zweiter Fronius Wechselrichter kommt samt PV, kann ich so, die Nord-Ost Seite alt / neu und Süd-West Seite schön miteinander vergleichen.

Die ganz aktuelle Mainversion - heute frisch installiert. image

DCW_SF → 254

image

DCW_Instanz: image

Smartmeter: image

Kann es sein, dass sich der Wechselrichter und der Smartmeter diesselbe ID teilen? Wechselrichter 101 = ID 1 des Smartmeters? Bis dato wäre mir das nicht aufgefallen, da ich bisher nur JSON Daten per IP abgerufen habe…

Auf der Wechselrichter Webseite wie im Screenshot oben: Port 502 ID 101 (also 01). und die ID 1 hab ich in deinem Modul + Port 502 und meine IP eingetragen. Irgendwie/wo ist da noch was „begraben“…

Am Wechselrichter selbst ist im SETUP > DataCom > Wechselrichter Nummer die „01“ hinterlegt. Also ProtocollType: „Solar Net“.

Hier die erkannten SF Register: image

image

Ist die Smartmeter ID 1, der Wechselrichter ID 101 / 01 im weg?

Expected behavior DCA_SF=-2 DCV_SF=-2 DCW_SF=-1 DCWH_SF=0

Additional context source: https://community.symcon.de/t/modul-fronius-wechselrichter/51132/172

Brovning commented 2 years ago

Es ist nicht klar, weshalb 254 eingelesen wird, anstatt -2. Einzige Erklärung: 254d = 11111110b -2d = 11111110b

--> Negativer Wert wird vorzeichenlos interpretiert Offene Frage: Wo liegt der Interpretationsfehler?

Lösung: Workaround implementieren für SF, die unplausibel sind.