Skip to content

Commit

Permalink
Add b+g e-tech ds100/ws100 (#17371)
Browse files Browse the repository at this point in the history
Vogelbecker authored Nov 22, 2024
1 parent 160d6f4 commit 4d2388d
Showing 2 changed files with 180 additions and 0 deletions.
107 changes: 107 additions & 0 deletions templates/definition/meter/bge_tech_ds100.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@
template: bge_tech_ds100
products:
- brand: BGEtech
description:
generic: DS100
params:
- name: usage
choice: ["grid", "pv", "charge", "aux"]
- name: modbus
choice: ["rs485", "tcpip"]
baudrate: 1200
render: |
type: custom
power:
source: modbus
{{- include "modbus" . | indent 2 }}
register:
address: 0x0428 # Total active power
type: holding
decode: int32
{{- if eq .usage "pv" }}
scale: -1
{{- end }}
energy:
source: modbus
{{- include "modbus" . | indent 2 }}
register:
{{- if eq .usage "pv" }}
address: 0x0118 # Reversing active energy consumption
{{- else }}
address: 0x010E # Forward active energy consumption
{{- end }}
type: holding
decode: int32
scale: 0.01
currents:
- source: modbus
{{- include "modbus" . | indent 2 }}
register:
address: 0x0410 # Electricity of A phase
type: holding
decode: int32
scale: 0.1
- source: modbus
{{- include "modbus" . | indent 2 }}
register:
address: 0x0412 # Electricity of B phase
type: holding
decode: int32
scale: 0.1
- source: modbus
{{- include "modbus" . | indent 2 }}
register:
address: 0x0414 # Electricity of C phase
type: holding
decode: int32
scale: 0.1
voltages:
- source: modbus
{{- include "modbus" . | indent 2 }}
register:
address: 0x0400 # Voltage of A phase
type: holding
decode: int32
scale: 0.001
- source: modbus
{{- include "modbus" . | indent 2 }}
register:
address: 0x0402 # Voltage of B phase
type: holding
decode: int32
scale: 0.001
- source: modbus
{{- include "modbus" . | indent 2 }}
register:
address: 0x0404 # Voltage of C phase
type: holding
decode: int32
scale: 0.001
powers:
- source: modbus
{{- include "modbus" . | indent 2 }}
register:
address: 0x0410 # Active power of A phase
type: holding
decode: int32
{{- if eq .usage "pv" }}
scale: -1
{{- end }}
- source: modbus
{{- include "modbus" . | indent 2 }}
register:
address: 0x0412 # Active power of B phase
type: holding
decode: int32
{{- if eq .usage "pv" }}
scale: -1
{{- end }}
- source: modbus
{{- include "modbus" . | indent 2 }}
register:
address: 0x0414 # Active power of C phase
type: holding
decode: int32
{{- if eq .usage "pv" }}
scale: -1
{{- end }}
73 changes: 73 additions & 0 deletions templates/definition/meter/bge_tech_ws100.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
template: bge_tech_ws100
products:
- brand: BGEtech
description:
generic: WS100
params:
- name: usage
choice: ["grid", "pv", "charge", "aux"]
- name: modbus
choice: ["rs485", "tcpip"]
baudrate: 1200
render: |
type: custom
power:
source: modbus
{{- include "modbus" . | indent 2 }}
register:
address: 0x0104 # Total active power
type: holding
decode: int32
{{- if eq .usage "pv" }}
scale: -1
{{- end }}
energy:
source: modbus
{{- include "modbus" . | indent 2 }}
register:
{{- if eq .usage "pv" }}
address: 0x0118 # Reversing active energy consumption
{{- else }}
address: 0x010E # Forward active energy consumption
{{- end }}
type: holding
decode: int32
scale: 0.01
currents:
- source: modbus
{{- include "modbus" . | indent 2 }}
register:
address: 0x0102 # Electricity of A phase
type: holding
decode: int32
scale: 0.001
- source: const
value: 0 # since the device only a single phase, this value is set to 0
- source: const
value: 0 # since the device only a single phase, this value is set to 0
voltages:
- source: modbus
{{- include "modbus" . | indent 2 }}
register:
address: 0x0100 # Voltage of A phase
type: holding
decode: int32
scale: 0.001
- source: const
value: 0 # since the device only a single phase, this value is set to 0
- source: const
value: 0 # since the device only a single phase, this value is set to 0
powers:
- source: modbus
{{- include "modbus" . | indent 2 }}
register:
address: 0x0104 # Active power of A phase
type: holding
decode: int32
{{- if eq .usage "pv" }}
scale: -1
{{- end }}
- source: const
value: 0 # since the device only a single phase, this value is set to 0
- source: const
value: 0 # since the device only a single phase, this value is set to 0

0 comments on commit 4d2388d

Please sign in to comment.