2025年01月13日 08:49:53 来源:广州勒夫迈智能科技有限公司 >> 进入该公司展台 阅读量:3
粉尘在线监测仪(MODBUS-RTU)通讯协议
1、概述
通信协议详细地描述了粉尘在线监测仪的输入和输出命令、信息和数据,以便第三方使用和开发。
1.1通信协议的作用
使信息和数据在上位机(主站)和粉尘在线监测仪之间有效地传递, 允许访问粉尘在线监测仪的所有测量数据。
粉尘在线监测仪可以实时采集现场粉尘浓度的值,具备一个RS485通讯口,能满足粉尘或PM2.5浓度监控系统的要求。其功能和技术指标参见用户手册。
粉尘在线监测仪通信协议采用MODBUS-RTU协议,本协议规定了应用系统中主机与粉尘在线监测仪之间,在应用层的通信协议,它在应用系统中所处的位置如下图所示:
主机
本协议所处的位置
从机: 粉尘在线监测仪
1.2 物理接口:
连接上位机的主通信口,采用标准串行RS485通讯口,使用接线端子。
信息传输方式为异步方式,起始位1位,数据位8位,停止位1位,无校验。
数据传输缺省速率为9600b/s
MODBU RTU通信协议详述
2.1 协议基本规则
以下规则确定在回路控制器和其他串行通信回路中设备的通信规则。
所有回路通信应遵照主/从方式。在这种方式下,信息和数据在单个主站和从站(监控设备)之间传递。
主站将初始化和控制所有在通信回路上传递的信息。
无论如何都不能从一个从站开始通信。
所有环路上的通信都以“打包”方式发生。一个包裹就是一个简单的字符串(每个字符串8位),一个包裹中最多可含255个字节。组成这个包裹的字节构成标准异步串行数据,并按8位数据位,1位停止位,无校验位的方式传递。串行数据流由类似于RS232C中使用的设备产生。
所有回路上的传送均分为两种打包方式:
A) 主/从传送
B) 从/主传送
若主站或任何从站接收到含有未知命令的包裹,则该包裹将被忽略,且接收站不予响应。
2.2数据帧结构描述
每个数据帧组成如下:
RTU模式
地址
功能代码
数据数量
数据1
...
数据n
CRC 16位校验
3、传输格式
(1)命令报文格式
读数据:
地址 | 功能码 | 数据起始地址高位 | 数据起始地址低位 | 数据个数高位 | 数据个数低位 | CRC 16位校验 |
| 03或04 |
|
|
|
| 低位在前 |
返回:
地址 | 功能码 | 字节长度 | 数据1输入 | 数据2输入 | … | CRC16位校验 |
| 03或04 |
| 高位在前 |
|
| 低位在前 |
写数据:
地址 | 功能码 | 数据起始地址高位 | 数据起始地址低位 | 数据个数高位 | 数据个数低位 | CRC 16位校验 |
| 03或04 |
|
|
|
| 低位在前 |
(2)、异常应答返回
异常码01:无效的功能码
从站地址 | 功能码 | 异常码 | CRC16校验 |
| 80H+原功能码 | 01 |
|
异常码02:无效的起始地址
从站地址 | 功能码 | 异常码 | CRC16校验 |
| 80H+原功能码 | 02 |
|
异常码03:无效的数据个数
从站地址 | 功能码 | 异常码 | CRC16校验 |
| 80H+原功能码 | 03 |
|
帧格式(10位)
起始位 | D0 | D1 | D2 | D3 | D4 | D5 | D6 | D7 | 停止位 |
写单个数据:
地址 | 功能码 | 寄存器地址高位 | 寄存器地址低位 | 数据高位 | 数据低位 | CRC 16位校验 |
| 06 |
|
|
|
| 低位在前 |
写多个数据:
地址 | 功能码 | 起始地址高位 | 起始地址低位 | 寄存器数据高位 | 寄存器数据低位 | 字节数 | 寄存器值高位 | 寄存器值低位 | CRC 16位校验 |
| 10 |
|
|
|
|
|
|
| 低位在前 |
5、粉尘在线监测仪内部报文信息
功能代码 | 数据起始地址 | 数据个数 | 内容说明 |
03H | 0000H | 1 | 地址 |
0001H | 1 | 粉尘报警值 | |
04H
| 0000H | 2 | 粉尘30秒内的平均值的浓度 |
0001H | 2 | 粉尘1秒内的浓度 |
注意:每一个数据用两个字节整数表示,高位在前,低位在后
如: 带符号整数 范围 -32768---32767
上传数据需除十,如上传16进制 &H0311,对应十进制00785,表示785
上传数据需除十,如粉尘上传16进制 &H00FF,对应十进制00255,表示255
6、 网络采样定时
粉尘在线监测仪中,上位机读取数据每次间隔时间不小于2s,推荐值3s。
7、命令举例:
粉尘在线监测仪的地址为1:
(1)读所有数据为:
下发命令:
01 04 71CB (读从数据起始地址为0000H开始的2个模拟量)
粉尘在线监测仪返回命令如下:
01 04 04,30s浓度H,30s浓度L,1s浓度H,1s浓度L,CRCL,CRCH。
(2)只读30s粉尘浓度数据时:
上位机发送: 01 04 00 00 00 01 31 CA(读从数据起始地址为0000H开始的1个模拟量)
下位机返回: 01 04 02, 30s浓度H,30s浓度L,CRCL,CRCH。
(3)只读1秒粉尘浓度数据时:
上位机发送: 01 04 00 01 00 01 60 0A(读从数据起始地址为0001H开始的1个模拟量)
下位机返回: 01 04 02, 1s浓度H,1s浓度L,CRCL,CRCH。
(4)读设备的寄存器:
上位机发送: 01 03 00 00 00 04 44 09。
下位机返回: 01 03 08 00 01 00 50 00 50 01 AE C5 26
(5)写单个设备寄存器,如浓度报警值:
上位机发送:01 06 00 01 00 23 99 D3。
下位机返回:01 06 00 01 00 23 99 D3。
(6)写多个设备寄存器:
上位机发送:01 10 00 00 00 04 08 00 01 00 23 00 23 00 1E 12 BF
下位机返回:01 10 00 00 00 04 C1 CA
勒夫迈激光传感器应用领域:空气净化器,空调,PM2.5检测仪,抽油烟机,烟雾报警器,新风系统,专用PM2.5传感器,空气探测仪,穿戴设备等。