100% found this document useful (1 vote)
22 views

APL Modbus-Protocol 12 220705 en

APL_Modbus-Protocol

Uploaded by

zzasss
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
22 views

APL Modbus-Protocol 12 220705 en

APL_Modbus-Protocol

Uploaded by

zzasss
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

Modbus Protocol

blueplanet 3.0-10.0 TL3


blueplanet 15.0-20.0 TL3
blueplanet 50.0-60.0 TL3
Powador 39.0-72.0 TL3
blueplanet 87.0-165 TL3

Application Note
EN-US

Application Note

Modbus Protocol

Table of contents
1 General information ..................................................... 3
1.1 Scope...................................................................... 3
1.2 More information .................................................. 3
1.3 Target group........................................................... 4

2 Register Map ................................................................ 4


2.1 Scaling factors ........................................................ 4
2.2 SunSpec register map ............................................ 4
2.3 Adress calculation example.................................... 5
2.3.1 Example........................................................ 6

3 Register description...................................................... 7
3.1 Common Block (Device ID001)............................... 7

4 FAQ .............................................................................. 8

Page ii Modbus Protocol blueplanet 3.0-10.0 TL3 blueplanet 15.0-20.0 TL3 blueplanet 50.0-60.0 TL3 Powador
39.0-72.0 TL3 blueplanet 87.0-165 TL3
1 General information

EN-US
1.1 Scope
This document describes the general aspects of the MODBUS protocol of the KACO string and battery inverter series. The
inverters support a subset of data models according to the SunSpec specification. For a detailed description of particular
models refer to [8]. In this document the supported subset is highlighted.
Besides that KACO supports some vendor specific models which will be described in [9].
Supported MODBUS protocols (legacy devices with local GUI)
ž Modbus-TCP/UDP
Supported MODBUS protocols (new devices with dedicated web interface)
ž Modbus-TCP/UDP
Supported Inverter Model
ž blueplanet TL1/TL3-Serie
ž blueplanet TL3-S-Serie
ž Powador TL3-Serie
Supported SW Version
Inverter family Firmware V. Supported Models Device ID
blueplanet 3.0– V2.02 till 3.1x Read only inverter models 001, 102, 103
10.0 TL3; V3.22 till V3.xy 001, 102, 103, 122, 123
blueplanet
V4.00 till V 4.xy 001, 102, 103, 112, 113, 122, 123, 129, 130, 135, 136, 160
15.0-20.0 TL3;
blueplanet
V5.00 till V 5.xy 001, 102, 103, 112, 113, 120, 121, 122, 123, 126, 129, 130, 132, 135, 136, 160
50.0-60.0 TL3
V1.00 till V 1.xy 001, 103, 113, 120, 121, 122, 123, 126, 129, 130, 132, 135, 136, 160
blueplanet
V2.00 till V 2.xy 001, 103, 113, 120, 121, 122, 123, 126, 129, 130, 132, 135, 136, 160
87.0-165 TL3
V3.00 till V3.xy 001, 103, 113, 120, 121, 122, 123, 126, 129, 130, 132, 135, 136, 145, 160
V2.10 till V2.xy Read only inverter models 001, 102, 103
V3.00 till V3.xy 001, 102, 103, 122, 123
Powador
39.0-72.0 TL3 V4.00 till V4.xy 001, 102, 103, 122, 123, 112, 113, 129, 130, 135, 136, 160
001, 102, 103, 122, 123, 112, 113, 120, 121, 122, 123, 126, 129, 130, 132, 135, 136,
V5.00 till V5.xy
160
Tab. 1: Supported SW Version
To see all supported models and registers of this software version, see the attached excel charts.

1.2 More information


Modbus Organization
[1] http://www.modbus.org
[2] Modbus_Application_Protocol_V1_1b3.pdf
[3] Modbus_Messaging_Implementation_Guide_V1_0b.pdf
SunSpec Specification
[4] http://www.sunspec.org
[5] SunSpec-Alliance-Specification-Common-Models-v1.5.pdf
[6] SunSpec Alliance Specification - Inverter Models v1.1.pdf
[7] SunSpec Information Models – 12041.pdf (SunSpec Information Model Specification SunSpec Alliance Interoperability
Specification V1.8)
SunSpec Models
[8] SunSpec-Information-Model-Reference.xlsx
[9] SunSpec-Information-Model-Reference-Kaco.xlsx

Modbus Protocol blueplanet 3.0-10.0 TL3 blueplanet 15.0-20.0 TL3 blueplanet 50.0-60.0 TL3 Powador Page 3
39.0-72.0 TL3 blueplanet 87.0-165 TL3
1.3 Target group
EN-US

All activities described in the document may only be carried out by specially trained personnel with the following qualifi-
cations:
ž Knowledge about IP-based network protocols
ž Knowledge of the modbus specifications
ž Knowledge of the SunSpec modbus specifications
ž Education concerning the installation and configuration of IT systems
ž Training in the handling of hazards and risks during the installation and operation of electrical units and plants.
ž Education concerning the installation and start-up of electrical units and plants.
ž Knowledge of applicable standards and directives.
ž Knowledge and adherence to this document with all safety notices.

