资源描述
BAT41蓄电池检测仪(MODBUS)通讯协议(VER1.1)
1、概述
通信协议详细地描述了蓄电池检测仪的输入和输出命令、信息和数据,以便第三方使用和开发。
1.1通信协议的作用
使信息和数据在上位机(主站)和蓄电池检测仪之间有效地传递, 允许访问蓄电池检测仪的所有测量数据。
蓄电池检测仪通信协议(VER1.1)采用MODBUS RTU协议,本协议规定了应用系统中主机与蓄电池检测仪之间在应用层的通信协议,它在应用系统中所处的位置如下图所示:
主机
RS485
本协议所处的位置
从机: 蓄电池检测仪
1.2 物理接口:
连接上位机的主通信口,采用标准串行RS485通讯口。
信息传输方式为异步方式,起始位1位,数据位8位,停止位1位,无校验。
数据传输速率为1200b/s 、2400b/s 、4800b/s 9600b/s。
2、MODBU RTU通信协议详述
2.1 协议基本规则
以下规则确定在回路控制器和其他串行通信回路中设备的通信规则。
1) 所有回路通信应遵照主/从方式。在这种方式下,信息和数据在单个主站和从站(监控设备)之间传递。
2) 主站将初始化和控制所有在通信回路上传递的信息。
3) 无论如何都不能从一个从站开始通信。
4) 所有环路上的通信都以“打包”方式发生。一个包裹就是一个简单的字符串,一个包裹中最多可含255个字节。组成这个包裹的字节构成标准异步串行数据,并按8位数据位,1位停止位,无校验位的方式传递。
5) 所有回路上的传送均分为两种打包方式:
A) 主机发送命令
B) 从机返回命令
6) 若主站或任何从站接收到含有未知命令的包裹,则该包裹将被忽略,且接收站不予响应。
2.2数据帧结构描述
地址
功能代码
数据数量
数据1
...
数据n
CRC 16位校验
3、传输格式
(1)读数据命令
主站发送命令:
地址
功能码
寄存器起始地址
寄存器个数
CRC
1 byte
03
2 byte
2 byte
2 byte
正常应答返回:
地址
功能码
数据区字节数
数据区
CRC16位校验
1 byte
03
1 byte
.....
2 byte
异常应答返回:
非法功能
从站地址
功能码
异常码
CRC16校验
80H+原功能码
01
非法数据地址
从站地址
功能码
异常码
CRC16校验
80H+原功能码
02
非法数据值
从站地址
功能码
异常码
CRC16校验
80H+原功能码
03
帧格式(10位)
起始位
D0
D1
D2
D3
D4
D5
D6
D7
停止位
(2)、写数据命令
主站发送命令:
地址
功能码
寄存器起始地址
寄存器个数
数据区字节数
写入的数据
CRC
1 byte
16
2 byte
2 byte
1 byte
.....
2 byte
正常应答返回:
地址
功能码
寄存器起始地址
寄存器个数
CRC16位校验
1 byte
16
2 byte
2 byte
2 byte
帧格式(10位)
起始位
D0
D1
D2
D3
D4
D5
D6
D7
停止位
注:CRC检验码、寄存器地址、数据均为高位在前低位在后;
4、参数信息
实时功率
昨日平均功率
上月平均功率
参数代码
描述
说明
40001
第1组蓄电池电压
2 byte 只读 单位 0.001V 范围 1~17000
40002
第2组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40003
第3组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40004
第4组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40005
第5组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40006
第6组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40007
第7组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40008
第8组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40009
第9组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40010
第10组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40011
第11组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40012
第12组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40013
第13组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40014
第14组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40015
第15组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40016
第16组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40017
第17组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40018
第18组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40019
第19组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40020
第20组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40021
第20组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40022
第22组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40023
第23组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40024
第24组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40025
第25组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40026
第26组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40027
第27组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40028
第28组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40029
第29组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40030
第30组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40031
第31组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40032
第32组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40033
第33组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40034
第34组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40035
第35组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40036
第36组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40037
第37组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40038
第38组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40039
第39组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40040
第40组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40041
第41组蓄电池电压
2 byte 只读 单位 0.001V范围 1~17000
40042
蓄电池总电压
2 byte 只读 单位 0.01V范围 0~65535
40043
电流
2 byte 只读 单位 读-100~100A,写0~5V
40044
基准电压
2 byte 只读 单位0.001V
40045
温度1
2 byte 只读 单位 0.1°C
40046
温度2
2 byte 只读 单位 0.1°C
40301
地址
2 byte 读写 整数 1~255
40302
波特率
2 byte 读写 整数
0:1200,1:2400,2:4800,3:9600
40304
版本号
2 byte只读 整数 100~999(如101,代表版本号为V1.01)
注:通讯地址为0时可用来查询地址
展开阅读全文