@@ -12,6 +12,17 @@ params:
12
12
default : 5s
13
13
- name : capacity
14
14
advanced : true
15
+ # battery control
16
+ - name : defaultmode
17
+ default : 0 # (0=self-use,1=time-of-use,2=backup,3=passive)
18
+ advanced : true
19
+ - name : holdmode
20
+ default : 2 # (0=self-use,1=time-of-use,2=backup,3=passive)
21
+ advanced : true
22
+ - name : backupsoc
23
+ type : int
24
+ default : 20 # used when backup mode is used as defaultmode to control the default backup soc
25
+ advanced : true
15
26
render : |
16
27
type: custom
17
28
{{- if eq .usage "grid" }}
@@ -79,5 +90,110 @@ render: |
79
90
type: holding
80
91
decode: uint16
81
92
scale: 0.01
93
+ batterymode:
94
+ source: switch
95
+ switch:
96
+ - case: 1 # normal
97
+ set:
98
+ source: sequence
99
+ set:
100
+ - source: const
101
+ value: {{ .defaultmode }}
102
+ set:
103
+ source: modbus
104
+ {{- include "modbus" . | indent 10 }}
105
+ timeout: {{ .timeout }}
106
+ register:
107
+ address: 0x3247 # AppMode
108
+ type: writeholding
109
+ decode: int16
110
+ - source: const
111
+ value: {{ .backupsoc }} # use backupsoc value when using backup mode as defaultmode
112
+ set:
113
+ source: modbus
114
+ {{- include "modbus" . | indent 10 }}
115
+ timeout: {{ .timeout }}
116
+ register:
117
+ address: 0x3271 # BackModSOCRetain
118
+ type: writeholding
119
+ decode: int16
120
+ - case: 2 # hold
121
+ set:
122
+ source: sequence
123
+ set:
124
+ - source: const
125
+ value: {{ .holdmode }}
126
+ set:
127
+ source: modbus
128
+ {{- include "modbus" . | indent 10 }}
129
+ timeout: {{ .timeout }}
130
+ register:
131
+ address: 0x3247 # AppMode
132
+ type: writeholding
133
+ decode: int16
134
+ - source: const
135
+ value: {{ .soc }} # hold on current soc value when using backup mode as holdmode
136
+ set:
137
+ source: modbus
138
+ {{- include "modbus" . | indent 10 }}
139
+ timeout: {{ .timeout }}
140
+ register:
141
+ address: 0x3271 # BackModSOCRetain
142
+ type: writeholding
143
+ decode: int16
144
+ - case: 3 # charge
145
+ set:
146
+ source: sequence
147
+ set:
148
+ - source: const
149
+ value: 1 # Time-Of-Use
150
+ set:
151
+ source: modbus
152
+ {{- include "modbus" . | indent 10 }}
153
+ timeout: {{ .timeout }}
154
+ register:
155
+ address: 0x3247 # AppMode
156
+ type: writeholding
157
+ decode: int16
158
+ - source: const
159
+ value: 1 # enable
160
+ set:
161
+ source: modbus
162
+ {{- include "modbus" . | indent 10 }}
163
+ timeout: {{ .timeout }}
164
+ register:
165
+ address: 0x3604 # Charge time enable control
166
+ type: writeholding
167
+ decode: int16
168
+ - source: const
169
+ value: 0 # start time (00:00)
170
+ set:
171
+ source: modbus
172
+ {{- include "modbus" . | indent 10 }}
173
+ timeout: {{ .timeout }}
174
+ register:
175
+ address: 0x3606 # Battery first charging time (start)
176
+ type: writeholding
177
+ decode: int16
178
+ - source: const
179
+ value: 0x173B # end time (23:59)
180
+ set:
181
+ source: modbus
182
+ {{- include "modbus" . | indent 10 }}
183
+ timeout: {{ .timeout }}
184
+ register:
185
+ address: 0x3607 # Battery first charging time (end)
186
+ type: writeholding
187
+ decode: int16
188
+ - source: const
189
+ value: 0x7F64 # every day (0x7f) at 100% (0x64)
190
+ set:
191
+ source: modbus
192
+ {{- include "modbus" . | indent 10 }}
193
+ timeout: {{ .timeout }}
194
+ register:
195
+ address: 0x3608 # Battery first charging time (power)
196
+ type: writeholding
197
+ decode: int16
82
198
capacity: {{ .capacity }} # kWh
83
199
{{- end }}
0 commit comments