2 Register Map
2.1 Scaling factors
“SF” in below table is an abbreviation of “Scaling Factor”. You can calculate a real value of specific address using SF value,
received value via MODBUS and following equation.
{Read Value}={Received value via MODBUS}*10{SF}
Example:
Address offset 29 and 30 mean DC voltage and the DCV-SF value is -1. If a received value via MODBUS is 5042, DC voltage
is as follow.
{DC Voltage}=(5042)*10(-1)=504.2 Volt
The way to use Scale Factor is the same of SunSpec specifications.

2.2 SunSpec register map


The register map must start with the SunSpec ID, indicating that the following registers are Modbus/SunSpec registers.
The base register address is 40001, and has the following representation:
Address Size R/W Name Type Units SF Descrip- Value
Start / End tion Range
Uniquely
identifies
this as a 0x53756e5
40001 40002 2 R SunSpec ID uint32 - -
SunSPec 3
Modbus
Map
After this SunSpecID the supported SunSpec models follow one by one. To retrieve the offsets for the supported SunSpec
models in the register map, the headers for each have to be parsed until a specific “END_OF_MAP” model is found. This
model has the following content:
Address Block off- Size R/W Name Type Units SF Descrip- Value
Offsett set tion Range
SunSpec End of Reg-
0 - 1 R uint16 - - 0xFFFF
DID ister map
SunSpec Model
1 - 1 R uint16 - - 0
Length length

Page 4 Modbus Protocol blueplanet 3.0-10.0 TL3 blueplanet 15.0-20.0 TL3 blueplanet 50.0-60.0 TL3 Powador
39.0-72.0 TL3 blueplanet 87.0-165 TL3
2.3 Adress calculation example

EN-US
WARNING! If a device does not contain the same firmware version according to the specification "SunSpec Modbus In-
terface" version, parameters may be called incorrectly. If Modbus-UDP is activated, all connected devices need same
firmware-version.
NOTE: In a Modbus communication robustly constructed against model changes, first all models are read out and then
the register addresses are calculated.
1. Search for the string "Su"nS" -> in the example 40001 [Pos. 1]
2. Advance by the length of the string: i.e. + 2 auf 40003
3. Reading the model names -> 1 [Pos. 2]
4. Reading the model length -> 66 [Pos. 3]
5. Advance to the next model -> 40003 + 2 + 66 = 40071 [Pos. 4]
6. Reading the name (result depends on which models are supported)
7. Reading the length (result depends on which models are supported)
8. Move forward to the next model [Pos. 5]
9. Repeat the procedure to the end. [Pos. 6]
Addr.
40001 „0xxxxxx „Su“ 1 Model ID Start Register Offset

40002 „0xxxxxx „nS“ 1 40003

40003 0x0001 „1“ Model 1 2 103 40071

40004 0x0042 „66" Length 66 3 40086 14

.
? 40123
.
.
.
66 Register
40003+2+66 .
.
4 .

40071 0x00067 „103" Model 103 5

40072 0x00032 „50" Length 50


.
.
Example . 40086 0x186A0 „100000" 100000W
.
50 Register
.
.
.

40123 ? „?" Model ?


.
.
.
.
.

X 0xFFFF
End Model 6
X+1 0x0000

Fig. 1: Address calculation model

Modbus Protocol blueplanet 3.0-10.0 TL3 blueplanet 15.0-20.0 TL3 blueplanet 50.0-60.0 TL3 Powador Page 5
39.0-72.0 TL3 blueplanet 87.0-165 TL3
This method to enumerate all supported models can be repeated, until the “END_OF_MAP” model with DID 0xFFFF is
EN-US

found.
To retrieve an explicit value from a certain model, the offset of that value has to be added to the models offset retrieved
in the manner above.
2.3.1 Example
Example for power control over Model DID123
This example will show, how to set a power control value of 50% P over SunSpec model DID123.
1. During init phase run the SunSpec register map lookup (wie in Kapitel 4.2 beschrieben [See section 2.2} Page 4]) to
find out the offset of the start register of SunSpec model DID123. This step has to be preformed only once during init
phase.
2. For this example we assume, that this step gives us a start address of SunSpec model DID123 of 40290 ((be aware of
the difference between register number and its address, wie in Kapitel 4.2 beschrieben [See section 2.2} Page 4])
3. Setting ‘WMaxLimPct’ register in SunSpec model DID123. For this we need to lookup the relative address offset of
‘WMaxLimPct’ register address within the model definition of SunSpec model DID123 to retrieve its absolute address
within the register map:
WMaxLimPct relativer Adress-Offset = 5
DID123-Startadresse = 40290
WMaxLimPct absolute Adresse = 40290 + 5 = 40295
1. Now that we have the absolute register offset to write, the desired power control value need to be correctly scaled.
Therefor the scale facter ‘WMaxLimPct_SF’ is needed. In our example reading this will return a scale factor of ‘-1’.
With this we calculate the value to set to the ‘WMaxLimPct’ register (wie in Kapitel 4.1 beschrieben [See sec-
tion 2.1} Page 4]):
Register value = 50.0(%) / 10-1 = 500
1. Now the desired value 500 (=0x01f4) may be set using a Modbus write command on the absolute address 40295
(=0x9d67). The value set must be in legal ranges, otherwise a Modbus exception will be returned. For example using
the ModbusTCP write single register command 0x06:
TX:00 0c 00 00 00 06 01 06 9d 67 01 f4
RX:00 0c 00 00 00 06 01 06 9d 67 01 f4
1. Enable power limitation by writing ‘WMaxLim_Ena’ Register. Like in the previous step, we need to lookup the abso-
lute address of ‘WMaxLim_Ena’ register.
WMaxLim_Ena relative address offset = 9
DID123 start address = 40290
WMaxLim_Ena absolute address = 40290 + 9 = 40299
1. Writing a ‘1’ = ENABLED to the register address 40299 will start external power control. For example using the Mod-
busTCP write single register command 0x06:
TX: 00 0d 00 00 00 06 01 06 9d 6b 00 01
RX: 00 0d 00 00 00 06 01 06 9d 6b 00 01
Example for requesting string combiner values
This example shall demonstrate how to request SunSpec registers from a string combiner board over the ModbusTCP-
RS485 bridge of the new inverters with dedicated web interface. Therefor the magic ID “SunS” shall be read from the start
address 40000 from the string combiner device.
1. Check string combiner address to request SunSpec values from. In our example the string combiner board has been
configured with the unit address:

