基于CXA1191和SHT11的无线温湿度监测系统
扫描二维码
随时随地手机看文章
摘要:为降低设计成本,利用CXA1191和SHT11实现了一个无线温湿度监测系统。在CXA1191原有的广播接收功能的基础上,巧妙结合编码技术,成功实现了数据无线传输功能,并选择SHT11实现高性能的温湿度采集。系统的特色在于将成熟的广播接收技术与数字技术相融合,具有较高的性价比,很好地满足了无线温湿度数据采集需求。
关键词:无线数据传输;CXA1191;编码;SHT11
在工农业生产、气象、环保等部门,经常需要对环境温度与湿度进行测量与控制。准确的温湿度测量对生物制药、食品加工和造纸等行业更是至关重要的。随着测量技术自动化和智能化程度的提高,各种温湿度采集系统已得到了广泛应用。传统的温湿度测量采用有线传输方式,一般使用模拟化的温湿度传感器直接将非电量转换成电量,再送至PC机或单片机作后续处理。其缺点在于:一是布线工作量大,成本高,传输距离较远时还会引入较大的误差和干扰;二是模拟式湿度传感器一般都要设计信号调理电路并需要经过复杂的校准和标定过程,因此测量精度难以保证,且在线性度、重复性、互换性、一致性等方面往往不尽人意。尽管目前已有一些无线温湿度采集方案,但其传输部分多采用价格较高的专用无线模块实现。当应用中需要大量布设节点时采用专用模块的系统造价会大大提高,难以满足低成本、多节点应用环境下的用户需求,如一些规模不大的、个体的农业环境控制。
为提高系统的性价比,本文提出了一种基于CXA1191的低成本温湿度采集方案,主要面向精度高、数据量小、节点数多、成本敏感的应用需求。该方案将广播接收技术与现代数字技术相结合,在深入研究CXA1191接收电路原理的基础上,结合编码器件和单片机系统,实现了数字信号的低成本无线传输。系统用高性能的SHT11温湿度传感器实现温湿度测量,利用其高集成度的特点简化设计、降低成本,提高了系统的实用性。
1 概述
温湿度采集系统采用主从分布式结构,系统由PC机、汇聚节点和分布于不同位置的多个无线子节点构成。汇聚节点和子节点采用无线通信方式,PC机与汇聚节点通过RS232总线通信。汇聚节点从各子节点获取现场温湿度参数,并将采集到的数据经RS232总线上传至PC机处理和显示。节点由发射和接收电路、编码电路、单片机系统、键盘和显示等部分组成。发射电路由分立元件搭建,采用AM调制方式。接收电路由CXA1191对射频信号作放大、混频和滤波处理,将无线信号变换到中频,中频处理由检波电路和编解码电路完成。系统结构和节点结构如图1、图2所示。图2中RS232通信功能仅为汇聚节点独有,SHT温湿度采集器件仅为子节点独有。
2 接收电路
目前无线数据通信多采用专用模块实现,市面上已有多种无线数传模块可供选择。这些专用模块使用简单,功能齐备,即使是射频开发经验较少的设计者也能很快上手。其缺点是价格较高,当面对数据量小、功能要求不高且节点数又比较多的应用时性价比不理想。但如果自行设计电路,则往往又受到射频设计难度高、调试工作量大以及设计者经验缺乏等限制而难于实现,其中尤以接收电路结构最为复杂。考虑到以上因素,本文采用了一种折中的方案,即利用CXA1191的内部电路,配以少许外部元件,既实现了射频接收的功能,又简化了结构,开发者仅需基本的无线电知识即可独立完成设计。
CXA1191是一款单片大规模收音电路,因其集成度高,外围元件少,性能优良,在我国相当流行,广受欢迎的“德生”收音机内部多数采用了这款芯片。CXA1191包括了AM/FM收音机从天线输入、高放、混频、本振、中放、检波直至音频功放的全部功能。图3显示的是设计中用到的CXA1191调频电路部分(图中检波解码部分是本设计的扩展)。
当CXA1191处于调频接收状态时,无线信号先经过带通滤波,然后进入12脚在内部完成高频放大。放大后的信号与本振混频产生10.7 MHz的中频信号。在正常收音模式下(如图中虚线所示),该中频信号经10.7 MHz陶瓷滤波器选频后接至17脚,在内部鉴频、检波和音频放大,最后驱动扬声器发声。
通过以上分析不难发现,CXA1191的结构可以分为两部分:1)低噪放、混频、滤波部分(即获取10.7 MHz中频信号的电路),这是一般的超外差式接收机的通用结构;2)鉴频、检波和放大,这是其专有的用于音频信号解调处理的结构。其通用结构完全可以用作数字通信的射频前端。例如,如果有一ASK(振幅键控)信号,载频在87~109 MHz以内,该信号能通过带通滤波器进入高放和混频电路。适当调节本振,可以在陶瓷滤波器输出端获得10.7 MHz的ASK信号,此信号仍保留着原始的调制信息只是载频有所降低,这正是希望得到的中频ASK信号。对这个信号再做检波和解码处理,即可得到所需的数字信号。经实验验证,这个设想是可行的。
具体设计如图3所示。改造方法十分简单,在原CXA1191调频电路的基础上,断开10.7 MHz滤波器与17脚的连接,将滤波器的输出接至后面的检波电路。CXA1191的其他功能如中波和短波接收均未用到,与之关联的电路皆可省去,使设计和调试的任务大大减轻。实际调试时要注意适当调节高放和本振的两个调谐回路,同时观察陶瓷滤波器的输出,尽量使输出幅度最大,噪声和失真最小。
3 发射电路
进行数据发送时,单片机首先将待发数据送至PT2262编码。F12262的17脚输出已编码的脉冲,高频振荡器在此脉冲调制下产生ASK信号经天线发射出去。如图4所示。脉冲信号控制发射管基极导通与关断,振荡器输出振幅也随之变化,且只有最大值和零值两种状态,即得到所需的ASK信号。振荡器接成克拉泼形式,其中利用了基极一射级电容和集电极一射级电容。采用声表面波器件SAW稳频,使电路具有很高的稳定性。SAW工作在串联谐振状态,使L1的部分电感接至基极-集电极之间构成电容三点式振荡器。振荡器工作频率计算公式为,本设计将振荡频率设定在90MHz。
4 编解码电路
编解码功能由PT2262/PT2272完成。PT2262/PT2272是一对带地址、数据编码功能的无线发射接收芯片。其7、8、10~13脚是数据端,1~6脚是地址端,14脚为低电平时启动发射,17脚串行输出包含地址和数据的编码脉冲信号。图5为解码电路。
解码时,来自10.7 MHz滤波器的ASK信号先经VD、C1、R2检波,再通过LM358放大后送入PT2272的解码输入14脚。解码成功时VT由低变高,解码后的数据出现在数据引脚上供单片机读取。需要注意的是。发射和接收芯片地址码设置必须相同,PT2272对收到的信号要进行2次地址比对,只有地址正确才有有效数据输出。
5 温湿度采集电路
温湿度采集以SHT11为核心,它是Sensirion公司推出的基于CMOSensTM技术的新型温湿度传感器。SHT11将温度传感器、湿度传感器、信号调理、模数转换器、标定参数及I2C总线接口全部集成到传感器内部,既提高了传感器的性能,又降低了成本、减少了体积,同时也非常便于和微控制器接口,是嵌入式系统温湿度测试的理想选择。
SHT11接口十分简单,仅包括电源(Vdd)、地(GND)、串行时钟输入(SCK)、串行数据(DATA)4个引脚。每次测量都需要“启动传输”、“发送命令”、“读取数据”3个过程,DATA在SCK下降沿之后改变状态,SCK上升沿时有效。
“启动传输”用于初始化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%以内,能很好地满足实际应用需求。