杭州数测科技有限公司
电话:+86-571-85186355
传真:+86-571-85186355
手机:+86-188-68819228
地址:浙江省杭州市西湖区西园路9号博科大厦A11楼
邮编:310030
Email:sckj001@126.com
网址:www.datatest17.com
电话:+86-571-85186355
传真:+86-571-85186355
手机:+86-188-68819228
地址:浙江省杭州市西湖区西园路9号博科大厦A11楼
邮编:310030
Email:sckj001@126.com
网址:www.datatest17.com
文章详情
DT-THBXD温湿度变送器(MODBUS)通讯协议
日期:2025-05-07 18:08
浏览次数:1989
摘要:
DT-THBXD温湿度变送器(MODBUS)通讯协议(1.0)
1、概述
通信协议详细地描述了DT-THBXD的输入和输出命令、信息和数据,以便第三方使用和开发。
1.1通信协议的作用
使信息和数据在上位机(主站)和DT-THBXD之间有效地传递, 允许访问DT-THBXD的所有测量数据。
DT-THBXD温湿度传感器可以实时采集现场温湿度的值,具备一个RS485通讯口,能满足小型温湿度监控系统的要求。其功能和技术指标参见用户手册。
DT-THBXD温湿度传感器通信协议(1.0)采用MODBUS RTU协议,本协议规定了应用系统中主机与DT-THBXD温湿度传感器之间,在应用层的通信协议,它在应用系统中所处的位置如下图所示:
主机
RS485 |
从机: 温湿度传感器
1.2 物理接口:
连接上位机的主通信口,采用标准串行RS485通讯口,使用接线端子。
信息传输方式为异步方式,起始位1位,数据位8位,停止位1位,无校验。
数据传输缺省速率为9600b/s
2、MODBU RTU通信协议详述
2.1 协议基本规则
以下规则确定在回路控制器和其他串行通信回路中设备的通信规则。
1)所有回路通信应遵照主/从方式。在这种方式下,信息和数据在单个主站和从站(监控设备)之间传递。
2)主站将初始化和控制所有在通信回路上传递的信息。
3)无论如何都不能从一个从站开始通信。
4)所有环路上的通信都以“打包”方式发生。一个包裹就是一个简单的字符串(每个字符串8位),一个包裹中多可含255个字节。组成这个包裹的字节构成标准异步串行数据,并按8位数据位,1位停止位,无校验位的方式传递。串行数据流由类似于RS232C中使用的设备产生。
5)所有回路上的传送均分为两种打包方式:
A) 主/从传送
B) 从/主传送
6)若主站或任何从站接收到含有未知命令的包裹,则该包裹将被忽略,且接收站不予响应。
2.2数据帧结构描述
每个数据帧组成如下:
RTU模式
地址
功能代码
数据数量
数据1
...
数据n
CRC 16位校验
功能代码
数据数量
数据1
...
数据n
CRC 16位校验
3、传输格式
(1)命令报文格式
读数据:
地址 | 功能码 | 数据起始地址高位 | 数据起始地址低位 | 数据个数高位 | 数据个数低位 | CRC 16位校验 |
| 04 | | | | | 低位在前 |
返回:
地址 | 功能码 | 字节长度 | 数据1输入 | 数据2输入 | … | CRC16位校验 |
| 04 | | 高位在前 | | | 低位在前 |
(2)、异常应答返回
非法功能:
从站地址 | 功能码 | 异常码 | CRC16校验 |
| 80H+原功能码 | 01 | |
非法数据地址:
从站地址 | 功能码 | 异常码 | CRC16校验 |
| 80H+原功能码 | 02 | |
非法数据值:
从站地址 | 功能码 | 异常码 | CRC16校验 |
| 80H+原功能码 | 03 | |
帧格式(10位)
起始位 | D0 | D1 | D2 | D3 | D4 | D5 | D6 | D7 | 停止位 |
4、DT-THBXD温湿度传感器内部报文信息
功能代码 | 数据起始地址 | 数据个数 | 内容说明 |
04H | 0000H | 1 | 温度值 |
0001H | 1 | 湿度值 |
注意:每一个数据用两个字节整数表示,高位在前,低位在后
如: 带符号整数 范围 -32768---32767
上传数据需除十,如湿度上传16进制 &H0311,对应十进制00785,表示78.5%
上传数据需除十,如温度上传16进制 &H00FF,对应十进制00255,表示25.5℃
上传数据需除十,如温度上传16进制 &H8064,高位为1,表示负数,对应的数高位取反,表示-10.0℃
5、 网络采样定时
DT-THBXD温湿度传感器中,上位机读取数据每次间隔时间不小于500ms,推荐值1s。
6、命令举例:
DT-THBXD温湿度传感器的地址为1,读所有数据为:
下发命令:
01 04 0000 0002 71CB (读从数据起始地址为0000H开始的2个模拟量)
DT-THBXD温湿度传感器返回命令如下:
01 04 04,温度H,温度L,湿度H,湿度L,CRCL,CRCH。
只读温度数据时:
上位机发送: 01 04 0000 0001 600A(读从数据起始地址为0000H开始的1个模拟量)
下位机返回: 01 04 02,温度H,温度L,CRCL,CRCH。
只读湿度数据时:
上位机发送: 01 04 0001 0001 31CA(读从数据起始地址为0001H开始的1个模拟量)
下位机返回: 01 04 02,湿度H,湿度L,CRCL,CRCH。
地址为2时:
上位机发送: 02 04 0000 0002 71F8(读从数据起始地址为0000H开始的2个模拟量)
下位机返回: 02 04 04,温度H,温度L,湿度H,湿度L,CRCL,CRCH。