FOX ESS Photovoltaik-Anlage
Allgemeines
Meine Photovoltaik-Anlage besteht aus den Komponenten:
- FOX ESS H3-Pro Wechselrichter
- Fox EK11 Akku
- Fox A011KS1-E-2 Wallbox
Downloadbereich Fox Downloadbereich Fox (veraltet?)
Durch die Registerliste (MODBUS RTU) ist diese Seite doch auch wieder recht lang geworden. Die XML-Datei (Konvertierung) und die Programme werde ich auf eine eigene Seite auslagern.
H3-Pro Wechselrichter
Bisher hierhin ist mit Grid, EPS, Akku, DC alles klar nur bei den Com-Schnittstellen wird es etwas verworren.
Der Stecker J WiFi/GPRS/LAN (optional) ist ein USB-Port der wohl nur diese speziellen Module bedienen kann.
Bei den Steckern P und Q geht es aber irgendwie munter durcheinander.
P wird als COM1-12PIN und Q als COM2-24PIN in der (Stuecklisten-)Tabelle angegeben.
Diese Bezeichungen finden sich schwer oder gar nicht im Manual wieder.
Hier mal ein paar Nahaufnahmen Stecker P.
Der Stecker P hat auf der einen Seite 8 PCB Kontakte und auf der anderen Seite 4 PCB Kontake.
Belegung | ||
---|---|---|
1 | DRY RLY2- | 13 |
2 | DRY RLY2+ | 14 |
3 | DRY RLY1- | 15 |
4 | DRY RLY1+ | 16 |
5 | NC | NC |
6 | NC | NC |
7 | Meter 485A | 1 |
8 | Meter 485B | 2 |
9 | GND TVS (Transient Voltage Suppressor?) | 3 |
10 | GND COM | 4 |
11 | +12V SELV | 5 |
12 | RY Ctrl | 6 |
13 | NC | NC |
14 | NC | NC |
15 | NC | NC |
16 | NC | NC |
17 | EMS 485A | 7 |
18 | EMS 485B | 8 |
19 | NC | |
20 | NC |
In Wechselrichtern wie dem Fox ESS H3 Pro sind TVS-Dioden typischerweise in den folgenden Bereichen integriert:
- DC-Eingänge: Schutz der Photovoltaik-Eingänge vor Überspannungen.
- Kommunikationsschnittstellen: Absicherung von RS485-, CAN- oder USB-Ports gegen elektrostatische Entladungen.
- AC-Ausgänge: Schutz der Netzanschlüsse vor transienten Überspannungen aus dem Stromnetz.
Und hier ein paar Nahaufnahmen Stecker Q.
Register Liste
Was schon mal gleich nervt ist die Verfuegbarkeit des Modbus Protocol und Register Dokuments der FOXESS H3 Pro Baureihe.
Bei FOX bin ich auf der Homepage nicht fuendig geworden, nur Scribd bietet es an.
Ab hier ein Transcript.
Die Tabellen dienen mir auch als Grundlage zum erstellen der XML/JSON-Dateien, die ich als Config fuer meine Programme [eigene Seite folgt] benutze.
Marked * are only supported by some models or standard codes.
Abkuerzungen
Terms and abbreviation definitions | |
---|---|
Name | Description |
master node | In master-slave communication, the party that actively initiates communication is called the master node. |
slave node | In master-slave communication, the party that passively responds to commands is called a slave node. |
broadcast address | Fixed to 0 |
Register address | The register address corresponds to a 2-byte message |
U16 | Unsigned 16-bit integer |
U32 | Unsigned 32-bit integer |
I16 | Signed 16-bit integer |
I32 | Signed 32-bit integer |
STR | string |
MLD | multibyte |
Bitfield16 | 16-bit wide bitwise representation of data |
Bitfield32 | 32-bit wide bitwise representation of data |
s | Second |
INV | inverter |
BMS | battery management system |
RO | Read-only data |
RW | Readable and writable data |
WO | Write data only |
Inverter Model
Inverter model definition table | ||||||||
---|---|---|---|---|---|---|---|---|
Serial number | Signal name | Read and write | Type | Unit | Gain | Address | Number | Scope |
1 | Model name | RO | STR | N/A | 1 | 30000 | 16 | |
2 | SN | RO | STR | N/A | 1 | 30016 | 16 | |
3 | MFG ID | RO | STR | N/A | 1 | 30032 | 16 | H3Pro15.0 not working!? |
localhost:~ # modbuspoll -v /dev/ttyUSB0 -1 -m rtu -a 1 -r 30001 -c 16 -t 4:string -b 9600 -d 8 -s 1 -P none debug enabled Set mode=rtu iGetIntList(1) Integer found: 1 iCount=1 iGetIntList(30001) Integer found: 30001 iCount=1 Set number of values=16 Set function=4 Set format=string Set rtu baudrate=9600 Set rtu data bits=8 Set rtu stop bits=1 Set rtu parity=none Set device=/dev/ttyUSB0 mbpoll 1.0-0 - ModBus(R) Master Simulator Copyright (c) 2015-2023 Pascal JEAN, https://github.com/epsilonrt/mbpoll This program comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under certain conditions; type 'mbpoll -w' for details. Opening /dev/ttyUSB0 at 9600 bauds (N, 8, 1) Set response timeout to 1 sec, 0 us Protocol configuration: ModBus RTU Slave configuration...: address = [1] start reference = 30001, count = 16 Communication.........: /dev/ttyUSB0, 9600-8N1 t/o 1.00 s, poll rate 1000 ms Data type.............: 16-bit register, output (holding) register table -- Polling slave 1... [01][03][75][30][00][10][5E][05] Waiting for a confirmation... <01><03><20><20><20><48><33><2D><50><72><6F><2D><31><35><2E><30><20><20><20><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00><62><9B> [30001]: [30002]: H3 [30003]: -P [30004]: ro [30005]: -1 [30006]: 5. [30007]: 0 [30008]: [30009]: [30010]: [30011]: [30012]: [30013]: [30014]: [30015]: [30016]:
Inverter Version
Inverter version definition table | ||||||||
---|---|---|---|---|---|---|---|---|
Serial number | Signal name | Read and write | Type | Unit | Gain | Address | Number | Scope |
4 | Master Version | RO | U16 | N/A | N/A | 36001 | 1 | |
5 | Slave Version | RO | U16 | N/A | N/A | 36002 | 1 | |
6 | Manager Version | RO | U16 | N/A | N/A | 36003 | 1 | |
7 | Meter1 SN | RO | STR | N/A | N/A | 36100 | 16 | |
8 | Meter1 MFG ID | RO | STR | N/A | N/A | 36116 | 16 | |
9 | Meter1 TYPE | RO | STR | N/A | N/A | 36132 | 16 | |
10 | Meter1 Version | RO | STR | N/A | N/A | 36148 | 1 | |
11 | Meter2 SN | RO | STR | N/A | N/A | 36200 | 16 | |
12 | Meter2 MFG ID | RO | STR | N/A | N/A | 36216 | 16 | |
13 | Meter2 TYPE | RO | STR | N/A | N/A | 36232 | 16 | |
14 | Meter2 Version | RO | STR | N/A | N/A | 36248 | 1 |
Batterie Register
Battery version definition table | ||||||||
---|---|---|---|---|---|---|---|---|
Serial number | Signal name | Read and write | Type | Unit | Gain | Address | Number | Scope |
15 | BMS1 Connection Status | RO | U16 | N/A | N/A | 37002 | 1 | 0: Offline 1: Online |
16 | BMS1 Master version | RO | U16 | N/A | N/A | 37003 | 1 | |
17 | BMS1 Master Control Type | RO | U16 | N/A | N/A | 37004 | 1 | |
18 | BMS1 Master Control SN | RO | STR | N/A | N/A | 37005 | 16 | |
19 | Number of BMS1 Slave Controls | RO | U16 | N/A | 1 | 37032 | 1 | Range: [0,32] 0: Does not exist |
20 | BMS1 Slave 1 version | RO | U16 | N/A | N/A | 37033 | 1 | Maximum support for 32 channels of slave control. The number of channels actually read by the host computer is in accordance with the number of channels defined in "BMS1 Number of Slaves". The corresponding version of each battery: 37033 + (n - 1), where n is the number of slaves in the range of [1, 32]. |
21 | BMS1 Slave 2 version | RO | U16 | N/A | N/A | 37034 | 1 | |
22 | BMS1 Slave 1 SN | RO | STR | N/A | N/A | 37097 | 16 | Maximum support for 32 channels of slave control. The number of channels actually read by the host computer is in accordance with the number of channels defined in "BMS1 Number of Slaves". The corresponding version of each battery: 37097 + (n - 1), where n is the number of slaves in the range of [1, 32]. Anmerkung: Hier scheint ein Fehler in der Beschreibung vorzuliegen. Die Bemerkung bezieht sich wohl eher auf Register 37034!? |
23 | BMS1 Slave 2 SN | RO | STR | N/A | N/A | 37113 | 16 | |
24 | BMS1 Voltage | RO | U16 | V | 10 | 37609 | 1 | |
25 | BMS1 Current | RO | I16 | A | 10 | 37610 | 1 | |
26 | BMS1 Ambient Temperature | RO | I16 | °C | 10 | 37611 | 1 | |
27 | BMS1 SOC | RO | U16 | % | 1 | 37612 | 1 | |
28 | BMS1 Max Temperature | RO | I16 | °C | 10 | 37617 | 1 | |
29 | BMS1 Min Temperature | RO | I16 | °C | 10 | 37618 | 1 | |
30 | BMS1 Max Cell Voltage | RO | U16 | mV | 1 | 37619 | 1 | |
31 | BMS1 Min Cell Voltage | RO | U16 | mV | 1 | 37620 | 1 | |
32 | BMS1 SOH | RO | U16 | % | 1 | 37624 | 1 | |
33 | BMS1 Fault1 | RO | Bitfield16 | N/A | N/A | 37626 | 1 | |
34 | BMS1 Fault2 | RO | Bitfield16 | N/A | N/A | 37627 | 1 | |
35 | BMS1 Fault3 | RO | Bitfield16 | N/A | N/A | 37628 | 1 | |
36 | BMS1 Fault4 | RO | Bitfield16 | N/A | N/A | 37629 | 1 | |
37 | BMS1 Fault5 | RO | Bitfield16 | N/A | N/A | 37630 | 1 | |
38 | BMS1 Fault6 | RO | Bitfield16 | N/A | N/A | 37631 | 1 | |
39 | BMS1 Remain Energy | RO | U16 | Wh | 0.1 | 37632 | 1 | |
40 | BMS1 FCC Capacity | RO | U16 | Ah | 10 | 37633 | 1 | |
41 | reserve | RO | U16 | N/A | N/A | 37634 | 1 | |
42 | BMS1 Design Energy | Ro | U16 | Wh | 0.1 | 37635 | 1 | |
43 | BMS1 Force to Change Battery Flag | RO | U16 | N/A | N/A | 37636 | 1 | Range:[0, 1] 0:Reset 1:Set Note: If set, pcs schould charge the battery until the status is reset. |
44 | BMS2 Connection Status | RO | U16 | N/A | N/A | 37700 | 1 | 0: Offline 1: Online |
45 | BMS2 Master version | RO | U16 | N/A | N/A | 37701 | 1 | |
46 | BMS2 Master Control Type | RO | U16 | N/A | N/A | 37702 | 1 | |
47 | BMS2 Master Control SN | RO | STR | N/A | N/A | 37703 | 16 | |
48 | Number BMS2 of Slave Controls | RO | U16 | N/A | 1 | 37730 | 1 | Slaves:[0,32] 0:Does not exist |
49 | BMS2 Slave 1 version | RO | U16 | N/A | N/A | 37731 | 1 | Maximum support for 32 channels of slave control. The number of channels actually read by the host computer is in accordance with the number of channels defined in "BMS2 Number of Slaves". The corresponding version of each battery: 37730 + (n -1), where n is the number of slaves in the range of [1, 32]. |
50 | BMS2 Slave 2 version | RO | U16 | N/A | N/A | 37732 | 1 | |
51 | BMS2 Slave 1 SN | RO | STR | N/A | N/A | 37795 | 16 | Maximum support for 32 channels of slave control. The number of channels actually read by the host computer is in accordance with the number of channels defined in "BMS1 Number of Slaves". The corresponding version of each battery: 37395 + 16* (n - 1), where n is the number of slaves in the range of [1, 32]. Anmerkung: Hier scheint ein Fehler in der Beschreibung vorzuliegen. Die Bemerkung bezieht sich wohl eher auf Register 37034!? |
52 | BMS2 Slave 2 SN | RO | STR | N/A | N/A | 37811 | 16 | |
53 | BMS2 Voltage | RO | U16 | V | 10 | 38307 | 1 | |
54 | BMS2 Current | RO | I16 | A | 10 | 38308 | 1 | |
55 | BMS2 AmbientTemperature | RO | I16 | °C | 10 | 38309 | 4 | |
56 | BMS2 SOC | RO | U16 | % | 1 | 38310 | 1 | |
57 | BMS2 Max Temperature | RO | I16 | °C | 10 | 38315 | 1 | |
58 | BMS2 Min Temperature | RO | I16 | °C | 10 | 38316 | 1 | |
59 | BMS2 Max Cell Voltage | RO | U16 | mV | 1 | 38317 | 1 | |
60 | BMS2 Min Cell Voltage | RO | U16 | mV | 1 | 38318 | 1 | |
61 | BMS2 SOH | RO | U16 | % | 1 | 38322 | 1 | |
62 | BMS2 Fault1 | RO | Bitfield16 | N/A | N/A | 38324 | 1 | |
63 | BMS2 Fault2 | RO | Bitfield16 | N/A | N/A | 38325 | 1 | |
64 | BMS2 Fault3 | RO | Bitfield16 | N/A | N/A | 38326 | 1 | |
65 | BMS2 Fault4 | RO | Bitfield16 | N/A | N/A | 38327 | 1 | |
66 | BMS2 Fault5 | RO | Bitfield16 | N/A | N/A | 38328 | 1 | |
67 | BMS2 Fault6 | RO | Bitfield16 | N/A | N/A | 38329 | 1 | |
68 | BMS2 Remain Energy | RO | U16 | Wh | 0.1 | 38330 | 1 | |
69 | BMS2 FCC Capacity | RO | U16 | Ah | 10 | 38331 | 1 | |
70 | reserve | RO | U16 | N/A | N/A | 38332 | 1 | |
71 | BMS1 Design Energy | Ro | U16 | Wh | 0.1 | 38333 | 1 | |
72 | BMS1 Force to Change | RO | U16 | Wh | 0.1 | 38334 | 1 | Range: [0, 1] 0: Reset 1: Set Note: If set, pcs schould charge the battery until the status is reset |
Meter Register
Register definition table | ||||||||
---|---|---|---|---|---|---|---|---|
Serial number | Signal name | Read and write | Type | Unit | Gain | Address | Number | Scope |
73 | Meter1/CT1 Connect State | RO | U16 | N/A | N/A | 38801 | 1 | 0:Disconnect 1:Connect |
74 | Meter1/CT1 R Phase Voltage (L1) | RO | I32 | V | 10 | 38802 | 2 | |
75 | Meter1/CT1 S Phase Voltage (L2) | RO | I32 | V | 10 | 38804 | 2 | |
76 | Meter1/CT1 T Phase Voltage (L3) | RO | I32 | V | 10 | 38806 | 2 | |
77 | Meter1/CT1 R Phase Current (L1) | RO | I32 | A | 1000 | 38808 | 2 | |
78 | Meter1/CT1 S Phase Current (L2) | RO | I32 | A | 1000 | 38810 | 2 | |
79 | Meter1/CT1 T Phase Current (L3) | RO | I32 | A | 1000 | 38810 | 2 | |
80 | Meter1/CT1 Combined Active Power | RO | I32 | W | 10 | 38814 | 2 | |
81 | Meter1/CT1 R Phase Active Power (L1) | RO | I32 | W | 10 | 38816 | 2 | |
82 | Meter1/CT1 S Phase Active Power (L2) | RO | I32 | W | 10 | 38818 | 2 | |
83 | Meter1/CT1 T Phase Active Power (L3) | RO | I32 | W | 10 | 38820 | 2 | |
84 | Meter1/CT1 Combined Reactive Power | RO | I32 | Var | 10 | 38822 | 2 | |
85 | Meter1/CT1 R Phase Reactive Power (L1) | RO | I32 | Var | 10 | 38824 | 2 | |
86 | Meter1/CT1 S Phase Reactive Power (L2) | RO | I32 | Var | 10 | 38826 | 2 | |
87 | Meter1/CT1 T Phase Reactive Power (L3) | RO | I32 | Var | 10 | 38828 | 2 | |
88 | Meter1/CT1 Combined Apparent Power | RO | I32 | VA | 10 | 38830 | 2 | |
89 | Meter1/CT1 R Phase Apparent Power (L1) | RO | I32 | VA | 10 | 38832 | 2 | |
90 | Meter1/CT1 S Phase Apparente Power (L2) | RO | I32 | VA | 10 | 38834 | 2 | |
91 | Meter1/CT1 T Phase Apparent Power (L3) | RO | I32 | VA | 10 | 38836 | 2 | |
92 | Meter1/CT1 Combined Power Factor | RO | I32 | N/A | 1000 | 38838 | 2 | |
93 | Meter1/CT1 R Phase Power Factor (L1) | RO | I32 | N/A | 1000 | 38840 | 2 | |
94 | Meter1/CT1 S Phase Power Factor (L2) | RO | I32 | N/A | 1000 | 38842 | 2 | |
95 | Meter1/CT1 T Phase Power Factor (L3) | RO | I32 | N/A | 1000 | 38844 | 2 | |
96 | Meter1/CT1 Freq | RO | I32 | Hz | 100 | 38846 | 2 | |
97 | Meter2/CT2 Connect State | RO | U16 | N/A | N/A | 38901 | 1 | 0:Disconnect 1:Connect |
98 | Meter2/CT2 R Phase Voltage (L1) | RO | I32 | V | 10 | 38902 | 2 | |
99 | Meter2/CT2 S Phase Voltage (L2) | RO | I32 | V | 10 | 38904 | 2 | |
100 | Meter2/CT2 T Phase Voltage (L3) | RO | I32 | V | 10 | 38906 | 2 | |
101 | Meter2/CT2 R Phase Current (L1) | RO | I32 | A | 1000 | 38908 | 2 | |
102 | Meter2/CT2 S Phase Current (L2) | RO | I32 | A | 1000 | 38910 | 2 | |
103 | Meter2/CT2 T Phase Current (L3) | RO | I32 | A | 1000 | 38910 | 2 | |
104 | Meter2/CT2 Combined Active Power | RO | I32 | W | 10 | 38914 | 2 | |
105 | Meter2/CT2 R Phase Active Power (L1) | RO | I32 | W | 10 | 38916 | 2 | |
106 | Meter2/CT2 S Phase Active Power (L2) | RO | I32 | W | 10 | 38918 | 2 | |
107 | Meter2/CT2 T Phase Active Power (L3) | RO | I32 | W | 10 | 38920 | 2 | |
108 | Meter1/CT1 Combined Reactive Power | RO | I32 | Var | 10 | 38922 | 2 | |
109 | Meter2/CT2 R Phase Reactive Power (L1) | RO | I32 | Var | 10 | 38924 | 2 | |
110 | Meter2/CT2 S Phase Reactive Power (L2) | RO | I32 | Var | 10 | 38926 | 2 | |
111 | Meter2/CT2 T Phase Reactive Power (L3) | RO | I32 | Var | 10 | 38928 | 2 | |
112 | Meter2/CT2 Combined Apparent Power | RO | I32 | VA | 10 | 38930 | 2 | |
113 | Meter2/CT2 R Phase Apparent Power (L1) | RO | I32 | VA | 10 | 38932 | 2 | |
114 | Meter2/CT2 S Phase Apparente Power (L2) | RO | I32 | VA | 10 | 38934 | 2 | |
115 | Meter2/CT2 T Phase Apparent Power (L3) | RO | I32 | VA | 10 | 38936 | 2 | |
116 | Meter2/CT2 Combined Power Factor | RO | I32 | N/A | 1000 | 38938 | 2 | |
117 | Meter2/CT2 R Phase Power Factor (L1) | RO | I32 | N/A | 1000 | 38940 | 2 | |
118 | Meter2/CT2 S Phase Power Factor (L2) | RO | I32 | N/A | 1000 | 38942 | 2 | |
119 | Meter2/CT2 T Phase Power Factor (L3) | RO | I32 | N/A | 1000 | 38944 | 2 | |
120 | Meter2/CT2 Freq | RO | I32 | Hz | 100 | 38946 | 2 |
MPPT und EPS
Register definition table | ||||||||
---|---|---|---|---|---|---|---|---|
Serial number | Signal name | Read and write | Type | Unit | Gain | Address | Number | Scope |
121 | Protocol Version | RO | U32 | N/A | N/A | 39000 | 2 | For example 0x01020304 indicates version V1.02.03.04 and the initial version is V1.01.00.00 |
122 | Model name | RO | STR | N/A | 1 | 39002 | 16 | |
123 | SN | RO | STR | N/A | 1 | 39018 | 16 | |
124 | PN | RO | STR | N/A | 1 | 39034 | 16 | |
125 | Model ID | RO | U16 | N/A | 1 | 39050 | 1 | |
126 | Number of strings | RO | U16 | N/A | 1 | 39051 | 1 | |
127 | Number of MPPTs | RO | U16 | N/A | 1 | 39052 | 1 | |
128 | Rated Power P(n) | RO | I32 | kW | 1000 | 39053 | 2 | |
129 | Maximum active power (Pmax) | RO | I32 | kW | 1000 | 39055 | 2 | |
130 | Maximum apparent value (Smax) | RO | I32 | kVA | 1000 | 39057 | 2 | |
131 | Maximum reactive power (Qmax, fed into the grid) | RO | I32 | kVar | 1000 | 39059 | 2 | |
132 | Maximum reactive power (Qmax, absorbed from the grid) | RO | 132 | kVar | 1000 | 39061 | 2 | |
133 | Status 1 | RO | Bitfield 16 | N/A | 1 | 39063 | 1 | BitO: Standby Bit1: Reserved Bit2: Operation Bit3: Reserved Bit4: Reserved Bit5: Reserved Bit6: Fault Bit7: Reserved |
134 | reserve | RO | Bitfield 16 | 39064 | 1 | |||
135 | Status 3 | RO | Bitfield 32 | N/A | 1 | 39065 | 2 | Bit0: Off-grid or not 0: Not off-grid 1: Off-grid |
136 | Alarm 1 | RO | Bitfield 16 | N/A | 1 | 39067 | 1 | Refer to 4.1 Alarm information |
137 | Alarm 2 | RO | Bitfield 16 | N/A | 1 | 39068 | 1 | Refer to 4.1 Alarm information |
138 | Alarm 3 | RO | Bitfield 16 | N/A | 1 | 39069 | 1 | Refer to 4.1 Alarm information |
139 | PV1 voltage | RO | I16 | V | 10 | 39070 | 1 | [Supports up to 24 channels of string information. The actual number of reading channels of the host computer is based on the number of channels defined by "number of strings". The actual corresponding voltage and current register addresses of each string are PVn voltage: 39070 + 2 * (n - 1), = PVn current: 39071 + 2 * (n— 1). Where n is the string number range is [1,24] |
140 | PV1 current | RO | 116 | A | 100 | 39071 | 1 | |
141 | PV2 voltage | RO | I16 | V | 10 | 39072 | 1 | |
142 | PV2 current | RO | 116 | A | 100 | 39073 | 1 | |
143 | PV3 voltage | RO | I16 | V | 10 | 39074 | 1 | |
144 | PV3 current | RO | 116 | A | 100 | 39075 | 1 | |
145 | PV4 voltage | RO | I16 | V | 10 | 39076 | 1 | |
146 | PV5 current | RO | 116 | A | 100 | 39077 | 1 | |
147 | Total PV input power | RO | I32 | kW | 1000 | 39118 | 2 | |
148 | reserve | RO | U16 | 39120 | 1 | |||
149 | reserve | RO | U16 | 39121 | 1 | |||
150 | reserve | RO | U16 | 39122 | 1 | |||
151 | Grid R phase voltage | RO | I16 | V | 10 | 39123 | 1 | |
152 | Grid S phase voltage | RO | I16 | V | 10 | 39124 | 1 | |
153 | Grid T phase voltage | RO | I16 | V | 10 | 39125 | 1 | |
154 | Inverter R current | RO | I32 | A | 1000 | 39126 | 2 | |
155 | Inverter S current | RO | I32 | A | 1000 | 39128 | 2 | |
156 | Inverter T current | RO | I32 | A | 1000 | 39130 | 2 | |
157 | reserve | RO | U32 | 39132 | 2 | |||
158 | Active power | RO | I32 | kW | 1000 | 39134 | 2 | |
159 | Reactive power | RO | I32 | kVar | 1000 | 39136 | 2 | |
160 | power factor | RO | I16 | N/A | 1000 | 39138 | 2 | |
161 | Grid frequency | RO | I16 | Hz | 100 | 39139 | 1 | |
162 | reserve | RO | U16 | 39140 | 2 | |||
163 | internal temperature | RO | I16 | °C | 10 | 30141 | 1 | |
164 | reserve | RO | U16 | 39142 | 1 | |||
165 | reserve | RO | U16 | 39143 | 1 | |||
166 | reserve | RO | U16 | 39144 | 1 | |||
167 | reserve | RO | U32 | 39145 | 2 | |||
168 | reserve | RO | U32 | 39147 | 2 | |||
169 | Cumulative powergeneration | RO | U32 | kWh | 100 | 39149 | 2 | |
170 | Power generation on the day | RO | U32 | kWh | 100 | 39151 | 2 | |
171 | reserve | RO | U16 | 39153 | 1 | |||
172 | reserve | RO | U32 | 39154 | 2 | |||
173 | reserve | RO | U16 | 39156 | 1 | |||
174 | reserve | RO | U16 | 39157 | 1 | |||
175 | reserve | RO | U32 | 39158 | 2 | |||
176 | reserve | RO | U16 | 39160 | 1 | |||
177 | reserve | RO | U16 | 39161 | 1 | |||
178 | [Energy storage module 1] Charge and discharge power * | RO | I32 | W | 1 | 39162 | 2 | > 0: charging < 0: discharging |
179 | reserve | RO | U32 | 39164 | 2 | |||
180 | reserve | RO | U32 | 39166 | 2 | |||
181 | [Meter collection] Active power * | RO | I32 | W | 1 | 39168 | 2 | > 0: Feed power to the grid < 0: Take power from the grid |
182 | reserve | RO | U16 | 39170 | 1 | |||
183 | reserve | RO | U16 | 39171 | 1 | |||
184 | reserve | RO | U16 | 39172 | 1 | |||
185 | reserve | RO | U16 | 39200 | 1 | |||
186 | EPS R Phase Voltage | RO | U16 | V | 10 | 39201 | 1 | |
187 | EPS S Phase Voltage | RO | U16 | V | 10 | 39202 | 1 | |
188 | EPS T Phase Voltage | RO | U16 | V | 10 | 39203 | 1 | |
189 | EPS R Phase Current | RO | I32 | A | 1000 | 39204 | 2 | |
190 | EPS S Phase Current | RO | I32 | A | 1000 | 39206 | 2 | |
191 | EPS T Phase Current | RO | I32 | A | 1000 | 39208 | 2 | |
192 | EPS R Phase Power | RO | I32 | W | 1 | 39210 | 2 | |
193 | EPS S Phase Power | RO | I32 | W | 1 | 39212 | 2 | |
194 | EPS T Phase Power | RO | I32 | W | 1 | 39214 | 2 | |
195 | EPS Combined Power | RO | I32 | W | 1 | 39216 | 2 | |
196 | EPS Frequency | RO | I16 | Hz | 100 | 39218 | 1 | |
197 | Load R Phase Power | RO | I32 | W | 1 | 39219 | 2 | |
198 | Load S Phase Power | RO | I32 | W | 1 | 39221 | 2 | |
199 | Load T Phase Power | RO | I32 | W | 1 | 39223 | 2 | |
200 | Load Combined Power | RO | I32 | W | 1 | 39225 | 2 | |
201 | Battery1 Voltage _ | RO | I16 | V | 10 | 39227 | 1 | |
202 | Battery1 Current _ | RO | I32 | A | 1000 | 39228 | 2 | |
203 | Battery1 Power _ | RO | I32 | W | 1 | 39230 | 2 | |
204 | Battery2 Voltage _ | RO | I16 | V | 10 | 39232 | 1 | |
205 | Battery2 Current _ | RO | I32 | A | 1000 | 39233 | 2 | |
206 | Battery2 Power _ | RO | I32 | W | 1 | 39235 | 2 | |
207 | Battery Combined Power | RO | I32 | W | 1 | 39237 | 2 | |
208 | reserve | RO | I16 | 39239 | 1 | |||
209 | reserve | RO | I16 | 39240 | 1 | |||
210 | reserve | RO | I16 | 39241 | 1 | |||
211 | reserve | RO | I32 | 39242 | 2 | |||
212 | reserve | RO | I32 | 39244 | 2 | |||
213 | reserve | RO | I32 | 39246 | 2 | |||
214 | INV R Phase Active Power | RO | I32 | W | 1 | 39248 | 2 | |
215 | INV S Phase Active Power | RO | I32 | W | 1 | 39250 | 2 | |
216 | INV T Phase Active Power | RO | I32 | W | 1 | 39252 | 2 | |
217 | reserve | RO | I32 | 39254 | 2 | |||
218 | INV R Phase Reactive Power | RO | I32 | VAr | 1 | 39256 | 2 | |
219 | INV S Phase Reactive Power | RO | I32 | VAr | 1 | 39258 | 2 | |
220 | INV T Phase Reactive Power | RO | I32 | VAr | 1 | 39260 | 2 | |
221 | reserve | RO | I32 | 39262 | 2 | |||
222 | INV R Phase A transparent Power | RO | I32 | VA | 1 | 39264 | 2 | |
223 | INV S Phase A transparent Power | RO | I32 | VA | 1 | 39266 | 2 | |
224 | INV T Phase A transparent Power | RO | I32 | VA | 1 | 39268 | 2 | |
225 | INV Combined A transparent Power | RO | I32 | VA | 1 | 39270 | 2 | |
226 | INV Frequency R | RO | I16 | Hz | 100 | 39272 | 1 | |
227 | INV Frequency S | RO | I16 | Hz | 100 | 39273 | 1 | |
228 | INV Frequency T | RO | I16 | Hz | 100 | 39274 | 1 | |
229 | Available Import Power | RO | I32 | W | 1 | 39275 | 2 | |
230 | Available Export Power | RO | I32 | W | 1 | 39277 | 2 | |
231 | PV1 Power | RO | I32 | W | 1 | 39279 | 2 | Maximum support for 24 channels of string information. The number of channels actually read by the host computer is in accordance with the number of channels defined by "number of strings". The voltage and current register corresponding to each string are as follows PVn Power: 39279 + 2 * (n - 1). Where n is the string number range is [1,24] |
232 | PV2 Power | RO | I32 | W | 1 | 39281 | 2 | |
233 | PV3 Power | RO | I32 | W | 1 | 39283 | 2 | |
234 | PV4 Power | RO | I32 | W | 1 | 39285 | 2 | |
235 | MPPT1 Voltage | RO | I16 | V | 10 | 39327 | 1 | A maximum of 24 strings are supported. The number of strings actually read by the host computer ist defined by the number of strings. The voltage and current register addresses corresponding to ecah string are: MPPTn Volt: 39327 + 4 * (n - 1) MPPTn Current: 39328 + 4 * (n - 1) MPPTn Power: 39329 + 4 * (n - 1) The range of the stringg number is [1,24] |
236 | MPPT1 Current | RO | I16 | A | 100 | 39328 | 1 | |
237 | MPPT1 Power | RO | I32 | W | 1 | 39329 | 2 | |
238 | MPPT2 Voltage | RO | I16 | V | 10 | 39327 | 1 | |
239 | MPPT2 Current | RO | I16 | A | 100 | 39328 | 1 | |
240 | MPPT2 Power | RO | I32 | W | 1 | 39329 | 2 | |
241 | MPPT3 Voltage | RO | I16 | V | 10 | 39327 | 1 | |
242 | MPPT3 Current | RO | I16 | A | 100 | 39328 | 1 | |
243 | MPPT3 Power | RO | I32 | W | 1 | 39329 | 2 |
PV
Register definition table | ||||||||
---|---|---|---|---|---|---|---|---|
Serial number | Signal name | Read and write | Type | Unit | Gain | Address | Number | Scope |
244 | reserve | RO | U16 | 39600 | 1 | |||
245 | PV total power | RO | U32 | kWh | 100 | 39601 | 2 | |
246 | PV total power today | RO | U32 | kWh | 100 | 39603 | 2 | |
247 | Total charging capacity | RO | U32 | kWh | 100 | 39605 | 2 | |
248 | Total charging capacity today | RO | U32 | kWh | 100 | 39607 | 2 | |
249 | Total discharge power | RO | U32 | kWh | 100 | 39609 | 2 | |
250 | Total discharge power today | RO | U32 | kWh | 100 | 39611 | 2 | |
251 | Total power of feeder network | RO | U32 | kWh | 100 | 39613 | 2 | |
252 | Total power of feeder network today | RO | U32 | kWh | 100 | 39615 | 2 | |
253 | Total power taken | RO | U32 | kWh | 100 | 39617 | 2 | |
254 | Total electricity consumption today | RO | U32 | kWh | 100 | 39619 | 2 | |
255 | Total power output | RO | U32 | kWh | 100 | 39621 | 2 | |
256 | Total power output today | RO | U32 | kWh | 100 | 39623 | 2 | |
257 | Total power enter | RO | U32 | kWh | 100 | 39625 | 2 | |
258 | Total power enter today | RO | U32 | kWh | 100 | 39627 | 2 | |
259 | Total power load | RO | U32 | kWh | 100 | 39629 | 2 | |
260 | Total power load today | RO | U32 | kWh | 100 | 39631 | 2 |
MISC
Register definition table | ||||||||
---|---|---|---|---|---|---|---|---|
Serial number | Signal name | Read and write | Type | Unit | Gain | Address | Number | Scope |
261 | reserve | WO | U16 | N/A | N/A | 45000 | 1 | |
262 | reserve | WO | U16 | N/A | N/A | 45001 | 1 | |
263 | Factory Reset | WO | U16 | N/A | N/A | 45002 | 1 | Range:[0,1] 0:Invalid 1:Active |
264 | Battery power active | WO | U16 | N/A | N/A | 45003 | 1 | Range:[0,1] 0:Invalid 1:Active Note: Only H3 Smart series ist supported. |
265 | reserve | WO | U16 | N/A | N/A | 45004 | 1 | |
266 | Battery power shutdown | WO | U16 | N/A | N/A | 45005 | 1 | Range:[0,1] 0:Invalid 1:Active Note: Only H3 Smart series ist supported. |
267 | Battery power ON/OFF | RO | U16 | N/A | N/A | 45006 | 1 | Range:[0,1] 0:OFF 1:ON |
268 | Battery Connect Enable | RW | U16 | N/A | N/A | 45007 | 1 | Range:[0,1] 0:Disable 1:Enable Note: Only H3 Smart series ist supported. |
REMOTE
Register definition table | ||||||||
---|---|---|---|---|---|---|---|---|
Serial number | Signal name | Read and write | Type | Unit | Gain | Address | Number | Scope |
269 | reserve | RO | U16 | 46000 | 1 | |||
270 | Remote Control | RW | Bitfield 16 | N/A | 1 | 46001 | 1 | Bit 0: Remote Control enable 0: Disable 1: Enable Bit 1: Definition for positive direction O: power-generation system 1: power-consumption system Bits 3:2 : Controlled target 00: AC 01: Battery 10: Grid (CT/Meter 11: AC (Grid first) Bits 15:4 Reserved |
271 | Timeout_ Set | RW | U16 | s | 1 | 46002 | 1 | |
272 | Remote Control Active Power Command | RW | I32 | W | 1 | 46003 | 2 | |
273 | Remote Control Reactive Power Command | RW | I32 | VAr | 1 | 46005 | 2 | |
273 | Remote Timeout Countdown | RO | U16 | s | 1 | 46007 | 1 | |
275 | Pwr_limit Bat_Up | RO | I32 | W | 1 | 46018 | 2 | |
275 | Pwr_limit Bat_Dn | RO | I32 | W | 1 | 46018 | 2 |
Limit/Timer
Register definition table | ||||||||
---|---|---|---|---|---|---|---|---|
Serial number | Signal name | Read and write | Type | Unit | Gain | Address | Number | Scope |
277 | reserve | RW | U16 | 46500 | 1 | |||
278 | Power Limit * | RW | 132 | W | 1 | 46501 | 2 | |
279 | Threshold SOc * | RW | U16 | % | 1 | 46503 | 1 | |
280 | ExportPeak Limit * | RW | I32 | W | 1 | 46504 | 2 | |
281 | ChrInLowImport * | RW | U16 | N/A | 1 | 46506 | 1 | |
282 | ChrInLowTime1-StartHour * | RW | U16 | N/A | 1 | 46507 | 1 | |
283 | ChrInLowTime1-StartMinute * | RW | U16 | N/A | 1 | 46508 | 1 | |
284 | ChrInLowTime1-EndHour * | RW | U16 | N/A | 1 | 46509 | 1 | |
285 | ChrInLowTime1-EndMinute * | RW | U16 | N/A | 1 | 46510 | 1 | |
286 | ChrInLowTime2-StartHour * | RW | U16 | N/A | 1 | 46511 | 1 | |
287 | ChrInLowTime2-StartMinute * | RW | U16 | N/A | 1 | 46512 | 1 | |
288 | ChrInLowTime2-EndHour * | RW | U16 | N/A | 1 | 46513 | 1 | |
289 | ChrInLowTime2-EndMinute * | RW | U16 | N/A | 1 | 46514 | 1 |
Limits
Register definition table | ||||||||
---|---|---|---|---|---|---|---|---|
Serial number | Signal name | Read and write | Type | Unit | Gain | Address | Number | Scope |
290 | reserve | RW | U16 | 46601 | 1 | |||
291 | reserve | RW | U16 | 46602 | 1 | |||
292 | reserve | RW | U16 | 46603 | 1 | |||
293 | reserve | RW | U16 | 46604 | 1 | |||
294 | reserve | RW | U16 | 46605 | 1 | |||
295 | reserve | RW | U16 | 46606 | 1 | |||
296 | Battery maximum charging current * | RW | I16 | A | 10 | 46607 | 1 | H3:[0,26] H3Pro:[0,50] KH:[0,50] H1:[0,40] H1-G2:[ 0,40] |
297 | Battery maximum discharge current * | RW | I16 | A | 10 | 46608 | 1 | H3:[0,26] H3Pro:[0,50] KH:[0,50] H1:[0,40] H1-G2:[ 0,40] |
298 | Minimum SoC * | RW | U16 | % | 1 | 46609 | 1 | [10,100] |
299 | Maximum SoC * | RW | U16 | % | 1 | 46610 | 1 | [10,100] |
300 | Minimum SoC OnGrid * | RW | U16 | % | 1 | 46611 | 1 | [10,100] |
301 | EPS Frequency Select * _ | RW | U16 | N/A | N/A | 46612 | 1 | 0:invalid 1:50Hz 2: 60Hz |
302 | EPS Oput * _ | RW | U16 | N/A | NA | 46613 | 1 | 0:Disable 2:EPS Mode 3:Ups Mode |
303 | Balance Load * | RW | U16 | N/A | NA | 46614 | 1 | O:Disable 1:Enable |
304 | Balance Logic First * | RW | U16 | N/A | NA | 46614 | 1 | O:Disable 1:Enable |
305 | Export Power Limit | RW | I32 | W | 1 | 46616 | 2 | [0,Pmax] |
306 | Import Current Limit | RW | 116 | A | 10 | 46618 | 1 | |
307 | Export Current Limit | RW | 116 | A | 10 | 46619 | 1 |
Add
Register definition table | ||||||||
---|---|---|---|---|---|---|---|---|
Serial number | Signal name | Read and write | Type | Unit | Gain | Address | Number | Scope |
308 | system time | RW | U32 | N/A | N/A | 49000 | 2 | [946684800,3155759999] local time |
309 | reserve | RW | U16 | 49002 | 1 | |||
310 | reserve | RW | U16 | 49003 | 1 | |||
311 | reserve | RW | U16 | 49004 | 1 | |||
312 | [Power Grid Scheduling ] None Power compensation (PF) | RW | I16 | N/A | 1000 | 49005 | 1 | [-1,-0.8] and [0.8, 1] |
313 | [Power Grid Scheduling] None Power compensation (Q/S) | RW | I16 | N/A | 1000 | 49006 | 1 | [-1.000,+1.000] The equipment end converts this value into a fixed value of Q for reactive power control; where S is Smax |
314 | [Power grid dispatch] Active power percentage derating (0.1%) | RW | I16 | % | 10 | 49007 | 1 | Active power fine adjustment interface |
315 | reserve | RW | U32 | 49008 | 2 | |||
316 | reserve | RW | U32 | 49010 | 2 | |||
317 | reserve | RW | MLD | 49012 | 21 | |||
318 | reserve | RW | MLD | 49033 | 21 | |||
319 | reserve | RW | MLD | 49054 | 21 | |||
320 | reserve | RW | U16 | 49075 | 1 | |||
321 | reserve | RW | U16 | 49076 | 1 | |||
322 | Power on | RW | U16 | N/A | N/A | 49077 | 1 | Range: [0,1] 0: invalid 1: valid Read the power on/off status and check the register at address 49228 |
323 | Shut down | RW | U16 | N/A | N/A | 49078 | 1 | Range: [0,1]0: invalid 1: valid Read the power on/off status and check the register at address 49228 |
324 | standard code | RW | U16 | N/A | N/A | 49079 | 1 | Reference 4.2 Power Grid Standard Code |
325 | reserve | RW | U32 | 49080 | 2 | |||
326 | reserve | RW | U32 | 49082 | 2 | |||
327 | reserve | RW | U32 | 49084 | 2 | |||
328 | reserve | RW | U16 | 49086 | 1 | |||
329 | reserve | RW | U16 | 49087 | 1 | |||
330 | reserve | RW | U16 | 49088 | 1 | |||
331 | reserve | RW | MLD | 49089 | 41 | |||
332 | reserve | RW | U32 | 49130 | 2 | |||
333 | reserve | RW | U32 | 49132 | 2 | |||
334 | reserve | RW | U32 | 49134 | 2 | |||
335 | Grid point power limit | RW | 132 | W | 1 | 49136 | 2 | [0, Pmax] Default value: Pmax |
336 | reserve | RW | U16 | 49138 | 4 | |||
337 | reserve | RW | U16 | 49139 | 1 | |||
338 | reserve | RW | U16 | 49140 | 1 | |||
339 | reserve | RW | U32 | 49141 | 2 | |||
340 | reserve | RW | MLD | 49143 | 41 | |||
341 | Work mode | RW | U16 | N/A | N/A | 49203 | 1 | 1:Self Use 2:Feedin Priority 3:BackUp 4:Peak Shaving 6:Force Charge 7:Force Discharge |
342 | DRM | RW | U16 | N/A | N/A | 49206 | 1 | 0: Disable 1: Enable (Only valid under Australian safety regulations) |
343 | Meter1/CT1 | RW | U16 | N/A | N/A | 49207 | 1 | 0:OFF 1:Meter 1-PHASE 2:CT 3:Meter 3-PHASE |
344 | Meter2/CT2 | RW | U16 | N/A | N/A | 49208 | 1 | 0:0FF 1:Meter 1-PHASE 2:CT 3:Meter 3-PHASE |
345 | BUZZER | RW | U16 | N/A | N/A | 49209 | 1 | 0: Disable 1: Enable |
346 | MPPT Switch | RW | U16 | N/A | N/A | 49210 | 1 | 0: Disable 4: Enable |
347 | Relay 1 Switch | RW | U16 | N/A | N/A | 49211 | 1 | O:Disable 1:Enable |
348 | Relay 2 Switch | RW | U16 | N/A | N/A | 49212 | 1 | O:Disable 1:Enable |
349 | Brightness Level | RW | U16 | % | 1 | 49221 | 1 | 0-100%“ |
350 | Year | RW | U16 | N/A | 1 | 49222 | 1 | 2000-2099 |
351 | Month | RW | U16 | N/A | 1 | 49223 | 1 | 1-12 |
352 | Day | RW | U16 | N/A | 1 | 49224 | 1 | 1-31 |
353 | Hour | RW | U16 | N/A | 1 | 49225 | 1 | 0-23 |
354 | Minute | RW | U16 | N/A | 1 | 49226 | 1 | 0-59 |
355 | Second | RW | U16 | N/A | 1 | 49227 | 1 | 0-59 |
356 | System Power State | RO | U16 | N/A | 1 | 49228 | 1 | 0: Turn OFF 1:Turn ON |
357 | Idle State | RW | U16 | N/A | 1 | 49229 | 1 | O: Disable 1: Enable |
358 | Idle Loadpower Threshold | RW | U16 | W | 1 | 49230 | 1 | Range: H3: 100~200 H3Pro: 100~600 |
359 | Clear Count Idle | WO | U16 | N/A | N/A | 49231 | 1 | 0:Clear Idle Count |
360 | Key Password | RW | STR | N/A | 1 | 49232 | 8 | |
361 | Network status | RO | U16 | N/A | 1 | 49240 | 1 | 0:Not connected 1:Disconnection 2: Connection |
362 | Ripple Control Enable | RW | U16 | N/A | 1 | 49241 | 1 | 0:Disable 1:Enable |
363 | Trigger Signal | RO | U16 | N/A | 1 | 49242 | 11 | BitO: K1 status Bit1: K2 status Bit2: K3 status Bit3: K4 status |
364 | K1 Power Ratio | RW | U16 | % | 1 | 49243 | 1 | Range:[0, 100] |
365 | K2 Power Ratio | RW | U16 | % | 1 | 49244 | 1 | Range:[0, 100] |
366 | K3 Power Ratio | RW | U16 | % | 1 | 49245 | 1 | Range:[0, 100] |
Die Testabfrage liefert korrekt das Jahr (20)25.
localhost:/home/tibb # modbuspoll -v /dev/ttyUSB0 -B -1 -m rtu -a 1 -r 49223 -c 1 -t 4:int16 -b 9600 -d 8 -s 1 -P none debug enabled Set mode=rtu iGetIntList(1) Integer found: 1 iCount=1 iGetIntList(49223) Integer found: 49223 iCount=1 Set number of values=1 Set function=4 Set format=int16 Set rtu baudrate=9600 Set rtu data bits=8 Set rtu stop bits=1 Set rtu parity=none Set device=/dev/ttyUSB0 mbpoll 1.0-0 - ModBus(R) Master Simulator Copyright (c) 2015-2023 Pascal JEAN, https://github.com/epsilonrt/mbpoll This program comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under certain conditions; type 'mbpoll -w' for details. Opening /dev/ttyUSB0 at 9600 bauds (N, 8, 1) Set response timeout to 1 sec, 0 us Protocol configuration: ModBus RTU Slave configuration...: address = [1] start reference = 49223, count = 1 Communication.........: /dev/ttyUSB0, 9600-8N1 t/o 1.00 s, poll rate 1000 ms Data type.............: 16-bit register, output (holding) register table -- Polling slave 1... [01][03][C0][46][00][01][59][DF] Waiting for a confirmation... <01><03><02><00><19><79><8E> [49223]: 25
Energiepfade
Grid
DRM
DRM Demand Response Mode
DRM0 steht für "Demand Response Mode 0" und ist Teil eines Systems, das es Netzbetreibern ermöglicht, die Einspeiseleistung von Photovoltaikanlagen zu steuern. Dies geschieht oft über einen Funk-Rundsteuerempfänger (FRE), der Signale an den Wechselrichter sendet, um die Einspeiseleistung zu reduzieren oder ganz zu unterbrechen.
Der Fox ESS H3 Pro Wechselrichter verfügt über einen DRM-Anschluss, an dem externe Steuerungssignale anliegen können. Insbesondere ist Pin 17 für das DRM0-Signal vorgesehen. Wenn ein externer FRE ein Signal sendet, das den Kontakt zwischen DRM0 (Pin 17) und einem der anderen DRM-Pins (z. B. DRM1, DRM2, DRM3) herstellt, erkennt der Wechselrichter dies und passt seine Einspeiseleistung entsprechend an.
Die verschiedenen DRM-Pins (siehe Kommunikation) entsprechen dabei unterschiedlichen Leistungsstufen:
DRM1: 100 % Einspeiseleistung DRM2: 60 % Einspeiseleistung DRM3: 30 % Einspeiseleistung DRM4: 0 % Einspeiseleistung
Wenn beispielsweise DRM0 mit DRM2 verbunden wird, reduziert der Wechselrichter seine Einspeiseleistung auf 60 %.
Was bedeutet DRM0state?
Der Begriff DRM0state bezeichnet den aktuellen Status des DRM0-Eingangs. Er gibt an, ob und welche Verbindung zwischen DRM0 und den anderen DRM-Pins besteht, und somit, welche Einspeiseleistung der Wechselrichter aktuell ausführt.
Kommunikation
Stromzaehler
Im Lieferumfang des FOX ESS Wechselrichters ist ein Stromzaehler der Marke Chint DTSU666 (nicht wie im Manual steht DDSU 666).
DDSU666 = für 1 Phase DTSU666 = für 3 Phasen
Technisch sind sie sich aehnlich (z. B. beide haben Modbus RS485), aber sie unterscheiden sich in der Anzahl der Phasen, die sie messen können. [1]
Anzeige
Legende (Kopfzeile):
- III
- V
- Σ Summe
- Imp. Import NetzBezug
- Exp. Export Netzeinspeisung
- T
- 8
- NO. Modbus-RTU Adresse = 001, Baudrate = 9600, keine Paritaet, 1 Stopbit
- TIME
- (U)
- (I)
- Phone Ein Blinken zeigt Kommunikation uerb den RS485-Bus an.
Legende (Seite):
- kM kilo oder Mega
- VVAh Watt Ampere Stunden Das VV ist etwas ungluecklich und soll eigentlich ein W sein!
- varh Voltampere Reaktiv Stunden
Zusaetzlich koennen noch die ersten 7-Segment-Ziffern zur Anzeige von Buchstaben verwendet werden.
- UA Spannung Phase A (Phase 1)
- Ub Spannung Phase B (Phase 2)
- UC Spannung Phase C (Phase 3)
- IA Strom Phase A (Phase 1)
- Ib Strom Phase B (Phase 2)
- IC Strom Phase C (Phase 3)
- Pt kombinierte Phasenwirkleistung
- PA Phasenwirkleistung Phase A (Phase 1)
- Pb Phasenwirkleistung Phase B (Phase 2)
- PC Phasenwirkleistung Phase C (Phase 3)
- Ft Leistungsfaktor in einer kombinierten Phasenanlage
- FA Leistungsfaktor Phase A (Phase 1)
- Fb Leistungsfaktor Phase B (Phase 2)
- FC Leistungsfaktor Phase C (Phase 3)
Programmierparameter:
- Ct 1-9999 Stromadapter-Uebersetzungsverhaeltnis, bei Direktmessung = 1
- Pt 0.1-999.9 Spannungtransformator-Uebersetzungsverhaeltnis, bei Direktmessung = 1.0
- Prot 1-5 Kommunikationsparameter (Stop und Parity) 1: 645 Mode; 2: keine Paritaet, 2 Stop Bits n.2; 3: keine Paritaet, 1 Stop Bit n.1; 4: gerade Paritaet, 1 Stop Bit, E.1; 5 ungerade Paritaet, 1 Stop Bit, O.1
- bAud 0:1200; 1:2400; 2:4800; 3:9600; 4:19.200 bps
- Addr 1-247
- nEt 0: n.34 3-Phasen vier Leitungen; 1: n.33 3-Phasen drei Leitungen
- CLr.E 0:n0; 1:E 1 loesche Energie
- PLuS 0:P; 1:Q; 2:? 0: Puls bei Wirkenergie 1: Puls bei Blindenergie 2: Andere?
- dISP 0-30 Zeitintervall der Anzeige in Sekunden
- b.LCd 0-30 Hintergrundbeleuchtung der Anzeige in Sekunden
Das Passwort lautet 701
RS485
Standardmaeszig ist beim Modbus-RTU-Protokoll als Baudrate 9600 bps Paritaet 1 Stopbit (n.1) und die Adresse 1 eingestellt.
Das Modbus-RTU Lesekommando ist 03H und das Schreibkommando 10H.
Parameter address | Parameter code | Instructions of parameters | Data type | Data length Word | Read/Write |
Settings | |||||
0000H | REV. | Software Version | Signed | 1 | R |
0001H | UCode | Programming code codE(1~9999) | Signed | 1 | R/W |
0002H | CLr.E | Energy reset CLr.E(1:energy clear) | Signed | 1 | R/W |
0003H | net | Network selection (0:three phase four wire,1:three phase three wire) | Signed | 1 | R/W |
0006H | IrAt | Current transformer rate IrAt(1~9999) | Signed | 1 | R/W |
0007H | UrAt | Voltage transformer rate UrAt(*) (1~9999 represents voltage ratio 0.1~999.9) | Signed | 1 | R/W |
000AH | Disp | Rotating display time(s) | Signed | 1 | R/W |
000BH | B.LCD | Backlight time control(m) | Signed | 1 | R/W |
000CH | Endian | Reserve | Signed | 1 | R/W |
002CH 44D | Protocol | Protocol switching (1:DL/T645; 2:n.2; 3:n.1; 4:E.1; 5:o.1) | Signed | 1 | R/W |
002DH 45D | bAud | Communication baud rate bAud (0:1200; 1:2400; 2:4800; 3:9600;) | Signed | 1 | R/W |
002EH 46D | Addr | Communication address Addr(1~247) | Signed | 1 | R/W |
Electricity data | |||||
2000H 8192D | Uab | Three phase line voltage data, Unit V(×0.1V) | float | 2 | R |
2002H | Ubc | float | 2 | R | |
2004H | Uca | float | 2 | R | |
2006H | Ua | Three phase phase voltage data, Unit V V(×0.1V)(Invalid for three phase three wire) | float | 2 | R |
2008H | Ub | float | 2 | R | |
200AH | Uc | float | 2 | R | |
200CH | Ia | Three phase current data, Unit A(×0.001A) | float | 2 | R |
200EH | Ib | float | 2 | R | |
2010H | Ic | float | 2 | R | |
2012H | Pt | Combined active power, Unit W(×0.1W) | float | 2 | R |
2014H | Pa | A phase active power, Unit W(×0.1W) | float | 2 | R |
2016H | Pb | B phase active power, Unit W(×0.1W)(Invalid for three phase three wire) | float | 2 | R |
2018H | Pc | C phase active power, Unit W(×0.1W) | float | 2 | R |
201AH | Qt | Combined reactive power, Unit var(×0.1var) | float | 2 | R |
201CH | Qa | A phase reactive power, Unit var(×0.1var) | float | 2 | R |
201EH | Qb | B phase reactive power, Unit var(×0.1var) (Invalid for three phase three wire) | float | 2 | R |
2020H | Qc | C phase reactive power, Unit var(×0.1var) | float | 2 | R |
202AH | PFt | Combined power factor(positive number: inductive,negative number:capacitive) (×0.001) | float | 2 | R |
202CH | PFa | A phase power factor(positive number: inductive,negative number:capacitive) (Invalid for three phase three wire) (×0.001) | float | 2 | R |
202EH | PFb | B phase power factor(positive number: inductive,negative number:capacitive) (Invalid for three phase three wire) (×0.001) | float | 2 | R |
2030H | PFc | C phase power factor(positive number: inductive,negative number:capacitive) (Invalid for three phase three wire) (×0.001) | float | 2 | R |
2044H | Freq | Frequency, Unit Hz(×0.01Hz) | float | 2 | R |
Energy data | |||||
101EH | ImpEp | (current)Total Forward active energy(kWh) | float | 2 | R |
1020H | ImpEpA | (current)A Forward active energy(kWh) | float | 2 | R |
1022H | ImpEpB | (current)B Forward active energy(kWh) | float | 2 | R |
1024H | ImpEpC | (current)C Forward active energy(kWh) | float | 2 | R |
1026H | NetImpEp | (current)Net Forward active energy(kWh) | float | 2 | R |
1028H | ExpEp | (current)Total Reverse active energy(kWh) | float | 2 | R |
102AH | ExpEp A | (current)A Reverse active energy(kWh) | float | 2 | R |
102CH | ExpEp B | (current)B Reverse active energy(kWh) | float | 2 | R |
102EH | ExpEp C | (current)C Reverse active energy(kWh) | float | 2 | R |
1030H | NetExpEp | (current)Net Reverse active energy(kWh) | float | 2 | R |
Sniffing
MODBUS RTU Kommunikation Chint DSU666
Geschwindgkeit: 1200 bps, 2400 bps, 4800 bps und 9600 bps Parameter (default): 9600N1 Adresse (default): 1 MODBUS RTU read command: 0x03 MODBUS RTU read command: 0x10
Tools
Eine recht gute Erlaeuterung findet sich hier, vor allem wegen der Beispiel-Frames. Wenn man erst mal den Aufbau der Frames verstanden hat ist das Abfragen der Register ein Kinderspiel.
Von diesen Tools gibt es unzaehlige. Ich probiere einfach mal durch.
MODBUSTOOL
Das Programm laesst sich leicht in Betrieb nehmen (msi Download) macht auch das was es soll hat aber noch ein paar kleine Bugs/Schoenheitsfehler.
- Die Reiter des Registerfensters machen irgendwie was wollen.
- Die Connect paar mit dem Adapter (siehe Foto) problemlos moeglich.
- Der Vollstaendigkeit wegen hatte ich auf die Functions-Buttons noch die Function-Codes draufgeschrieben.
- Die Zahl hinter dem Poll, soll wohl die Anzahl der Wiederholungen angeben.
- Die Startadresse sollte auch in HEX moeglich sein.
- Unglueckliches Fensterformat. Mein ServiceNotebook (Panasonic Toughbook CF-52) hat nur eine Aufloesung von 1280x800, dadurch ist der Communication Log ohne scrollen nicht sichtbar.
Beispielhaft sieht man jetzt hier das Ergebnis (3,3,1) die Abfrage (Read holding register) der Adressen 44, 46 und 47. Das sind die eingestelten Kommunikationparameter (siehe Tabelle oben).
MinimalMODBUS
[5] Dient einer Domoticz Integration und ist in Python geschrieben. Da kann ich bestimmt was uebernehmen.
Chipkin
Auf der Seite gibt es auch ein PDF Modbus for Field Technicians zum herunterladen.
QModBus
Unsaegliches Tool! Egal was ich probiere: Not configured! Auf dem gleichen Rechner und Interface laeuft mbpoll (s. u.) schmerzfrei!
QModBus EDC Electronic Design Chemnitz GmbH
Chemnitz! Ich koennte ja jetzt boese sein.
mbpoll
Als erstes habe ich mal einen Softlink auf modbuspoll erzeugt.
Mit
modbuspoll -v /dev/ttyUSB0 -m rtu -a 1 -r 8193 -c 2 -t 3:hex -b 9600 -d 8 -s 1 -P none
konnte ich problemlos den aktuellen Spannungswert von L1 abrufen.
localhost:~ # modbuspoll -v /dev/ttyUSB0 -m rtu -a 1 -r 8193 -c 2 -t 3:hex -b 9600 -d 8 -s 1 -P none
debug enabled
Set mode=rtu
iGetIntList(1)
Integer found: 1
iCount=1
iGetIntList(8193)
Integer found: 8193
iCount=1
Set number of values=2
Set function=3
Set format=hex
Set rtu baudrate=9600
Set rtu data bits=8
Set rtu stop bits=1
Set rtu parity=none
Set device=/dev/ttyUSB0
mbpoll 1.0-0 - ModBus(R) Master Simulator
Copyright (c) 2015-2023 Pascal JEAN, https://github.com/epsilonrt/mbpoll
This program comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to redistribute it
under certain conditions; type 'mbpoll -w' for details.
Opening /dev/ttyUSB0 at 9600 bauds (N, 8, 1)
Set response timeout to 1 sec, 0 us
Protocol configuration: ModBus RTU
Slave configuration...: address = [1]
start reference = 8193, count = 2
Communication.........: /dev/ttyUSB0, 9600-8N1
t/o 1.00 s, poll rate 1000 ms
Data type.............: 16-bit register, input register table
-- Polling slave 1... Ctrl-C to stop)
[01][04][20][00][00][02][7A][0B]
Waiting for a confirmation...
<01><04><04><45><7E><20><00><97><50>
[8193]: 0x457E
[8194]: 0x2000
-- Polling slave 1... Ctrl-C to stop)
[01][04][20][00][00][02][7A][0B]
Waiting for a confirmation...
<01><04><04><45><7E><30><00><9A><90>
[8193]: 0x457E
[8194]: 0x3000
-- Polling slave 1... Ctrl-C to stop)
[01][04][20][00][00][02][7A][0B]
Waiting for a confirmation...
<01><04><04><45><7E><20><00><97><50>
[8193]: 0x457E
[8194]: 0x2000
^C--- /dev/ttyUSB0 poll statistics ---
3 frames transmitted, 3 received, 0 errors, 0.0% frame loss
everything was closed.
Jetzt stell sich die Frage: Wie bekomme ich aus den beiden HEX-Werten (jeweils 16 BIT) einen Float-Wert nach IEEE 754?
Big-Endian Word Order, aber Little-Endian Byte Order pro Word
Im obigen Beispiel also 0x457E3000 bzw. 0x457E2000
EMS
Energy Management System
WLAN
Protokoll-Mitschnitt der Kommunikation zur FOX Cloud
Der WLAN-Stick hat hier die IP 192.168.188.20 und die FOX Cloud 47.254.142.98.
37 21.282294 47.254.142.98 192.168.188.20 TCP 54 [TCP Keep-Alive] 14431 → 61779 [ACK] Seq=0 Ack=146 Win=65535 Len=0 38 21.332376 192.168.188.20 47.254.142.98 TCP 60 [TCP Keep-Alive ACK] 61779 → 14431 [ACK] Seq=146 Ack=1 Win=4921 Len=0 64 36.382127 47.254.142.98 192.168.188.20 TCP 54 [TCP Keep-Alive] 14431 → 61779 [ACK] Seq=0 Ack=146 Win=65535 Len=0 65 36.434026 192.168.188.20 47.254.142.98 TLSv1.2 582 Application Data 66 36.435871 192.168.188.20 47.254.142.98 TCP 60 [TCP Keep-Alive ACK] 61779 → 14431 [ACK] Seq=674 Ack=1 Win=4921 Len=0 67 36.457205 47.254.142.98 192.168.188.20 TCP 54 14431 → 61779 [ACK] Seq=1 Ack=674 Win=65535 Len=0 68 36.598810 192.168.188.20 47.254.142.98 TLSv1.2 199 Application Data 69 36.621039 47.254.142.98 192.168.188.20 TCP 54 14431 → 61779 [ACK] Seq=1 Ack=819 Win=65535 Len=0 70 36.791730 192.168.188.20 47.254.142.98 TLSv1.2 225 Application Data 71 36.814668 47.254.142.98 192.168.188.20 TCP 54 14431 → 61779 [ACK] Seq=1 Ack=990 Win=65535 Len=0 72 37.617951 192.168.188.20 47.254.142.98 TLSv1.2 832 Application Data 73 37.641783 47.254.142.98 192.168.188.20 TCP 54 14431 → 61779 [ACK] Seq=1 Ack=1768 Win=65535 Len=0 77 38.182285 192.168.188.20 47.254.142.98 TLSv1.2 582 Application Data 78 38.205860 47.254.142.98 192.168.188.20 TCP 54 14431 → 61779 [ACK] Seq=1 Ack=2296 Win=65535 Len=0 98 49.301208 192.168.188.20 224.0.0.251 IGMPv2 60 Membership Report group 224.0.0.251 106 53.213447 47.254.142.98 192.168.188.20 TCP 54 [TCP Keep-Alive] 14431 → 61779 [ACK] Seq=0 Ack=2296 Win=65535 Len=0 107 53.281337 192.168.188.20 47.254.142.98 TCP 60 [TCP Keep-Alive ACK] 61779 → 14431 [ACK] Seq=2296 Ack=1 Win=4921 Len=0 132 68.346405 192.168.188.20 47.254.142.98 TLSv1.2 199 Application Data 133 68.369342 47.254.142.98 192.168.188.20 TCP 54 14431 → 61779 [ACK] Seq=1 Ack=2441 Win=65535 Len=0 158 83.489635 47.254.142.98 192.168.188.20 TCP 54 [TCP Keep-Alive] 14431 → 61779 [ACK] Seq=0 Ack=2441 Win=65535 Len=0 159 83.592026 192.168.188.20 47.254.142.98 TCP 60 [TCP Keep-Alive ACK] 61779 → 14431 [ACK] Seq=2441 Ack=1 Win=4921 Len=0 185 98.351076 192.168.188.20 47.254.142.98 TLSv1.2 199 Application Data 186 98.373988 47.254.142.98 192.168.188.20 TCP 54 14431 → 61779 [ACK] Seq=1 Ack=2586 Win=65535 Len=0 209 113.437997 47.254.142.98 192.168.188.20 TCP 54 [TCP Keep-Alive] 14431 → 61779 [ACK] Seq=0 Ack=2586 Win=65535 Len=0 210 113.497233 192.168.188.20 47.254.142.98 TCP 60 [TCP Keep-Alive ACK] 61779 → 14431 [ACK] Seq=2586 Ack=1 Win=4921 Len=0 237 128.346328 192.168.188.20 47.254.142.98 TLSv1.2 199 Application Data 238 128.368624 47.254.142.98 192.168.188.20 TCP 54 14431 → 61779 [ACK] Seq=1 Ack=2731 Win=65535 Len=0 261 143.390178 47.254.142.98 192.168.188.20 TCP 54 [TCP Keep-Alive] 14431 → 61779 [ACK] Seq=0 Ack=2731 Win=65535 Len=0 262 143.497762 192.168.188.20 47.254.142.98 TCP 60 [TCP Keep-Alive ACK] 61779 → 14431 [ACK] Seq=2731 Ack=1 Win=4921 Len=0 288 158.348604 192.168.188.20 47.254.142.98 TLSv1.2 199 Application Data 289 158.371481 47.254.142.98 192.168.188.20 TCP 54 14431 → 61779 [ACK] Seq=1 Ack=2876 Win=65535 Len=0 319 173.598273 47.254.142.98 192.168.188.20 TCP 54 [TCP Keep-Alive] 14431 → 61779 [ACK] Seq=0 Ack=2876 Win=65535 Len=0 320 173.704904 192.168.188.20 47.254.142.98 TCP 60 [TCP Keep-Alive ACK] 61779 → 14431 [ACK] Seq=2876 Ack=1 Win=4921 Len=0 345 188.348083 192.168.188.20 47.254.142.98 TLSv1.2 199 Application Data 346 188.370425 47.254.142.98 192.168.188.20 TCP 54 14431 → 61779 [ACK] Seq=1 Ack=3021 Win=65535 Len=0 369 203.549679 47.254.142.98 192.168.188.20 TCP 54 [TCP Keep-Alive] 14431 → 61779 [ACK] Seq=0 Ack=3021 Win=65535 Len=0 370 203.609968 192.168.188.20 47.254.142.98 TCP 60 [TCP Keep-Alive ACK] 61779 → 14431 [ACK] Seq=3021 Ack=1 Win=4921 Len=0 396 218.347071 192.168.188.20 47.254.142.98 TLSv1.2 199 Application Data 397 218.369640 47.254.142.98 192.168.188.20 TCP 54 14431 → 61779 [ACK] Seq=1 Ack=3166 Win=65535 Len=0 422 233.501986 47.254.142.98 192.168.188.20 TCP 54 [TCP Keep-Alive] 14431 → 61779 [ACK] Seq=0 Ack=3166 Win=65535 Len=0 423 233.612659 192.168.188.20 47.254.142.98 TCP 60 [TCP Keep-Alive ACK] 61779 → 14431 [ACK] Seq=3166 Ack=1 Win=4921 Len=0 448 248.348031 192.168.188.20 47.254.142.98 TLSv1.2 199 Application Data 449 248.370634 47.254.142.98 192.168.188.20 TCP 54 14431 → 61779 [ACK] Seq=1 Ack=3311 Win=65535 Len=0 472 263.457827 47.254.142.98 192.168.188.20 TCP 54 [TCP Keep-Alive] 14431 → 61779 [ACK] Seq=0 Ack=3311 Win=65535 Len=0 473 263.510344 192.168.188.20 47.254.142.98 TCP 60 [TCP Keep-Alive ACK] 61779 → 14431 [ACK] Seq=3311 Ack=1 Win=4921 Len=0 499 278.351477 192.168.188.20 47.254.142.98 TLSv1.2 199 Application Data 500 278.374621 47.254.142.98 192.168.188.20 TCP 54 14431 → 61779 [ACK] Seq=1 Ack=3456 Win=65535 Len=0eport group 224.0.0.251