《电子技术应用》
您所在的位置:首页 > 嵌入式技术 > 设计应用 > 基于低功耗器件的无线环境监测器设计
基于低功耗器件的无线环境监测器设计
来源:电子技术应用2011年第5期
吴学军, 雷 雄
襄樊学院 物理与电子工程学院电子系,湖北 襄樊 441053
摘要: 结合低功耗、低成本电路的设计方法,提出一种基于AVR单片机和无线通信模块nRF24L01的无线环境监测器的设计方案。实现了对环境温度、光照度等参数的实时在线监测。
中图分类号:TP212.9;X85
文献标识码: A
文章编号: 0258-7998(2011)05-0138-04
Design of wireless environment monitor based on low power devices
Wu Xuejun, Lei Xiong
College of Physics and Electronic Engineering, Xiangfan University, Xiangfan 441053, China
Abstract: Combining with the circuit′s design method of the low power and the low cost, this paper put forward a design scheme of wireless environment monitor based on the AVR single-chip microcontroller and the wireless communication module nRF24L01. This design realized real-time and online monitoring of the environment parameters such as temperature, illuminance and so on.
Key words : environment monitoring; low power; single-chip microcontroller; wireless communications; temperature sensor


    环境问题已经成为人们关注的焦点,如何有效地进行环境监测已经成为时下热门课题。目前,无线环境监测系统中的传感器网络节点分布在监测区域的各个角落,一般采用电池供电,要保证系统的使用寿命必须实现低功耗的设计[1]。本文结合无线传感器网络技术,提出了一种低功耗、低成本的无线环境监测器的设计。
1 总体电路结构及工作原理
1.1 总体电路结构

    无线环境监测器主要由一个监控终端和多个监测节点组成,如图1所示。通过使用由大量分布式的微型监测节点组成的传感网络,用户可以对感兴趣的环境进行不间断的高精度数据采集与监控。监测节点是其基本单元,监控终端是其核心控制端,其稳定运行是整个系统可靠性的基本保证。

    系统总体电路结构框图如图2所示,包括两个部分:监测节点控制系统和监控终端控制系统[2]。

1.2 工作原理
    监测节点和监控终端[3]。监控终端控制整个系统的运行,通过无线模块发送控制命令,监测节点收到控制命令并进行处理分析,然后通过温度传感器和光照传感器采集温度和光照的有无信息,接着通过无线模块把采集到的有用数据打包发送给监控终端,监控终端收到节点发送来的数据进行分析和处理,然后通过液晶显示器进行节点温度和有无光照等内容的显示。监控终端还可以通过实时时钟同步环境监测信息,保证采集信息的实时性和有效性,并通过键盘设置单个节点的配置信息,如设置报警温度阈值等。如果检测到节点的温度超过设定值,则启动报警电路工作,并在液晶显示器上显示报警信息。
2 系统的硬件设计
2.1 监测节点电路设计与选择

    监测节点电路原理图如图3所示。

2.1.1 处理器模块
    考虑到产品的性价比、处理器的速度以及供电方式等因素,选择ATMEL公司的AVR系列单片机ATmega8L[3-4]。ATmega8L是一款采用低功耗 CMOS工艺生产的基于AVR RISC(精简指令集)结构的8 bit单片机。其大部分指令的执行时间仅为一个时钟周期,运行速度约1 MIPS/MHz,比普通单片机高出10倍。

 


    为了便于程序的调试和以后产品的升级,保留监测节点的ISP单片机程序下载接口,如图3所示。其中LED发光二极管D2有两个作用:(1)下载指示。(2)当监测节点正常工作时,发光二极管作为工作状态指示(低亮度闪烁);当节点温度过高时,发光二极管保持高亮度闪烁,用单片机自带的PWM实现LED的亮度可调。

    监测节点的物理地址设置使用8位拨码开关,其接口电路如图3所示。由于ATmega8L单片机I/O口内部自带上拉电阻,故可以省去大量外部上拉电阻。
2.1.2 传感器模块
    根据系统要求,需要检测温度和光照两种环境信息。温度传感器的种类分为模拟和数字两大类。如温度传感器AD590,采集到的是模拟量,需要使用AD转换,成本较高。而美信公司的单线数字温度传感器DS18B20,不但简单好用,而且测量温度范围宽、精度高。
  光照有无的检测很简单,常用的方法是使用模拟器件,如光敏电阻或者光电三极管。通过三极管实现检测信号的放大与处理,得到与光照有无相应的高低电平。因为光电三极管内部自带信号放大电路,故本监测器选择光电三极管作为光照有无的监测,然后通过单片机自带的12 bit AD监测光照,不仅简单、成本低、体积小,而且还可以实现光照强度的简单检测。
2.1.3 无线通信模块
    无线通信模块种类繁多,最基本的有315/433 MHz射频模块、红外通信、蓝牙模块、GSM模块、2.4 GHz无线通信模块等。315/433 MHz的射频模块不利于调试,需要手动编解码实现无线数据通信,且数据很不稳定;红外通信具有方向性且通信距离有限;蓝牙模块通信距离在10 m左右且通信数据复杂难以编程;GSM模块虽然通信距离远但是价格昴贵;2.4 GHz无线通信模块种类较多且距离远,通信数据稳定可靠,价格也适中,最常用的是nRF24L01[5],其功能强大、性价比高,故本监测器选用nRF24L01。
    nRF24L01使用2.4 GHz全球开放ISM 频段[6],最高工作速率为2 Mb/s,高效GFSK调制(抗干扰能力强、特别适合工业控制场合),且设立了126个频道,可以满足多点通信和跳频通信的需要;并内置硬件CRC检错和点对多点通信地址控制,可以保证无线数据传输的稳定可靠,其功耗低(在1.9 V~3.6 V工作状态下,待机模式电流为22 ?滋A,掉电模式下仅为900 nA);而且内置2.4 GHz 天线,体积小巧。另外,NRF24L01模块可软件设置地址,只有收到本机地址时才会输出数据(提供中断指示),可直接与各种单片机连接使用,软件编程也非常方便。
