honeyeagle指令集
?rs485接口采用标准modbusrtu协议,波特率9600,无校验位,8个数据位,1个停止位。
?支持功能码:03:读单个或多个寄存器值;06:写单个寄存器值。
l读取寄存器内容使用03功能码
03功能码使用格式
主机发送:
地址
03
起始地址高位
起始地址低位
寄存器数量高位
寄存器数量低位
crcl
crch
备注:数据地址范围: 0~47(即0x0000~0x002f),对用户而言有效数据地址见下文。其余地址保留。
从机回复:
地址
03
字节数n*2
数据1高位
数据1低位
……
数据n高位
数据n低位
crcl
crch
备注:主机读取数据时,最大地址不可超过0x002f,即起始地址+数据个数不可超过0x002f,否则报错,读取失败。
注意:实时检测值、低报值、高报值、设备满量程、报警回差、标定点浓度这6个参数需结合小数点位数计算,例如实时检测值为十进制1256,此设备小数点为2位,则真实的实时检测值为12.56,其余5个参数同理。
1、读取实时检测值(fe为广播地址,使用时须换成特定从机号,下同)
主机发送:0103 00 00 00 0184 0a
从机回复:01 03 02 00 0239 85 (气体实时浓度为2ppm)
2、读取低报值
主机发送:0103 00 01 00 01d5 ca
从机回复:01 03 02 00 40b9 b4 (低报值为64)
3、读取高报值
主机发送:0103 00 02 00 0125 ca
从机回复:01 03 02 00 64 b9 af (高报值为100)
4、读取设备地址(不知道设备地址情况下使用万能码fe,万能码适用于03、06所有指令)
主机发送:0103 00 0c 00 01 44 09
从机回复:01 03 02 00 0179 84 (地址为#1)
5、读取设备满量程
主机发送:0103 00 0b 00 01 f5 c8
从机回复:01 03 02 03 e8b8 fa (满量程为1000)
6、读取设备种类
主机发送:0103 00 0e 00 01 e5 c9
从机回复:01 03 02 00 0978 42 (设备检测对象co)
(以下使用hex码表示,包含但不限于表中气体种类)
0x00
空
0x01
ash3
0x02
br2
0x03
c2h4
0x04
c7h8
0x05
ch4
0x06
ch2o
0x07
cl2
0x08
clo2
0x09
co
0x0a
co2
0x0b
cocl
0x0c
eto
0x0d
ex
0x0e
f2
0x0f
geh4
0x10
h2
0x11
h2s
0x12
hbr
0x13
hcho
0x14
hcl
0x15
hcn
0x16
hf
0x17
n2
0x18
nh3
0x19
no
0x1a
no2
0x1b
nox
0x1c
o2
0x1d
o3
0x1e
ph3
0x1f
plg
0x20
pm2.5
0x21
pm10
0x22
s1h4
0x23
so2
0x24
tbm
0x25
tht
0x26
voc
0x27
xxxx
0x28
pm
0x29
h2o2
0x2a
ch3br
0x2b
sf6
0x2c
so2f2
0x2d
ar
0x2e
he
0x2f
nmp
0x30
c2h3n
0x31
pm100
0x32
pm1.0
0x33
ch
7、读取小数点
主机发送:0103 00 0d 00 01 15 c9
从机回复:01 03 02 00 0239 85 (2位小数点)
8、单位读取
主机发送:0103 00 17 00 01 34 0e
从机回复:01 03 02 00 f638 02 (ppm)
0000:空; 00f6:ppm; 005f:ppb; 200e:%lel; 380e:%vol; 3900:ug/m3; 4000:mg/m3
9、读取回差
主机发送:0103 00 24 00 01c4 01
从机回复:01 03 02 00 14b8 4b(回差值为:0x0014=20)
l修改寄存器内容使用06功能码(修改地址时请使用万能码fe)
主机发送
fe
06
地址寄存器高位
地址寄存器低位
修改数值高位
修改数值低位
crcl
crch
从机回复
地址
06
地址寄存器高位
地址寄存器低位
修改数值高位
修改数值低位
crcl
crch
1、修改低报寄存器
主机发送:0106 00 01 00 30d8 1e
从机回复:0106 00 01 00 30d8 1e(低报修改为0x30,即是48)
2、修改高报寄存器
主机发送:0106 00 02 00 6429 e1
从机回复:0106 00 02 00 6429 e1(高报修改为0x64,即是100)
3、修改地址寄存器
主机发送:0106 00 0c 00 02c8 08
从机回复:0106 00 0c 00 02c8 08(地址修改为2)
备注:在执行完修改地址寄存器指令后再执行下一条指令时,需把地址字节更换为新的地址,否则不能正常通信,crc16校验码也就需要重新计算了。
4、设备调零
主机发送:0106 00 19 00 0058 0d
从机回复:0106 00 19 00 0058 0d(在干净大气中进行调零)
5、设备标定
主机发送:0106 00 19 08 299e 13(标定为2089,与小数点无关)
从机回复:0106 00 19 08 299e 13
6、修改回差
主机发送:0106 00 24 00 3248 14
从机回复:0106 00 24 00 3248 14(将回差修改为0x0032,即50)
寄存器功能
寄存器地址
范围
读/写
实时浓度
0x0000
----
只读
低报警值
0x0001
一般为量程的20%
可读/可写
高报警值
0x0002
一般为量程的50%
可读/可写
pm1.0浓度值
0x0005
只读
pm2.5浓度值
0x0006
只读
pm10浓度值
0x0007
只读
设备满量程
0x000b
----
只读
设备地址
0x000c
出厂为1号
可读/可写
小数点位数
0x000d
0,1,2,3
可读/可写
设备种类
0x000e
只读
单位
0x0017
0000:空;
00f6:ppm;
005f:ppb; 200e:%lel; 380e:%vol; 3900:ug/m3; 4000:mg/m3
只读
调零/标定
0x0019
只对气体有效
只写
报警回差
0x0024
出厂为0
可读/可写
标定浓度
0x0026
实际标气浓度
可读/可写
更多相关技术联系陈工:18948359132(微信同号)