0% found this document useful (0 votes)
228 views13 pages

SunSpec Modbus-2

The document outlines the SunSpec Modbus protocol for reading inverter data such as voltage, current, and power using Modbus-RTU and Modbus-TCP communication modes. It includes hardware descriptions, software configuration steps, and examples of Modbus commands for various inverter monitoring scenarios. Additionally, it specifies the requirements for supported ECUs and provides details on immediate inverter controls and data formats.

Uploaded by

kn9thtz6ps
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
0% found this document useful (0 votes)
228 views13 pages

SunSpec Modbus-2

The document outlines the SunSpec Modbus protocol for reading inverter data such as voltage, current, and power using Modbus-RTU and Modbus-TCP communication modes. It includes hardware descriptions, software configuration steps, and examples of Modbus commands for various inverter monitoring scenarios. Additionally, it specifies the requirements for supported ECUs and provides details on immediate inverter controls and data formats.

Uploaded by

kn9thtz6ps
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

SunSpec Modbus

Rev 3.3

This document provides a method for reading inverter information(voltage,


current, power, etc.) via the standard Modbus protocol.

© All Rights Reserved


Table of Contents

1. Hardware description ...............................................................................................................................................3


2. Software configuration ............................................................................................................................................ 4
2.1 Open ECU local page ......................................................................................................................................4
2.2 Configure SunSpec Modbus function ..................................................................................................... 4
2.3 Host serial port configuration ................................................................................................................... 4
3. SunSpec (PICS) - Allocation Tables ...........................................................................................................................6

SunSpec Modbus 1
0.Check support

Only ECUs that meet the conditions are supported.

ID rules Version Support


2160XXXXXXXX 1.3.7 or above √
ECU-R
2162XXXXXXXX 2.0.2 or above √
ECU-B 2163XXXXXXXX ALL versions ×
ECU-C 215XXXXXXXXX C1.1.3 or above √

SunSpec Modbus 2
1. Hardware description

We support two modbus modes:Modbus-RTU and Modbus-TCP


RTU needs 485 bus connection, TCP needs network connection.

ECU-R’s RS485 communication interface is between power hole and RJ45 network port.
It can be connected by Serial line.

ECU-C’s RS485 interface is on the surface. It can be connected by Serial line.

SunSpec Modbus 3
2. Software configuration
2.1 Config switch, buad and address

Open “EMAmanager” -> ECU APP -> Workspace -> Modbus Configuration

Figure 1

2.2 Configure SunSpec Modbus function


Select “On” in Switch menu to turn on the SunSpec Modbus function. Select a baud rate in
the second menu. Configure Inverters’ address in the address text box. Finally, click Save to
finish configuration.

2.3 Host serial port configuration


The host’s RS485 port must be configured to the same baud rate, 8 data bits, 1 stop bit, none
parity bit, but ignore baud rate with TCP-modbus.

SunSpec Modbus 4
2. Software configuration
RTU: Must be connected to RS485

Inverter’s modbus address


Serial device

TCP: No need to connect RS485

ECU’s IP address
Inverter’s modbus address
Fixed value:502

NOTE: This tool is for debugging only, other similar tools can also be used.

SunSpec Modbus 5
3. SunSpec (PICS) - Allocation Tables

Basic information table:

eg.(if Address=1)
RS485 send:01 03 9C 44 00 05 EB 8C
Will recv:01 03 0A 41 50 73 79 73 74 65 6D 73 00 35 7B
01:device address(defined in Settings)
03:fixed value,means Read Holding Register
9C 44:Convert to decimal is 40004,so this command is used to read Manufacturer(string)
00 05:How many registers are read
EB 8C:CRC check (CRC-16/MODBUS x16+x15+x2+1)
0A:length of response content,this is 10
41 50 73 79 73 74 65 6D 73 00:response content,10 bytes,Corresponding ascii,get “APsystems”
35 7B:CRC check (CRC-16/MODBUS x16+x15+x2+1)

Note:Modbus-TCP don't need CRC check, but need 6 bytes protocol header
TCP send: 00 01 00 00 00 06 01 03 9C 44 00 05
Will recv: 00 01 00 00 00 0D 01 03 0A 41 50 73 79 73 74 65 6D 73 00
“00 01 00 00”is arbitrary.
“00 06”is the length of data

SunSpec Modbus 6
for single phase inverter monitoring table:

RS485 send:01 03 9C 88 00 05 2B B3
Will recv:01 03 0A 01 C2 01 C2 00 00 00 00 FF FE DE 66
A_SF(sunssf) = 0xFFFE=-2; Amps(A)(uint16) = (0x01C2) * 10^A_SF = 450*10^-2 = 4.5A

RS485 send:01 03 9C AC 00 01 6A 7B
Will recv:01 03 02 00 04 B9 87
Operating State(enum16) = 0x0004=4,means MPPT mode

SunSpec Modbus 7
RS485 send:01 03 9C AE 00 01 CB BB
Will recv:01 03 02 81 23 99 CD
Event1(bitfield32) = 0x8123=1000000100100011B,means exist
GROUND_FAULT,OVER_TEMP,AC_OVER_VOLT,MEMORY_LOSS,HW_TEST_FAILURE at the same time.

for single phase inverter monitoring using float values:

RS485 send:01 03 9C BC 00 02 2B BF
Will recv:01 03 04 40 90 51 EC D3 C3
Amps = IEEE754(0x409051EC) = 4.51,units A

SunSpec Modbus 8
for three phase inverter monitoring table:

RS485 send:01 03 9C 88 00 05 2B B3
Will recv:01 03 0A 05 49 01 C2 01 C3 01 C4 FF FE 88 84
A_SF(sunssf) = 0xFFFE=-2;
Amps(A)(uint16) = (0x0549) * 10^A_SF = 1353*10^-2 = 13.53A
Amps PhaseA = (0x01C2) * 10^A_SF = 450*10^-2 = 4.5A
Amps PhaseB = (0x01C3) * 10^A_SF = 451*10^-2 = 4.51A
Amps PhaseC = (0x01C4) * 10^A_SF = 452*10^-2 = 4.52A

SunSpec Modbus 9
RS485 send:01 03 9C AC 00 01 6A 7B
Will recv:01 03 02 00 04 B9 87
Operating State(enum16) = 0x0004=4,means MPPT mode

RS485 send:01 03 9C AE 00 01 CB BB
Will recv:01 03 02 81 23 99 CD
Event1(bitfield32) = 0x8123=1000000100100011B,means exist
GROUND_FAULT,OVER_TEMP,AC_OVER_VOLT,MEMORY_LOSS,HW_TEST_FAILURE at the same time.

for three phase inverter monitoring using float values:

RS485 send:01 03 9C BC 00 02 2B BF
Will recv:01 03 04 41 58 7A E1 8C F4
Amps = IEEE754(0x41587AE1) = 13.53,units A

SunSpec Modbus 10
Immediate Inverter Controls :

Turn on inverter:
RS485 send:01 10 9C FC 00 01 02 00 01 2F A5
Will recv:01 10 9C FC 00 01 EF A9

Shut down inverter:


RS485 send:01 10 9C FC 00 01 02 00 00 EE 65
Will recv:01 10 9C FC 00 01 EF A9

SunSpec Modbus 11
DC Data(float):

RS485 send:01 03 9D 36 00 02 0B A9
Will recv:01 03 04 42 F6 CC CD 9A EC
DC Watt(DCW1)= IEEE754(0x42F6CCCD) = 123.4,units W
DC Watt(DCW1) = IEEE754(0x42F6CCCD) = 123.4,units W

SunSpec Modbus 12

You might also like