Page 6 Modbus Protocol blueplanet 3.0-10.0 TL3 blueplanet 15.0-20.0 TL3 blueplanet 50.0-60.0 TL3 Powador
39.0-72.0 TL3 blueplanet 87.0-165 TL3
EN-US
Fig. 2: string combiner board
1. To read the magic ID “SunS” (=0x53 0x75 0x6e 0x53) from the string combiner device at start address 40000
(=0x9c40), use the configured unit address 11 (=0x0b) as unit ID in the Modbus read holding register request (com-
mand 0x03) to read two registers:
2. TX: 00 02 00 00 00 06 0b 03 9c 40 00 02
3. RX: 00 02 00 00 00 07 0b 03 04 53 75 6e 53

3 Register description
NOTE
For a detailed description of particular models / registers refer to SunSpec Models xls.!

NOTE
Again – keep in mind, that when you refer to a specific address in a model you´ve to use the register_ad-
dress – 1 > on the wire!

NOTE
Setting specific functions via model 123
Refer to the Chapter “Specifications” in the device manual. You will find additional explanations of func-
tions there, as well as examples that use sample parameters.

3.1 Common Block (Device ID001)


The register description for “Common Block (DID 001) is only an example may not reflect the current implementation.
Address Block Off- Size R/W Name Type Units SF Descrip- Value
Offset set tion Range
SunSpec
SunSpec
0 - 1 R unit16 - - Common 001 (dec)
DID
Model
SunSpec Model
1 - 1 R uint16 - - 66 (dec)
Length Length
Manufac- „KACO new
2 0 16 R string - -
turer energy“
KACO in- e.g.
18 16 16 R Model string - - verter “Powador
name 39.0 TL3”

Modbus Protocol blueplanet 3.0-10.0 TL3 blueplanet 15.0-20.0 TL3 blueplanet 50.0-60.0 TL3 Powador Page 7
39.0-72.0 TL3 blueplanet 87.0-165 TL3
Address Block Off- Size R/W Name Type Units SF Descrip- Value
EN-US

Offset set tion Range


Data logger e.g.
34 32 8 R Options string - -
ID-String “390TL“
The packet
version of
the cur- e.g.
42 40 8 R Version string - -
rently in- “V2.10”
stalled
software
Serial num-
ber set e.g.
Serial
50 48 16 R string - - during pro- “39.0TL011
Number
duction 23456”
process
Device Ad- Not imple-
66 64 1 - uint16 - - -
dress mented
Force even
67 65 1 R - pad - - 0
alignment

4 FAQ
Fault Cause
The SunSpec protocol provided and the KACO extension list
What communication protocol should be used? pave the way for dynamic addressing. Update these proto-
cols at regular intervals.
Check whether you can reach the device using a ping (de-
What should I do if the device does not answer? vice address). In the event of a fault, please check the com-
munication line.
Check whether you have performed the calculation via the
chosen start address in accordance with the example - Cal-
culation model addresses.Adress calculation example [See
Modbus is not displaying the value expected. section 2.3} Page 5]
Das „SunSpec Client Help Tool ...“ supports you in calculat-
ing a desired register address. You can also find this tool un-
der Downloads/Software.

Page 8 Modbus Protocol blueplanet 3.0-10.0 TL3 blueplanet 15.0-20.0 TL3 blueplanet 50.0-60.0 TL3 Powador
39.0-72.0 TL3 blueplanet 87.0-165 TL3
Werner-von-Siemens-Allee 1 · 74172 Neckarsulm · Germany · Tel. +49 7132 896-1000 · [email protected] · www.kaco-newenergy.de
The text and figures reflect the current technical state at the time of printing. Subject to technical changes. No liability for printing errors.
3012902-12-220705

You might also like