打印

广州西博臣新款数字型温湿度模块CHTA30

[复制链接]
852|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
西博臣|  楼主 | 2019-6-1 15:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
CHTA
30IW系列数字温湿度传感器产品规格书
一、 产品概述

CHTA30IW数字型温湿度传感器是一款小体积,高性能,含有已校准数字信号输出(单总线、标准I2C)的高可靠,高精度温湿度传感器。
特点
硬件精良:传感器内部采用高可靠,高精度感湿敏感元件和外置的高精度NTC温度感知元件,并与一个高性能,宽电压供电(2.7-5.5Vdc)数模混合微处理器(MCU)相连接,内部具有模拟对数线性处理电路,并内置高精度14位ADC,自带加强型I2C/单总线硬件驱动输出,驱动及抗干扰能力强,低功耗模式。
高精度,高可靠:CHTA30IW系列产品采用多点宽范围在线自动标定工艺,通过独特的算法(多点标定,多阶拟合,线性修正等),确保证产品的精度及一致性,内部电路均做三防处理,产品经过高温高湿环境的老化与测试,确保产品的可靠性与长期稳定性。
复合输出:CHTA30IW系列产品通信方式采用兼容单总线、标准I2C两种通信方式输出。两种通信方式用户通过简单跳线即可选择通信输出方式(见说明六),使用方便,并可直接替代其他类型的数字型温湿度传感器。
数字直读:CHTA30IW系列产品采用数字直读输出,即内部已经对温度,湿度以及温飘进行补偿,用户无需对数字输出进行二次计算,所读数据即实际真实温湿度,无需计算,应用方便。(具体例程见附件一)
二、 应用范围
※空调、除湿器、加湿器、冰箱等家电行业    ※恒温恒湿机,环境测试设备及仪器
※智能家居,智慧城市,物联网应用          ※数据记录器、气象站  
※工业、农业、食品,化工等相关环境湿度检测及控制。
三、 传感器性能参数
3.1 相对湿度测量范围及精度
参数
条件
min
typ
max
单位
分辨率
 
 
0.1
 
%RH
量测范围
 
10
 
95
%RH
精度
25℃
±4 
±3
±4
%RH
重复性
 
 
±1
 
%RH
互换性
 
完全互换
响应时间
 
2 
6
8 
S
迟滞
 
±0.5 
±1
±2 
%RH
漂移
 
±0.5 
±1
±1.5 
%RH/yr
3.2 温度测量范围及精度
参数
条件
min
Typ
max
单位
分辨率
 
 
0.1
 
精度
 
±0.2 
±0.5
±1 
量测范围
 
-40
 
125
重复性
 
 
 ±0.3
 
互换性
 
完全互换
响应时间
 
 
 2
 
S
漂移
 
 
 0.3
 
℃/yr
       
四、通讯协议
CHTA30IW模块同时具备两种通讯方式:分别为标准I2C协议与单总线协议;具体通讯方式及应用电路请参考以下章节:
4.1 I2C通讯协议介绍
CHTA30IW模块采用标准I2C接口;模块I2C地址(Slave Address)为0xB8。在I2C标准总线协议的基础上,基于ModBus协议,制定了模块独有的通讯协议,降低传输的误码率。
4.1.1 I2C应用电路
4.1.2 I2C寄存器介绍
地址
寄存器信息
地址
寄存器信息
地址
寄存器信息
地址
寄存器信息
0x00
湿度高位
0x08
设备号高位
0x10
User寄存器1
0x18
保留
0x01
湿度低位
0x09
设备号低位
0x11
User寄存器2
0x19
保留
0x02
温度高位
0x0A
版本号
0x12
User寄存器3
0x1A
保留
0x03
温度低位
0x0B
序列码3
0x13
User寄存器4
0x1B
保留
0x04
保留
0x0C
序列码2
0x14
保留
0x1C
保留
0x05
保留
0x0D
序列码1
0x15
保留
0x1D
保留
0x06
保留
0x0E
序列码0
0x16
保留
0x1E
保留
0x07
保留
0x0F
状态寄存器
0x17
保留
0x1F
保留
Note:
1. 寄存器保留byte未使用。
2. 湿度输出格式为16bit,输出的湿度值为实际湿度值的10倍,用户需将读取的湿度值除以10得到正确的湿度值。
示例一:00000010 10010010 = 0292(十六进制) = 658(十进制) → 65.8%RH
3. 温度输出格式为16bit,最高位为符号位(0表示正温度;1表示负温度),其他位表示的温度值为实际温度值的10倍,用户需将读取的温度值的低15bit除以10得到正确的温度值。
示例一:00000001 00000010 = 0102(十六进制) = 258(十进制) → 25.8℃
示例二:10000001 00000010 = 8102(十六进制) = -258(符号位为1) → -25.8℃
4. 设备号:模块设备号。
5. 版本号:模块固件版本号。
6. 序列码:模块生产序列码。
7. 状态寄存器:预留,未使用。
8. User寄存器1~4:预留,未使用。
4.1.3 I2C Modbus功能码
功能码是每次通讯信息帧的第一个字节;I2C Modbus通讯规则,可定义的功能码为1到127。作为主机请求发送,通过功能码告诉从机应执行什么动作。作为从机响应,从机返回的功能码与从主机发过来的功能码一样,则表明从机引脚响应主机并且已经进行相关的操作。相关的功能码如下:
功能码
定义
操作
0x03
读寄存器数据
读取一个或多个寄存器的数据
0x10
写寄存器数据
写入一个或多个寄存器的数据
4.1.5 CRC16计算方法
        I2C通讯采用CRC16作为校验,降低通讯时的误码率,详细计算方法请参考以下介绍:
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寄存器内容即为:CRC码。
4.1.6 I2C Modbus通讯协议
l 读帧格式:
主机发送帧格式:(SLA+W)+功能码(0x03)+起始地址+寄存器个数
从机返回帧格式:功能码(0x03)+数据长度+返回数据+CRC
l 写帧格式:
主机发送帧格式:(SLA+W)+功能码(0x10)+起始地址+寄存器个数+保存数据+CRC
从机返回帧格式:功能码(0x10)+起始地址+寄存器个数+CRC
Note:
1. 对模块进行读写时,一次最多只能访问10个寄存器。
2. 可供用户写的寄存器为(0x0F~0x13);其他寄存器禁止写,且状态寄存器只能单独写。
3. CRC为16bit,通讯时低8bit在前,高8bit在后。
4. 当通讯数据有误时,返回错误数据帧,格式为“功能码+0x01+错误代码+CRC”;错误代码分别为:0x80(不支持功能码);0x81(读取非法地址);0x82(超出写数据范围);0x83(CRC校验错误);0x84(禁止写)。
4.1.7 I2C通讯示例:
功能
功能码
地址
数据帧示例
读取温湿度
0x03
0x00
发送:(SLA+W)+0x03+0x00+0x04
返回:0x03+0x04+濕度高位+濕度低位+溫度高位+溫度低位+CRC
读取温度
0x03
0x02
发送:(SLA+W)+0x03+0x02+0x02
返回:0x03+0x02+溫度高位+溫度低位+CRC
读取湿度
0x03
0x00
发送:(SLA+W)+0x03+0x00+0x02
返回:0x03+0x02+濕度高位+濕度低位+CRC
读取模块信息
0x03
0x08
发送:(SLA+W)+0x03+0x08+0x07
返回:0x03+0x02+设备号高位+设备号低位+版本号+序列码3+序列码2+序列码1+序列码0+CRC
写状态寄存器
0x10
0x0F
发送:(SLA+W)+0x10+0x0F+0x01+0x01+CRC
返回:0x10+0x0F+0x01+CRC
写用户寄存器
0x10
0x10
发送(SLA+W)+0x10+0x10+0x04+0x01+0x02+0x03+0x04+CRC
返回:0x10+0x10+0x0=4+CRC
4.1.8 I2C通讯注意事项
        主机读取模块的温湿度值为上一次的转换值,读取完成后模块将触发一次温湿度转换;因此长时间没有读取模块时,需要读取两次以得到准确的温湿度值(连续读取最小间隔为2S)。
