一种新型无线温湿度检测仪的设计

来源:互联网 发布:淘宝开店照片示范 编辑:程序博客网 时间:2024/04/28 14:52

一种新型无线温湿度检测仪的设计

谢金峰  习友宝 

(电子科技大学电子工程学院  四川成都  611731

【摘要】:介绍了一种新型无线温湿度检测仪的设计方法与工作原理,该仪表采用全校准数字式温湿度传感器SHT11作为温湿度参数采集器。本系统使用无线收发模块Smart Node N608W构建温湿度检测网络,实时显示和发送当前温湿度信息。该无线温湿度检测仪具有操作简单、易于安装的特点。

关键字:温湿度传感器;无线收发;协调器;微控制器;检测仪

0 引言: 温湿度是两个非常重要的物理量,在工农业生产、气象、科学研究、仓库管理以及日常生活中都需要对温湿度进行精确地测量和控制[1]。传统的温湿度测量需要耗费大量的人力物力,很难完成对温湿度控制的要求。在电子测量技术不断发展的今天,由于传感器技术的发展,温湿度测量技术也正朝着微型化、智能化、系统化的方向发展[2]。本温湿度检测仪通过简单的设计使检测仪具有操作简单,低成本,高精度的特点。

1 系统组成与硬件设计方案:

无线温湿度检测仪主要由微控制器AT89C52、无线收发模块Smart Node N608W、实时时钟芯片DS1302、液晶显示屏12864等组成。系统硬件原理图如图1所示:

系统的工作原理:温湿度传感器SHT11把温湿度数据传送给微控制器AT89C52, 微控制器经过处理将温湿度数据显示在液晶屏12864上,同时无线收发模块把温湿度数据以一定的格式发送给集中器。然后集中器把收集的各路温湿度数据整理和分类,通过串口RS232传送给上位机,最后显示在上位机软件主界面的各个子窗口上。本系统的硬件主要分为以下几大模块:

1.1 电源电路部分

该系统主要使用9V可充电电池,也可以使用9V电源适配器为系统供电,通过两片电压转换芯片AMS1117将9V电压转换成5V和3.3V,给系统提供电源。添加一个LED灯是为了检测系统是否上电,同时输出端的电容C25C27可以滤除高频分量,使输出电压更加平稳。电源电路原理图如图2所示:

1.2 实时时钟DS1302电路

    实时温湿度检测要求系统提供实时时钟信号,选择一款比较常用的实时时钟芯片DS1302

  DS1302 是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周日、时、分、秒 进行计时,具有闰年补偿功能,工作电压为2.5V~5.5V。采用三线接口与AT89C52进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据[7]。

电路原理图如图3所示:

1.3无线收发模块Smart Node N608W电路

 针对分布式多点温湿度检测,由于有线组网的困难,就考虑使用无线网络进行组网检测,选择逻讯公司的Smart Node N608W作无线收发模块。

Smart Node N608是上海逻讯公司生产的低功耗、内置天线,具有8级组网深度、功率可调的无线收发模块,具有以下特性:(1)支持调频和固定频率两种工作模式。(2)支持Smart Node协议传输、数据透明传输。(3)具有点对点、点对多点、多级中继的网络结构。(4)接口支持:1路UART、2路IO口、4路IO口或4路10位A/D转换;(5)可扩展接口有:RS485、RS232、USB、CF卡。(6)无线传输速率:2.4kbit/s~128kbit/s(需要软件配置)。(7)供电电压:1.8V~6V,具有休眠和唤醒功能[5]。电路原理图如图4所示:

  无线收发模块Smart Node N608使用Smart Node通讯协议,其串口数据包格式定义如下表所示:

同步

起始

数据长度

指令

数据体

校验

1byte

1byte

1byte

1byte

252byte

2byte

1  Smart Node通讯协议串口数据包格式

通过串口同步、起始位定义和相应的操作指令,可以进行点对点、网络接收和发送数据,实现网络通讯的目的。

1.4键盘电路

由于微控制器的IO引脚够用,采用常用的4×4矩阵扫描式键盘,分配AT89C52的P2口做键盘电路的8个输入端。16个按键分别由0、1、2、3、4、5、6、7、8、9、→、↑、↓、←、确认键、工作模式(M)键组成。

1.5串口通讯MAX232

    该温湿度检测仪以RS232通讯模式与上位机进行通讯,采用MAX232接口芯片,同时在芯片的收发端添加两个LED灯,可以检验其是否正在通讯。其工作原理图如图5所示:

1.6报警电路

报警电路的工作原理:当测定的温、湿度数据超过所设定的温湿度上限或者低于所设定的温、湿度下限时,报警器就发生报警,提醒工作人员现在的温湿度已经超过设定的温湿度上限或者低于温湿度下限。工作人员应立即采取适当措施,保证温湿度在设定的范围之内。同时设有报警信号指示灯,红灯亮表示发生温度警告,蓝灯亮表示发生湿度警告。连接图如图6所示:

1.7温湿度传感器SHT11

SHT11是一款瑞士Sensirion公司生产的相对湿度和温度测量、数字信号输出、无需额外部件 、超低能耗、自动休眠的温湿度复合传感器[4]。温湿度传感器的主要特性如下:(1)将温湿度传感器、信号放大调理、A/D转换、I2C总线接口全部集成于一个芯片;(2)可给出全校准相对湿度及温度值输出;(3)具有露点值计算输出功能;(4)具有卓越的长期稳定性;(5)湿度值输出分辨率为14位,温度值输出分辨率为12位,并可编程为12位和8位;(6)小体积(7.65×5.08 X23.5 mm),可表面贴装;(7)具有可靠的CRC数据传输校验功能;(8)片内装载的校准系数可保证100%互换性;(9)电流消耗,测量时为550 μA,平均为28μA,休眠时为3μA[6]。SHT11与AT89C52的连接采用2-Wire串行接口,进行温湿度采集时要按照传感器的读写时序与AT89C52通讯,由于SHT11为数字式输出具有一定的非线性,要对输出的温湿度值进行线性补偿和温湿度补偿,最后得到的温湿度值才较为准确。其温湿度的计算公式:

  (1) 相对湿度线性补偿公式:

 RHliner=C1+C2×SORH+C3×SO2RH

式中:RHliner表示线性补偿后的湿度值,

 SORH表示相对湿度测量值,

 C1C2C3为线性补偿系数。

(2)  SHT11的温度输出具有很好的线性,实际温度输出公式:

Temperature=d1+d2×SOT

式中d1d2为待定值,d1取值与工作电压有关,d2SHT11内部A/D转换器的分辨率有关,SOT为温度测量值。温湿度传感器SHT11AT89C52的连接图,如图7所示:

1.8微控制器AT89C52外围电路:

本系统采用AT89C52作为微控制器,首先构成最小系统,在最小系统的基础上,增加需要的外围电路。为了保存温湿度信息,扩展了E2PROM,使用数据存储芯片AT24C256与微控制器相连。微控制器AT89C52与液晶显示器12864的连接采用串口方式,节约了微控制器的端口。在液晶显示屏12864上同屏显示日期,时间,实时温湿度值和设定的温湿度上下限值。方便用户读取温湿度信息。

系统原理图如图7所示:

2 微控制器软件设计

2.1微控制器软件设计

本系统程序使用C语言编写,开发工具keil4作为代码生成器。微控制器AT89C52系统软件采用模块化编程方法,把各功能模块分成子功能模块,方便软件系统的调试和完善升级,本软件系统主要分为主程序模块、模式选择模块、温湿度采集与无线收发模块。

主程序模块用来判断键盘输入的值、动态显示信息、调用各子程序模块,调用各功能模块和中断服务子程序,是系统能够正常运行的核心。SHT11温湿度数据采集子程序主要包括几个重要函数:读、写请求函数,带校验和的测量温湿度函数,计算温湿度函数,计算露点函数等。这里主要叙述一下计算温湿度函数和露点函数。

 (1) 计算温湿度函数和露点函数

/*带线性补偿和温湿度补偿的温湿度函数*/

void calc_sht11(float *p_humidity ,float *p_temperature)
{

const float C1=-4.0;               // C1线性补偿系数
const float C2=+0.0405;         // C2线性补偿系数
const float C3=-0.0000028;      // C3为线性补偿系数

const float T1=+0.01;  //T1与工作电压有关的常数const float T2=+0.00008; //T2SHT11有关的常数 

float  rh=*p_humidity;        // 相对湿度值
float  t=*p_temperature;    //温度测量值
float  rh_lin;                   // 线性补偿后的湿度值float  rh_true;            // 温度补偿后的湿度值
float  t_c;                     // 温度值

t_c=t*0.01 - 40;                 //计算温度
rh_lin=C3*rh*rh + C2*rh + C1;  //计算湿度值   rh_true=(t_c-25)*(T1+T2*rh)+rh_lin; //计算湿度值
if(rh_true>100)   rh_true=100;        //湿度上限 if(rh_true<0.1)   rh_true=0.1;      //湿度下限

*p_temperature=t_c;               //返回温度值 *p_humidity=rh_true;             //返回湿度值

}

float calc_dewpoint(float h,float t)

{    

float lx,dewpoint;

lx=0.66077+7.5*t/(237.3+t)+(log10(h)-2);

dewpoint=(lx-0.66077)*237.3/(0.66077+7.5-lx);

//计算露点值

return dewpoint;   //返回露点值

}

2.2 上位机软件设计

上位机软件使用LabWindows/CVI虚拟仪器开发工具。该温湿度检测仪设有RS232串口,可以通过该串口与上位机通讯,也可以在组网后通过协调器与上位机通讯,将传送到上位机的数据进一步分析,显示在上位机主用户界面上。在上位机主界面上工作人员可以很轻松的了解到各个工作节点温湿度情况。

3 结论:

    本文对无线温湿度检测终端仪表设计方法进行了详细说明。调试结果表明,本系统使用方便,操作简单、可靠性高,适应环境范围广。但也有不足之处,在组网检测时容易受到外界的电磁干扰。 

参考文献:

1.张中华,王泽勇,高晓蓉,王 黎,赵全轲  基于SHTl0的便携式数显温、湿度检测仪的设计  现代电子技术,2009, (17):137-139.

2.李志强,黄顺,郭华新  基于SHTl0的数字温、湿度计设计  广西轻工业,2007 (10):35-36.

3.吕 强 ,刘玉华, 刘志军 王国胜 基于ZigBee技术的无线温湿度检测终端设计 科学技术与工程  2008 8(23):6232-6235.

4.孟臣,李敏,李爱传  I2C总线数字式温、湿度传感器SHT11           及其在单片机系统的应用 国外电子元器件 2004 (2):50-53.

5.上海逻迅信息科技有限公司     Smart Node N608无线模块使用说明书 V3.2  2009. 

6.庞娜,程德福 基于ZigBee无线传感器网络的温室监测系统设计 2010 1(28):55-59.

7.DS1302.http:// www.51c51.com/test/xl1000/xl1000628.htm

A new wireless temperature and humidity instrumentation design

Xie  Jinfeng   Xi  Youbao

(School of Electronics Engineering, University of Electronic Science and Technology of China  Chengdu  610054)

Abstract:  It introduces a new type of wireless temperature and humidity detector design and operation principle. The all-calibrating digital instrument temperature and humidity sensor SHT11 is a temperature and humidity parameters collection. The system can construct the temperature and humidity testing network used by wireless transceiver module Smart Node N608. It also can Real-time display and send the current temperature and humidity information. This wireless temperature and humidity detector is characterized by simple operation, easy installation characteristics.

Key words:  Digital temperature and humidity sensors;  Wireless transceiver module;  Microcontroller;  Coordinator;  temperature and humidity instrumentation.

 

原创粉丝点击