2.2 监控终端电路设计与选择
    监控终端整体电路原理图如图4所示。

2.2.1 处理器模块
    因为监测终端的外部设备接口较多,如果使用ATmega8来控制,I/O端口不够用。因此,监测终端电路的单片机选用ATmega16[3],相对于ATmega8L其ROM容量多了一倍(为16 KB),可以容纳更多的程序代码和数据的存储,便于液晶显示的字符库的存放,且I/O口为4组共计32个,且其JTAG还支持扩展的片内调试功能。
2.2.2 无线通信模块
    监控终端无线通信模块与监控节点模块都选用nRF24L01,唯一不同只是模块与单片机的接口不一样。因为监控终端系统供电电压为5 V,而nRF24L01模块的最大工作电压仅为3.6 V,所以数据接口之间使用了电阻降压,以免单片机电压过高烧坏无线模块。降压电阻的阻值大小由nRF24L01器件手册计算得出为2 k?赘即可满足设计要求[6]。
2.2.3 实时时钟模块
    为保证检测到的信息的实时性,要求有实时时钟模块,而时钟芯片是最好的解决方案。时钟芯片的种类繁多,典型的芯片主要有DS1302、PCF8563和DS12CR887等。其中DS1302是三线SPI接口,时序简单;PCF8563为两线I2C接口,时序较复杂;DS12CR887功能强大,但体积大、价格昂贵,且为8 bit总线接口。故本文选用DS1302芯片。
2.2.4 按键设置模块
    按键主要用来设置节点的相关配置信息和查询相关记录等信息。由于按键数目较少,所以使用独立按键接口,分别为向上、向下、取消、确认4个功能按键。此按键是低电平有效,当有按键按下时,与其相连接的单片机引脚检测到按键信号,进行相应的处理后再输出。
2.2.5 报警模块
    报警模块主要负责节点过温报警等功能。ATmega16单片机的I/O驱动电流很大,足以驱动无源蜂鸣器和有源蜂鸣器,但是驱动音效还不够大,所以本监测器使用一个PNP型的三极管8550驱动无源蜂鸣器。因有源蜂鸣器虽编程简单、频率固定,但不容易改变其音效。而无源蜂鸣器的频率可以随意设置,可以达到各种不同的音效。
2.2.6 显示模块
    由于监控终端需要显示的内容较多,所以选择比较常用的点阵图形式液晶显示模块LCD12864,其与单片机的接口电路如图4中所示。其中可变电阻R13为精密可调电位器,用来调节液晶显示的对比度。液晶的背光常亮,在没有光照的情况下,用户也能够正常查看显示信息等。
2.2.7 串口通信模块
    串口通信接口电路一般用来与上位机通信,实现数据交换和控制等信息。最常用的串口通信接口芯片为美信公司的MAX232。MAX232不但价格适中,外围电路也简单,但如果利用分立元件实现RS232与TTL电平之间的简单转换(如图5中与CON1相连电路)替代MAX232,其电路更加简单且成本低,经实践能高速且稳定地与单片机串口通信,所以采用该接口电路可以作为监控终端的扩展电路实现以后系统产品功能的升级。
2.2.8 电源模块
    监控终端采用5 V/1 A的便携式开关电源供电。由于无线模块nRF24L01的低电压工作特点,所以需要一个DC-DC转换模块,本监测器采用AMS1117-3.3稳压芯片,实现3.3 V电压输出供电给nRF24L01。
3 系统的软件设计
    软件设计分为两部分:监控终端的程序设计和监测节点的程序设计,分别如图5、图6所示。监控终端的程序使用模块化设计,包括:nRF24L01驱动模块、按键操作模块、DS1302驱动模块以及LCD12864液晶显示驱动模块。监测节点的程序设计相对简单,主要包括:nRF24L01驱动模块、DS18B20驱动模块和AD采集三个模块。整个系统的程序代码编写以及编译均在软件ICCAVR V6.31A集成开发环境下完成。

     本文针对当前环境监测中面临的网络布线困难、成本高及实时性差等问题,提出了一种低功耗、低成本的无线环境监测器的设计。重点讨论了无线环境监测器的硬件电路的设计与器件的选择。
    本设计中采用无线传输芯片简化了系统,可配置多种传感器,提高了通用性,具有较好的便携性和组网的灵活性。选用了低功耗性价比高的器件,整个系统具有实用性强、可靠性高、测量精度高、体积小、低功耗和低成本等特点,体现了无线环境监测系统数字化、智能化、无线化的优点。同时该系统也具备一定的通用性,可广泛应用于工业、医疗卫生和日常生活等环境监测。
参考文献
[1] 李忠成.无线环境监测系统设计及关键技术分析[J].电信快报,2008,3:3-5.    
[2] 许亮,刁修睦,周辉军,等.基于MSP430F149的无线环境监测传感器系统设计[J].国外电子元器件,2006(12):4-7.
[3] 马潮, 詹卫前, 耿德根. ATmega8原理及应用手册[M]. 北京:清华大学出版社,2003.
[4] 杨正忠,耿德根.AVR单片机应用开发指南及实例精解[M].北京:中国电力出版社,2008.
[5] 曾勇,杨涛,冯月晖.基于nRF24L01的超低功耗无线传感器网络节点设计[J].电子技术应用,2008,7:45-48.

此内容为AET网站原创,未经授权禁止转载。