胡云峰 李飞鹏 陈李胜 文毅 电子科技大学中山学院 528402
无线温湿度测量系统设计
胡云峰 李飞鹏 陈李胜 文毅 电子科技大学中山学院 528402
本系统由控制部分和采集部分组成,实现对环境温度和湿度数据的采集、传输和监控。控制部分以ATmega16单片机为核,单片机接收并处理数据,通过液晶128*64显示当地环境的温度和温度。数据采集部分由ATmega16单片机控制传感器进行数据采集并通过nRF905无线模块进行传输,传感器采用SHT10数字温湿度传感器。测试表明,该系统具有较强稳定性和实用性。
ATmega16;nRF905;SHT10;无线传输
随着电子科技的发展,电子系统的实现方式发生了翻天覆地的变化,电子系统元件构成由分离元件走向了集成电路,信号传输方式也由有线传输走向了无线传输。本文以集成电路为核心,采用无线数据传输方式,实现了无线温湿度测量系统。
如图1,图2所示为低功耗无线温湿度测量系统的发送和接收模块的框图。其中图1为无线发送模块,以Atmega16L[1]为主控制核心,控制温湿度传感器SHT11采集环境的温湿度,然后利用nRF905无线传输模块将采集到的温湿度数据发送给温湿度测量无线接收模块进行相应处理。图2为温湿度测量无线接收模块,以Atmega16L为主控制核心,利用nRF905无线传输模块接收温湿度数据,再通过PC模块显示。
系统软件设计包括温湿度测量和无线收发两个部分。对于温度和湿度,它们并非是急剧变化的物理量,温湿度的变化往往是缓慢进行的,因此针对这个特点对于温湿度的测量采集并非需要时时刻刻都在进行。而是每隔T时间(T根据实际需要而定,本系统选用1 s)采集一次,其余时间由于低功耗的要求使得MCU处于休眠状态。其程序流程如图3所示。其中Atmega16L进入休眠状态是通过对SE编程休眠使能,并且对SM 2.0编程后进入相应的省电模式状态,然后通过定时器的计时中断将Atmega16L唤醒,再进行测量以及数据传输。
对于无线发送而言,在测量发送数据以后,应考虑到数据传输的可靠性,因此加上校验功能,并且为防止偶然的发送失败带来的不良后果,采取定时等待,超时后重发,收到接收主机命令后才进入休眠的模式。具体流程图如图4所示。对于接收端而言,所完成的任务是时刻检测无线接收模块,对于收到的数据进行校验,如果正确收到数据则无线发送相关指令告知接收端,使其能够尽快进入休眠省电模式,并且通过上位机显示温湿度;而接收到错误数据后不做任何处理,等待接收端再次发送数据。
图1 温湿度无线发送模块
图2 温湿度无线接收模块
图3 温湿度测量流程图
图4 发送端程序流程图
本系统分别在A、B、C三个不同环境中测量温湿度,测量结果和参考数据误差小于1%,其测试结果和参考数据如下表:
表1 温湿度测量
该系统采用AVR系列低功耗单片机ATmega16L作为控制芯片,低功耗芯片nRF905作为无线收发模块,设计并实现了基于数字温湿度传感器SHT11的温湿度无线测量系统,由于SHT11具有数字式输出、免调试、免标定、免外围电路及全互换等特点,不仅节省了单片机I/O口资源,使系统整体设计成本下降,还提高了测量精度,同时大大简化了单片机的程序编写。SHT11还具有更优越的信号质量,更快的反应时间和更灵敏的抗外部干扰能力,所以该系统较传统温室测量系统在性能上有了很大的提高。
这些低功耗产品使得该系统耗电量小,并且又特别适合将该系统小型化,智能化,仪表化。无线发射功能又代替了人工抄表的繁琐,使得本系统有着广泛的应用前景。
[1]孙志凯. 基于ATmega16和nRF905的无线射频收发系统设计[J]. 电子元器件应用.2008,(5).
10.3969/j.issn.1001-8972.2010.16.077
本文受电子科技大学中山学院质量工程资助,项目编号:ZLGC2009JXTD01