1. 技术指标:
测量范围: 0-100% RH
测湿精度: +/- 4.5% RH
测温精度: +/-0.5℃@25℃
经过完全标定& 数字输出 (RS485数字接口)
快速响应 < 4 sec. 本传感器温湿度的测量数据 3 秒数据更新一次。
工作电压:5V(+/- 0.5V)
工作电流:10mA
2.温度传感器的应用协议
2.1 协议概述
OME-300 通讯协议采用 OME_RSC(Remote serial command)协议。RSC 是一个兼容
MODBUS 的通讯协议, 是深圳清华大学研究院光机电实验室产品开发的通用远程控制协议。
在本传感器中相关的应用如下:
(1) 定义传感器的地址为 1-247。默认值为 1。
(2) 功能码与数据区说明如下
功能码 数据域 说明
3 (0x03) ADR-H,ADR-
L,Num-H,Num-L
读取从 Num 个 16 位寄存器的值。
ADR-H&ADR-L 16 位寄存器的起始地址,
Num-H&Num-L 16 位寄存器的数目。
温度放于***个 16 位寄存器中, 湿度放于第
二个 16 位寄存器中。
65 (0x41) xx 设置测量精度
0x1 Humid_8b Temp_12b
0x2 Humid_12b Temp14b
66 (0x42) Xx 测量湿度,返回 4 字节的湿度值。
Xx 可以代表该值是多长时间的平均值。
或不输入。 (建议不输入该项)
67 (0x43) Xx 测量温度,返回 4 字节的湿度值。
68 (0x44) Xx 得到传感器的状态寄存器值
72(0x48) Xx 在广播方式,修改从设备的本机地址。
Xx,即为新的从设备地址
73(0x49) Xx 在 广 播 方 式 , 波 特 率 设 置 :Xx=1 for
9.6kbps;Xx=2 for 1.2kbps;Xx=3 for 300bps
2.2 温湿度数据读取方法
2.2.1 应用寄存器读取方式查询 2 字节温湿度数据
主机查询温湿度数据格式:
地址 03 00 00 00 02 CRCH CRCL
例如:对地址位为 01 的传感器读温湿度的操作为:
01 03 00 00 00 02 *** 0B
传感器应答:
地址 03 04 温度 H 温度 L 湿度 H 湿度 L CRC-H CRC-L;注: CRC-H 为 CRC16
校验高字节,CRC-L 为 CRC16 校验字节低字节。
重要说明:
2 字节的温湿度返回值,为 16 位signed 整型数值,10 倍于实际的温湿度数值。
(1) 上传的数据需除十, 如湿度上传十六进制的 0322,对应十进制 00802,表示
80.2%。
(2) 零下温度的换算如下:
若***高位值为 1, 则温度为负值, 换算方法是求反加 1。 如湿度上传十六进制的 FF82,
对应十进制为(0xFFFF-0xFF82+0x1) 126, 表示 12.6 摄氏度。
2.2.2 读取 4 字节的温湿度数据及其他参数的配置
测试 PID = 1 的传感器的温度: HEX: 01 43 41 D1
测试 PID = 2 的传感器的温度: HEX: 02 43 41 21
测试 PID = 1 的传感器的湿度: HEX: 01 42 80 11 测试 PID = 2 的状态寄存器 HEX: 02 44 00 E3
设置 PID = 2 的传感器的精度为 Humid_8b Temp_12b:HEX: 02 41 01 21 90
(注:精度的设置断电不保存,默认 Humid_12b Temp14b。建议用户不考虑改变该精
度设置)
广播设置传感器新 PID 为 2: HEX: 00 48 02 C6 01
广播设置传感器新 PID 为 1: HEX: 00 48 01 86 00
广播设置传感器通讯波特率为 300bps: HEX:00 49 03 06 51
广播设置传感器通讯波特率为 9.6kbps: HEX:00 49 01 87 90
2.2.3 关于温度传感器的返回:
(a)对于设置命令,返回对于接收错误,从机返回 4 个字节:(地址码、功能码、
CRC_H 、CRC_L)。
(b)对于湿度测量(0x42)和温度测量(0x43) 返回 8 个字节:地址码、功能
码,FloatL,Float_M1,Float_M2,Float_H, CRC_H 、CRC_L。
(c) 对于传感器状态测量 返回 5 个字节:地址码、功能码,Status, CRC_H 、
CRC_L.
(d) 广播方式无返回。 (目前广播方式只有 PID 设置和波特率设置两种功能,此两种
功能只能在广播模式下进行! )
3.数据传输说明
3.1 数据传输方式:
异步 10 位——1 位起始位,8 位数据位,1 位停止位,无校验位。
3.2 数据传输速率:
缺省波特率为 1200bps,用户可修改为 9.6kbps 或 300bps。
3.3 地址:
0~63,用户可通过广播命令进行设置。
3.4 CRC 计算
CRC(冗余循环码)包含 2 个字节,即 16 位二进制数。发送设备计算 CRC 码,放置
于发送信息帧的尾部。接收信息的设备将接收到的所有信息(含 CRC 码)重新计算 CRC
码,并判断该 CRC 码是否为 0,如果为 0,表示接收的信息帧正确无误,否则,则表明接
收的信息帧有误。 在进行 CRC 计算时只用 8 个数据位,起始位及停止位都不参与 CRC 计
算。
3.5 CRC 码的计算方法是:
(1).预置1个16位的寄存器为十六进制 FFFF(即全为 1) ;称此寄存器为 CRC 寄存
器;
(2).把***个 8 位二进制数据(既通讯信息帧的***个字节)与 16 位的 CRC 寄存
器的低 8 位相异或,把结果放于 CRC 寄存器;
(3).把 CRC 寄存器的内容右移一位(朝低位)用 0 填补***高位,并检查右移后的移
出位;
(4).如果移出位为 0:重复第 3 步(再次右移一位) ;
如果移出位为 1:CRC 寄存器与多项式 A001(1010 0000 0000 0001)进行异或;
(5).重复步骤 3 和 4,直到右移 8 次,这样整个 8 位数据全部进行了处理;
(6).重复步骤 2 到步骤 5,进行通讯信息帧下一个字节的处理;
(7).将该通讯信息帧所有字节按上述步骤计算完成后,得到的 16 位 CRC 寄存器的
高、低字节进行交换;
(8).***后得到的 CRC 寄存器内容即为:CRC16 码。