4.2 单总线协议介绍
        CHTA30IW模块具备单总线通讯接口,实际应用中主机可通过一个I/O口即可对模块进行温湿度读取,可节省主控的I/O资源。
4.2.1 单总线应用电路
Note:
1. 模块SCL接地,此时模块处于单总线模式。
2. 模块SDA引脚需要外接上拉电阻。
4.2.2 单总线通讯格式
        模块的SDA在单总线模式用于与主机通讯和同步,一次传输40为数据,高位先出,分别为湿度高位、湿度低位、温度高位、温度低位、校验位。
4.2.3 单总线通讯时序及特性参数
1. 主机将SDA拉低(建议1ms以上);然后释放总线,等待模块应答;
2. 模块收到主机的起始信号后,将总线先拉低80μs,然后拉高80μs作为应答信号;
3. 紧接着模块开始传输40bit数据,高位在前,低位在后(位数据“0”的波形:50μs低电平+26-28μs高电平;位数据“1”的波形:50μs低电平+70μs高电平);
4. 40bit传输完成后,模块继续输出50μs低电平作为结束信号,然后释放总线。
Note:单总线信号特性参数:
符号
参数
min
typ
max
单位
Tbe
主机起始信号拉低时间
0.8
1
20
ms
Tgo
主机释放总线时间
5
30
200
μs
Trel
响应低电平时间
75
80
85
μs
Treh
响应高电平时间
75
80
85
μs
TLOW
信号“0”、“1”低电平时间
48
50
55
μs
TH0
信号“0”高电平时间
22
26
30
μs
TL0
信号“1”高电平时间
68
70
75
μs
Ten
传感器释放总线时间
45
50
55
μs
4.2.4 单总线数据格式
示例一:接收到的40位数据:
0000 0010                1001 0010                0000 0001                0000 0010                1001 0111
湿度高8位        湿度低8位        温度高8位        温度低8位        校验位
计算:接收到40位数据后,首先判断校验位是否正确来确认此笔数据是否有效(校验位为前4个字节的累加和后取低8位),如:00000010+10010010+00000001+00000001 = 10010111(校验位)
接收数据正确:
湿度:00000010        10010010 = 0292H(十六进制) = 658(十进制) → 65.8%RH
温度:00000001        00000010 = 0102H(十六进制) = 258(十进制) → 25.8%RH
Note:温度的最高位表示符号位,0表示正温度,1表示负温度;如-25.8℃的转换数据为1 000 0001 0000 0010。
示例二:接收到的40位数据:
0000 0010                1001 0010                0000 0001                0000 0010                1001 1111
湿度高8位        湿度低8位        温度高8位        温度低8位        校验位
校验和计算:
00000010+10010010+00000001+00000001 ≠ 10011111(校验位)
校验和错误,放弃此次数据,重新读取模块的温湿度。
4.2.5 单总线应用注意
主机读取模块的温湿度值为上一次的转换值,读取完成后模块将触发一次温湿度转换;因此长时间没有读取模块时,需要读取两次以得到准确的温湿度值(连续读取最小间隔为2S)。

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

1

帖子

0

粉丝