Sungrow: add maxcharge/dischargepower (#25011)

This commit is contained in:
harmendp 2025-11-21 17:26:15 +01:00 • committed by GitHub
parent 39e2f5e247
commit db0aa5f2ae
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -18,14 +18,17 @@ params:
baudrate: 9600
- name: timeout
- name: capacity
advanced: true
- name: maxacpower
- name: minsoc
advanced: true
- name: maxsoc
advanced: true
- name: maxchargepower
default: 10600 # 10.6kW, max allowed value for register
default: 5000
advanced: true
- name: maxdischargepower
default: 5000
advanced: true
render: |
type: custom
{{- if eq .usage "grid" }}
@ -172,15 +175,6 @@ render: |
set:
source: sequence
set:
- source: const
value: 0 # Self-consumption mode (Default)
set:
source: modbus
{{- include "modbus" . | indent 10 }}
register:
address: 13049 # EMS mode selection
type: writesingle
decode: uint16
- source: const
value: 0xCC # Stop (Default)
set:
@ -190,14 +184,36 @@ render: |
address: 13050 # Charge/discharge command
type: writesingle
decode: uint16
# Reset max battery discharge power
# Reset max battery discharge power, set equal to max battery charge power
- source: go
script: power
in:
- name: power
type: int
config:
source: modbus
{{- include "modbus" . | indent 12 }}
register:
address: 33046 # Battery max charge power
type: holding
decode: uint16
out:
- name: power
type: int
config:
source: modbus
{{- include "modbus" . | indent 12 }}
register:
address: 33047 # Battery max discharge power
type: writesingle
decode: uint16
- source: const
value: {{ div .maxchargepower 10 }}
value: 0 # Self-consumption mode (Default)
set:
source: modbus
{{- include "modbus" . | indent 10 }}
register:
address: 33047 # Battery max discharge power
address: 13049 # EMS mode selection
type: writesingle
decode: uint16
- case: 2 # hold
@ -254,42 +270,18 @@ render: |
address: 13050 # Charge/discharge command
type: writesingle
decode: uint16
{{- if .maxchargepower }}
- source: const
value: {{ .maxchargepower }} # W
value: {{ .maxchargepower }}
set:
source: modbus
{{- include "modbus" . | indent 10 }}
register:
address: 13051 # Charge power
address: 13051 # Battery max forced (dis)charge power
type: writesingle
decode: uint16
{{- else }}
- source: go
script: power
in:
- name: power
type: int
config:
source: modbus
{{- include "modbus" . | indent 12 }}
register:
address: 5627 # BDC rated power
type: input
decode: uint16
scale: 100
out:
- name: power
type: int
config:
source: modbus
{{- include "modbus" . | indent 12 }}
register:
address: 13051 # Charge/discharge power
type: writesingle
decode: uint16
{{- end }}
capacity: {{ .capacity }} # kWh
maxchargepower: {{ .maxchargepower }} # W
maxdischargepower: {{ .maxdischargepower }} # W
minsoc: {{ .minsoc }} # %
maxsoc: {{ .maxsoc }} # %
{{- end }}