5 温湿度采集电路
温湿度采集以SHT11为核心,它是Sensirion公司推出的基于CMOSensTM技术的新型温湿度传感器。SHT11将温度传感器、湿度传感器、信号调理、模数转换器、标定参数及I2C总线接口全部集成到传感器内部,既提高了传感器的性能,又降低了成本、减少了体积,同时也非常便于和微控制器接口,是嵌入式系统温湿度测试的理想选择。
SHT11接口十分简单,仅包括电源(Vdd)、地(GND)、串行时钟输入(SCK)、串行数据(DATA)4个引脚。每次测量都需要“启动传输”、“发送命令”、“读取数据”3个过程,DATA在SCK下降沿之后改变状态,SCK上升沿时有效。 www.5idzw.com
“启动传输”用于初始化SHT11,由SCK和DATA的一个特定时序完成,如图6所示。在SCK时钟上升沿DATA翻转为低电平,下一次SCK上升沿到来时DATA翻转为高电平,从而完成“启动传输”时序。
接下来要发送的是1个字节的命令,包括3个地址位和5个命令位。命令的传输需要8个SCK周期。命令传输完成后,SHT11会在第8和第9个SCK下降沿间给出一个DATA低电平脉冲,表示正确接收。
如果发送的是测量命令(“00000101”表示相对湿度RH,“00000011”表示温度T),外部控制器要等待测量结束。SHT11通过给出DATA低电平脉冲表示测量的结束。接着传输2个字节的测量数据和1个字节的CRC奇偶校验。外部控制器需要通过下拉DATA为低电平,以确认每个字节。数据传输时序如图7所示。
得到温湿度的数字量后,需要根据SHT11手册提供的公式转换成实际物理量。SHT11的温度传感器采用的是能隙材料PTAT,线性性能极好,可以直接按以下公式将数字量转换为温度值:
其中SOT为测量值,d1、d2取值如表1所示。
湿度传感器具有非线性,需要按以下修正公式计算实际值:
SORH为传感器相对湿度测量值,系数c1c2c3的取值如表2所示。
实际测量温度与25℃相差较大时,应考虑湿度传感器的温度修正系数:

温度修正系数如表3所示。
6 系统控制
节点以单片机系统为核心,控制各功能单元协调工作。单片机的控制任务主要有4个:
1)控制收发电路完成数据的接收和传送;
2)将汇聚节点发来的命令解释成相应的控制动作(子节点具备),收集存储各子节点的数据(主节点具备);
3)定时控制SHT11完成温湿度数据采集:
4)与PC机通信,上传温湿度数据。
单片机选择低功耗的MSP430。MSP430是一个16位的、具有精简指令集的、超低功耗的混合型单片机,具有极低的功耗、丰富的片内外设和方便灵活的开发手段,十分适合嵌入式应用。
汇聚节点与子节点采用简单的主从通信协议。汇聚节点定时轮流向各节点发出含有节点地址码的查询命令。从节点都编有互不相同的地址,仅对与自身地址相符的命令作出回应,将采集的温湿度数据发回主节点。为了提高系统的抗干扰能力,软件中引入了出错重发机制。汇聚节点向子节点发查询命令后,如果在指定时间内未收到数据,则再次发起查询命令,3次查询失败则认为节点故障并记下节点号。得到各
从节点的数据后,汇聚节点将数据打包上传给PC机。PC端采用VC6.0设计了上位机软件,使用MSComm控件实现与汇聚节点的串口通信,实现了温湿度显示界面,同时对测量的数据进行数字滤波处理,有效地提高测量精度。汇聚节点和主节点软件流程图如图8、图9所示。
7 结束语
无线温湿度测量在工农业生产领域有着广泛的需求,基于专用无线模块的方案难以满足低成本的应用需求。本文提出了利用CXA1191实现射频前端的新思路,结合数字技术和高性能的SHT11温湿度采集器,设计了一个具有较高性价比的无线温湿度测量系统。经实际检验,系统工作稳定。数据精度在3%以内,能很好地满足实际应用需求。