evcc-io / evcc

Sonne tanken ☀️🚘
https://evcc.io
MIT License
3.61k stars 668 forks source link

ZCS Azzurro HYD 10KTL-3PH-PRO Register Update #7928

Closed maxirass closed 1 year ago

maxirass commented 1 year ago

Hallo liebes Evcc Team,

Wir haben seit kurzem den oben genannten Wechselrichter mit Pylontech Batteriespeicher. Seit gestern besitzen wir eine go-eCharger Gemin v3, damit ich evcc nutzen kann. Ich lese die Daten über einen Waveshare RS485 to eth aus und sende die Daten an einen ioBroker via Modbus TCP/IP. Ich habe die Register selbst herausgefunden, damit mein Grafana Dashboard die richtigen Werte anzeigt. Leider habe ich bei der Konfiguration von evcc festgestellt, dass im Template für den ZCS Azzurro Hybrid Wechselrichter, die falschen Register hinterlegt sind und somit falsche Werte raus kommen. Da der Azzurro ein umgelabelter SofarSolar ist, habe ich das Template sofarsolar-g3 verwendet. Dabei stimmen viele Werte, aber nicht alle. Deshalb wollte ich auf diesem Wege die richtigen Register mitteilen. Dabei gilt zu beachten, dass der wahre Verbrauch sich aus "active_load - total_grid_output" zusammensetzt. Die Registeradressen sind als Dezimalzahl im Excel hinterlegt und nicht als Hexa-Adressen.

VG

Azzurro_Register.xlsx

andig commented 1 year ago

@maxirass könntest Du einen PR mit korrigiertem Template machen?

maxirass commented 1 year ago

@andig sorry ich bin noch komplett neu in dem Github Thema. Was meinst du mit PR?

andig commented 1 year ago

Ein "pull request" für die neue Templatedatei: https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests

maxirass commented 1 year ago

Ich hab leider keinerlei Programmiererfahrungen. Könnte jemand anders das Template korrigieren und einen PR machen.

andig commented 1 year ago

Kannst du denn aufschreiben konkret welche Register abweichen? Die Mühe muss sich ja auch jemand machen?

maxirass commented 1 year ago

Ok, also ich habe gerade mal die Register vom sofarsolar-g3 Template überprüft. Die Register stimmen alle, aber in der Web Oberfläche von evcc wird beim Vebrauch der "Hausverbrauch + Batterieladung" angezeigt, aber bei der Batterieladung wird kein Wert angezeigt. Deswegen vermute ich, dass hier nur die Werte falsch verknüpft sind. Ich hoffe ich konnte es verständlich erklären. Ich hänge mal 2 Screenshots von meinem Grafana Dashboard und von der evcc Oberfläche an. image image

andig commented 1 year ago

/cc @premultiply zusätzlich abgedeckter WR und Fehler im Template?

premultiply commented 1 year ago

Bitte einmal die Ausgabe von evcc meter --log trace bitte.

premultiply commented 1 year ago

Wahr wohl nur eine falsche Skalierung der Batterieleistung. Bitte mal testen.

maxirass commented 1 year ago

Jetzt wird der Wert angezeigt, aber um eine 10er Potenz zu viel also eigentlich sind es 4kW und evcc zeigt 40kW an. Und die Ladung und Entladung sind in der Ansicht vertauscht. image image

premultiply commented 1 year ago

Ich liebe gute Dokumentation...

maxirass commented 1 year ago

@premultiply fall du den trace noch benötigst hab ich ihn dir mal angehängt, Vielen Dank für eure Hilfe und Bemühungen, macht echt einen klasse Job! [main ] INFO 20230514 190957 evcc .txt

premultiply commented 1 year ago

Die Energiemengen sind doch auch bestimmt falsch skaliert, oder?

maxirass commented 1 year ago

Die Skalierungen in der Excel weiter oben stimmen in meinem Grafana Dashboard. Ich hab gerade nochmal abgeglichen: 0x0686 # PV_Generation_Total hat scale 0.1 für kWh 0x069A # Bat_Discharge_Total hat scale 0.1 für kWh 0x0606 # Power_Bat1 hat scale 10 für W Heißt es stimmen die Skalierungen bis auf Power_Bat1 und in der Web Oberfläche müssen "die Anzeigen getauscht" werden, sodass negative Werte bei Entladen und positive Werte bei Laden angezeigt werden

maxirass commented 1 year ago

Und 0x068E # Energy_Purchase_Total hat scale 0.1 für kWh die Skalierung stimmt also auch

cschlipf commented 1 year ago

