SM1810B RS485型温湿度传感器,内部使用了进口数字式温湿度传感内核及相关器件,确保产品具有较高的可靠性与卓越的长期稳定性。产品设计了RS232、RS485、CAN等多种输出方式供选择。
本传感器可应用于(1)SMT行业温湿度数据监控 (2) 电子设备厂温湿度数据监控(3) 冷藏库温湿度监测(4) 仓库温湿度监测 (5) 药厂GMP监测系统(6) 环境温湿度监控(7) 电信机房温湿监控 (8)宾馆温湿度监控(9)档案室温湿度监控(10)智能家居温湿度监控(11) 其它需要监测温湿度的各种场合等。
为便于工程组网及工业应用,本传感器采用工业广泛使用的MODBUS-RTU通讯协议,支持二次开发。用户只需根据我们的通讯协议即可使用任何串口通讯软件实现传感器数据的查询和设置。
SM1810B接口通讯方式为RS485,其引脚定义如下:
标号 | 引脚 | 说明 |
1 | VCC | DC 6-24V电源正 |
2 | GND | DC 6-24V电源负 |
3 | B- | RS485 B- |
4 | A+ | RS485 A+ |
设备所有操作或回复命令都为16进制数据。默认通讯波特率:9600,8,n,1。
1. 基本命令格式:
[设备地址][功能码][起始地址:2字节][数据长度:2字节][CRC16校验]
意义如下:
A、设备地址:设备地址范围为1-249, 250即0xFA为通用查询地址,当不知道设备地址时,可用此通用查询地址进行查询。
B、功能码:不同的应用需求功能码不同,比如3为查询输入寄存器数据。
C、起始地址:查询或操作寄存器起始地址。
D、数据长度:读取的长度。
E、CRC校验:CRC16校验,低位在前,高位在后。
命令说明 | 设备地址 | 功能码 | 起始地址 | 数据长度 | 校验码 |
使命格式 | 01 | 03 | 00 00 | 00 02 | C4 0B |
发送举例 | 01 03 00 00 00 02 C4 0B |
响应格式及举例:
响应说明 | 设备地址 | 功能码 | 数据长度 | 温度数据 | 湿度数据 | 校验码 |
响应格式 | 01 | 03 | 04 | 06 BE | 1D F4 | 92 48 |
响应举例 | 01 03 04 06 BE 1D F4 92 48 |
上例响应数据中:由于测点数据长度占两个字节,比如温度数据为06 BE, 折成10进制即为:1726,因模块分辨率为0.01,该值需除以100,即实际值为17.26度,同理:1D F4为湿度数据,十进制数据为:7668,湿度值为76.68%RH.
用户也可以根据寄存器地址,根据上述协议格式读取相应数据。产品可用寄存器列表如下:
组态软件中地址 | 寄存器地址 (十六进制) | 寄存器说明 | 数据类型 | 值范围 |
40001 | 00 01 | 温度 | 无符号整形 | 0-65535 |
40002 | 00 02 | 湿度 | 无符号整形 | 0-65535 |
40100 | 00 64 | 型号编码 | 无符号整形 | 1000-65535 |
40101 | 00 65 | 测点总数 | 无符号整形 | 1000-65535 |
40102 | 00 66 | 设备地址 | 无符号整形 | 1000-65535 |
40103 | 00 67 | 波特率 | 无符号整形 | 1-6 |
40104 | 00 68 | 通讯模式 | 无符号整形 | 1-2 |
40105 | 00 69 | 协议类型 | 无符号整形 | 1-3 |
40106 | 00 6A | 上传时间间隔 | 无符号整形 | 0-36000 |
40107 | 00 6B | 温度校正值 | 无符号整形 | 0-1000,64535-65535 |
40108 | 00 6C | 湿度校正值 | 无符号整形 | 0-1000,64535-65535 |
3.读取与修改设备地址
读取设备地址。若不知道当前设备地址、且总线上只有一个设备时,可以通过此命令查询当前设备地址。
命令说明 | 设备地址 | 功能码 | 起始地址 | 数据长度 | 校验码 |
使命格式 | 01 | 03 | 00 00 | 00 64 | D0 5E |
发送举例 | FA 03 00 64 00 01 D0 5E |
响应格式及举例:
响应说明 | 设备地址 | 功能码 | 数据长度 | 数据 | 校验码 |
响应格式 | 01 | 03 | 02 | 07 12 | 3A 79 |
响应举例 | 01 03 02 07 12 3A 79 |
更改设备地址
命令说明 | 设备地址 | 功能码 | 起始地址 | 目标地址 | 校验码 |
使命格式 | 01 | 03 | 00 66 | 00 02 | E8 14 |
发送举例 | 01 06 00 66 00 02 E8 14 |
上述举例将设备地址1更改为2。
响应格式及举例。成功更改后,设备会响应。
响应说明 | 设备地址 | 功能码 | 寄存器地址 | 目标地址 | 校验码 |
响应格式 | 02 | 06 | 00 66 | 00 02 | E8 27 |
响应举例 | 02 06 00 66 00 02 E8 27 |
4.读取与修改波特率
读取波特率。设备默认出厂波特率为9600,若需要更改,可根据下表及相应通讯协议进行更改操作。
波特率 | 代码 | 备注 |
2400 | 1 | |
4800 | 2 | |
9600 | 3 | 默认 |
19200 | 4 | |
38400 | 5 | |
115200 | 6 |
读取波特率发送命令说明
命令说明 | 设备地址 | 功能码 | 起始地址 | 数据长度 | 校验码 |
使命格式 | 01 | 03 | 00 67 | 00 01 | 35 D5 |
发送举例 | 01 03 00 67 00 01 35 D5 |
响应格式及举例:
响应说明 | 设备地址 | 功能码 | 数据长度 | 波特率代码 | 校验码 |
响应格式 | 01 | 03 | 02 | 00 03 | 3A 79 |
响应举例 | 01 03 02 00 03 F8 45 |
更改波特率
命令说明 | 设备地址 | 功能码 | 起始地址 | 目标地址 | 校验码 |
使命格式 | 01 | 03 | 00 66 | 00 02 | E8 14 |
发送举例 | 01 06 00 67 00 05 F8 16 |
上述举例将波特率从9600更改为38400,即将代码从3更改为5。
响应说明。成功更改后,新的波特率会即时生效,此时设备会失去响应,或响应不正确。
5.修改通讯模式
本功能暂不支持用户修改操作。
6. 修改协议类型
本功能暂不支持用户修改操作。
7.修改上传时间间隔
本功能暂不支持用户修改操作。
8. 温湿度校正值
当数据与参照标准有误差时,我们可以通过调整“温度校正值”来减小显示误差。 校正差值可修改范围为正负10度,即值范围为0-1000或64535-65535。
比如当温度显示值偏小1度时,我们通过增加1度来校正。因产品分辨率为0.01,实际通讯中,值1在命令中用100即十六进制0x64来表示;如果需要减小,则可以设置负值,比如-1度,对应十六制制值为FF 9C,其计算方式为100-65535=65435,再转为十六进制则为0x FF 9C。
我们以温度为例:
命令说明 | 设备地址 | 功能码 | 寄存器地址 | 校正参数 | 校验码 |
使命格式 | 01 | 03 | 00 6B | 00 64 | F9 FD |
发送举例 | 01 06 00 6B 00 64 F9 FD |
成功更改后,设备会响应。
响应说明 | 设备地址 | 功能码 | 寄存器地址 | 校正参数 | 校验码 |
响应格式 | 01 | 06 | 00 6B | 00 64 | F9 FD |
响应举例 | 01 06 00 6B 00 64 F9 FD |
湿度的校正值修改方法一样,只是寄存器地址为00 6C。
气压校准值
① 当数据与参照标准有误差时,我们可以通过调整“气压校准值”来减小显示误差。
发送命令格式:
[设备地址][命令号:0x06][辅助命令号:0x0A][参数编号][写入的气压校准值][CRC16]
说明:
气压校准值:值范围1-2000,中心点为1000,即可对当前显示值的十进制数可减小999或增大1000。对应十六进制量程范围为:0x0001-0x07D0。
如果当前值偏小,建议气压校准值增大,即该参数大于1000,如果当前值偏大,建议气压校准值减小,即该参数小于1000。
比如写入气压校准值为1100,命令为01060A04044CC8E6
设备响应:0104044C432C
设备响应格式:[设备地址][参数编号][写入的气压校准值][CRC16]
上例回复数据中,气压校准值更改为1100,对应16进制数据为044C。
② 若不知道气压校准值时,可以通过此命令可以读出气压校准值。
发送命令格式:
[设备地址][命令号:0x03][辅助命令号:0x00][参数编号][固定值:0001][CRC16]
说明:
比如查询当前气压校准值,命令为010300040001C5CB
设备响应:010302044CBB71
设备响应格式:[设备地址][命令号][数据长度:2字节][气压校准值][CRC16]
上例回复数据中,读出的气压校准值为1100,对应16进制数据为044C。
一. 接线检查
1.使用前请认真阅读说明书,确保接线正确,因接线错误导致产品损坏不在免费质保范围内。
2. 本产品禁止在大于85度或有化学物质环境下使用。
3. 产品若发生故障不得自行拆卸。
二. 故障分析与排除
1. 没有通讯
可能原因:
1) 检查接线是否正确:如果RS485信号线接反或供电小于DC5.5V都有可能造成无通讯;
2) 用户是否使用了USB转换线? 如果使用,驱动是否正确安装? 对应的串口号是否正确?
3) 是否更改过波特率,如果更改过,建议使用2400,4800,9600,19200,38400,115200挨个发送查询命令:FA 03 00 64 00 01 D0 5E,直到有数据。
2. 测温数据显示为0
可能原因:
1) 若用户使用自己的调试工具或软件,检查寄存器地址是否正确;
2) 检查传感器接线是否有断线现象。
3) 传感器是否有浸水现象,若有,去掉结水烘干后再试。
SM1810B传感器内置RS485接口转换器,通过RS485总线的组网方式,可以将通讯距离延长到zui长1200米,可以X解决连接距离过短的问题。
下图是基于SM1810B传感器典型温湿度监测与控制的RS485组网结构图,每个SM1810B传感器都有一个节点编号,一个小系统,可以放置1-35个SM1810B传感器。 因每个传感器采用宽电池供电,所以整个系统都可以采用总线供电的方案。
方案组成:
序号 | 名称 | 型号 | 数量 | 说明 |
1 | RS232/R485隔离转换器 | RS232/R485 | 1 | RS485总线直接转成可以与电脑相连的RS232接口 |
2 | RS485温湿度传感器 | SM1810B | 1-35 | 温湿度总线式一体传感器 |
3 | 总线式控制器 | SC1050B | 1 | 可选 |
4 | 总线电缆 | 若干 | ||
5 | 系统软件 | 1 | 可选 |
方案X点:总线式布点,安装方案,系统结构简单,成本低,可维护性强,是温室大棚、智能小区等各种系统的shouxuan方案。
序号 | 名称 | 型号 | 数量 | 备注 |
1 | RS485温湿度采集模块 | SM1810B | 1台 | |
2 | 四芯插头 | 1个 |
型 号 | 型号说明 | 备注 | |
SM1810 | SM1810XY | 其中X为 A时 RS232 接口 B时 RS485接口 C时 CAN 接口 | Y=1时 ,精度4.5% Y=2时 ,精度3% Y=3时 ,精度2% |