0% found this document useful (0 votes)
166 views7 pages

MODbus Communication Protocol - 150AH LIB

The document describes a MODBUS protocol between an uninterruptible power supply (UPS) and battery management system (BMS). It specifies a 9600-19200 baud rate and defines packet formats, function codes, and register addresses for reading and writing data between the UPS (master) and BMS (slave) related to battery voltage, current, temperature, state of charge, and warnings. Data is transmitted in 8-bit bytes with start/stop bits and CRC for error checking.

Uploaded by

Lone Ranger
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)
166 views7 pages

MODbus Communication Protocol - 150AH LIB

The document describes a MODBUS protocol between an uninterruptible power supply (UPS) and battery management system (BMS). It specifies a 9600-19200 baud rate and defines packet formats, function codes, and register addresses for reading and writing data between the UPS (master) and BMS (slave) related to battery voltage, current, temperature, state of charge, and warnings. Data is transmitted in 8-bit bytes with start/stop bits and CRC for error checking.

Uploaded by

Lone Ranger
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/ 7

MODBUS Protocol between UPS(SMPS) and BMS

(Version V01.02)

Version Modify Date

V01.01 Init 11-30-2018

Modify the description


V01.02 09-19-2019
of Master and Slave
1. Data format

1.1 Data byte format


Start bit(1) Data bits(8bits,LSB->MSB) Stop bit(1)

1.2 Baud rate


Baud rate: 9600~19200. (Default baud rate: 9600)

Reading time interval: 300mS

1.3 Packet format


Master : UPS/SMPS

Slave: Battery BMS

Battery module ID: Battery BMS ID, set by the DIP switch on the battery panel. 0x01~0x10.

No. Module Address Battery Module ID ID Arrangement


1 0x01 1 ON ON ON OFF
2 0x02 2 ON ON OFF ON
3 0x03 3 ON ON OFF OFF
4 0x04 4 ON OFF ON ON
5 0x05 5 ON OFF ON OFF
6 0x06 6 ON OFF OFF ON
7 0x07 7 ON OFF OFF OFF
8 0x08 8 OFF ON ON ON
9 0x09 9 OFF ON ON OFF
10 0x0a 10 OFF ON OFF ON
11 0x0b 11 OFF ON OFF OFF
12 0x0c 12 OFF OFF ON ON
13 0x0d 13 OFF OFF ON OFF
14 0x0e 14 OFF OFF OFF ON
15 0x0f 15 OFF OFF OFF OFF
16 0x10 16 ON ON ON ON
1.3.1 Packet send from master
Slave Function Starting Starting Numbers Numbers of CRC CRC
Address code address(Hi) address(Lo) of data(Hi) data(Lo) (Lo) (Hi)

8bit 8bit 8bit 8bit 8bit 8bit 8bit 8bit

1.3.2 Packet response by slave

Slave Function Byte Data 1 Data1 Data n Data n: CRC CRC


Address code count (Hi) (Lo) (Hi) (Lo) (Lo) (Hi)

8bit 8bit 8bit 8bit 8bit 8bit 8bit 8bit 8bit

2.Function Code
2.1 Read registers
Send by the master SMPS/UPS

Slave Function Address Address Num of Num of CRC CRC


Address Code (Hi) (Lo) register(Hi) register(Lo) (Lo) (Hi)

0x01-0x10 0x03 0x00 0x00-0xff 0x00 0x00-0xff - -

Response by salve (Battery BMS)


Slave Function Data1 Data1 Data N Data CRC CRC
Byte Count …
address Code (Hi) (Lo) (Hi) (Lo) (Lo) (Hi)
2*(Num of
0x01-0x10 0x03 …- … … … … ..- -
register)

2.2 Write registers


Send by the master SMPS/UPS

Function Address Address Num of Num of


Slave Address Byte Count
Code (Hi) (Lo) register(Hi) Register(Lo)

0x00-0xf 2*(Num of
0x01-0x10 0x10 0x00 0x00 0x00-0xff
f register)