Hier meine funktionierende, und getestete Metersconfig mit den korrekten Scales, wie es bei mir seit einigen Wochen läuft:

meters:
  - name: sofar-grid
    type: custom
    power:
      source: modbus
      id: 1
      device: /dev/ttyUSB0
      baudrate: 9600
      comset: "8N1"
      register:
        address: 0x0488 # Total PCC active power. Selling electricity is positive, buying electricity is negative
        type: holding
        decode: int16
      scale: -10
      delay: 1s # Required by Sofar Solar inverter to cleanly read the values
    energy:
      source: modbus
      id: 1
      device: /dev/ttyUSB0
      baudrate: 9600
      comset: "8N1"
      register:
        address: 0x068E # Energy_Purchase_Total
        type: holding
        decode: uint32
      scale: 0.1
      delay: 1s # Required by Sofar Solar inverter to cleanly read the values
    currents:
      - source: modbus
        id: 1
        device: /dev/ttyUSB0
        baudrate: 9600
        comset: "8N1"
        register:
          address: 0x0492 # R phase PCC current
          type: holding
          decode: uint16
        scale: 0.01
        delay: 1s # Required by Sofar Solar inverter to cleanly read the values
      - source: modbus
        id: 1
        device: /dev/ttyUSB0
        baudrate: 9600
        comset: "8N1"
        register:
          address: 0x049D # S phase PCC current
          type: holding
          decode: uint16
        scale: 0.01
        delay: 1s # Required by Sofar Solar inverter to cleanly read the values
      - source: modbus
        id: 1
        device: /dev/ttyUSB0
        baudrate: 9600
        comset: "8N1"
        register:
          address: 0x04A8 # T phase PCC current
          type: holding
          decode: uint16
        scale: 0.01
        delay: 1s # Required by Sofar Solar inverter to cleanly read the values
    powers:
      - source: modbus
        id: 1
        device: /dev/ttyUSB0
        baudrate: 9600
        comset: "8N1"
        delay: 1s # Required by Sofar Solar inverter to cleanly read the values
        register:
          address: 0x0493 # ActivePower_PCC_R
          type: holding
          decode: int16
        scale: -10
      - source: modbus
        id: 1
        device: /dev/ttyUSB0
        baudrate: 9600
        comset: "8N1"
        delay: 1s # Required by Sofar Solar inverter to cleanly read the values
        register:
          address: 0x049E # ActivePower_PCC_S
          type: holding
          decode: int16
        scale: -10
      - source: modbus
        id: 1
        device: /dev/ttyUSB0
        baudrate: 9600
        comset: "8N1"
        delay: 1s # Required by Sofar Solar inverter to cleanly read the values
        register:
          address: 0x04A9 # ActivePower_PCC_T
          type: holding
          decode: int16
        scale: -10

  - name: sofar-pv
    type: custom
    power:
      source: modbus
      id: 1
      device: /dev/ttyUSB0
      baudrate: 9600
      comset: "8N1"
      register:
        address: 0x05C4 # Total PV power
        type: holding
        decode: uint16
      scale: 100
      delay: 1s # Required by Sofar Solar inverter to cleanly read the values
    energy:
      source: modbus
      device: /dev/ttyUSB0
      baudrate: 9600
      comset: "8N1"
      register:
        address: 0x0686 # PV_Generation_Total
        type: holding
        decode: uint32
      scale: 0.1
      delay: 1s # Required by Sofar Solar inverter to cleanly read the values

  - name: sofar-battery-1
    type: custom
    power:
      source: modbus
      id: 1
      device: /dev/ttyUSB0
      baudrate: 9600
      comset: "8N1"
      register:
        address: 0x0606 # The charging and discharging power of the first battery pack. Charge is positive, discharge is negative
        type: holding
        decode: int16
      scale: -10
      delay: 1s # Required by Sofar Solar inverter to cleanly read the values
    energy:
      source: modbus
      id: 1
      device: /dev/ttyUSB0
      baudrate: 9600
      comset: "8N1"
      register:
        address: 0x069A # Bat_Discharge_Total
        type: holding
        decode: uint32
      scale: 0.1
      delay: 1s # Required by Sofar Solar inverter to cleanly read the values
    soc:
      source: modbus
      id: 1
      device: /dev/ttyUSB0
      baudrate: 9600
      comset: "8N1"
      register:
        address: 0x0608 # No. 1 battery pack SOC
        type: holding
        decode: uint16
      delay: 1s # Required by Sofar Solar inverter to cleanly read the values
andig commented 1 year ago

Und ...ist das ein Widerspruch zur Implementierung?