Data1 Data1 DataN DataN CRC CRC


…..
(Hi) (Lo) (Hi) (Lo) (Lo) (Hi)
… …. … … - -

Response by salve (Write success )

Slave Function Address Address Num of Num of CRC CRC


Address Code (Hi) (Lo) register(Hi) register(Lo) (Lo) (Hi)

0x01-0x10 0x10 0x00 0x00-0xff 0x00 0x00-0xff - -

Response by salve (Write Error)


Slave Function CRC CRC
Error num
address Code (Lo) (Hi)

0x01-0x10 0x090 … - -

3.Register

ULONG:Unsigned long,4 bytes

LONG: Signed long, 4 bytes

USHORT: Unsigned int, 2 bytes

SHORT: signed int, 2bytes


Lengt RW/Data Comment
Address Content Unit
h type

0000 Voltage 2byte R/USHORT 10mV 0~9000*10mV

0~32767:Charge
0001 Current 2byte R/SHORT 10mA
-32768~0:Discharge

32byt Voltage of 16 Cells,


0002-0017 Cell Voltage R/USHORT mV
e 2 byte for each cell

0018 Temp of PCB 2byte R/SHORT ℃ Temperature

0019 Temp Avg 2byte R/SHORT ℃ Temperature

0020 Temp Max 2byte R/SHORT ℃ Temperature


0021 Cap Remaining 2Byte R/USHORT

0022 Max charging Current 2Byte R/USHORT

0023 SOH 2byte R/USHORT 0-100%

0024 SOC 2byte R/USHORT 0-100%

0x0000:加热关/Stand by
0x0001:加热关/Charging
0x0002:加热关/Discharging
0x0004:加热关/Protect
0x0008:加热关/Charging Lmt
0x8000:加热开/Stand by
0x8001:加热开/Charging
0025 Status 2byte R/USHORT
0x8002:加热开/Discharging
0x8004:加热开/Protect
0x8008:加热开/Charging Lmt

高位字节为 0x00:加热状态--关
高位字节为 0x80:加热状态--开

0x0001:Pack OV
0x0002:Cell OV
0x0004:Pack UV
0x0008:Cell UV
0x0010:Charge OC
0x0020:Discharge OC
0x0040: 环境温度异常
0026 Warning 2byte R/USHORT
0x0080: MOS 温度高
0x0100:Charge OT
0x0200:Discharge OT
0x0400:Charge UT
0x0800:Discharge UT
0x1000:Low capacity
0x2000: 浮充停止/Float Stoped
0x4000:
0x0001:Pack OV
0x0002:Cell OV
0x0004:Pack UV
0x0008:Cell UV
0x0010:Charge OC
0x0020:Discharge OC
0x0040: 环境温度异常
0027 Protection 2byte R/USHORT
0x0080: MOS 温度高
0x0100:Charge OT
0x0200:Discharge OT
0x0400:Charge UT
0x0800:Discharge UT
0x1000:Low capacity
0x2000:Discharge SC
0x0001:Voltage error
0x0002:Temperature error
0028 Error Code 2byte R/USHORT
0x0004: 电流检测 Error
0x0010:Cell unbalance

0029
Cycle counts 4byte RW/ULONG 1 ~ 65535
0030
0031
Full Capacity 4byte RW/ULONG mAS =mAh/3600
0032
0033
Temperature for 6 sensor ,
0034 Temp 6Byte
1byte/1Sensor
0035

0036 Cell Num 2byte RW/USHORT 电池串数

0037 Designed Capacity 2Byte 0.1AH 电池标准容量

0001:Cell 1 均衡开
0002:Cell 2 均衡开
0004
0008
0038 Cell Balance Status 2Byte

8000:Cell 16 均衡开
24By
0105-0116 Model R 产品型号
te
BMS 软 件 版 本 ( 如 : 6 字 节 字 符 串
0117-0119 FW Version 6Byte R
V03R04)
16By
0120-0127 Serial No. RW 产品序列号. 16 字节字符串
te

You might also like