黄小东,习友宝
(电子科技大学 电子工程学院,成都 611731)
作为两个比较重要的物理量,温度和湿度在科学研究、工农业生产、仓库管理、日常生活等方面都需要进行精确的测量。由于传感器技术的发展,温湿度测量技术也正朝着微型化、智能化、系统化的方向发展。Atmel公司推出的AT32UC3A0512是一款基于AVR32UC RISC处理器核的32位SoC微控制器,专注于低功耗、高代码密度、高性能、低成本等方面的应用。本检测仪基于AT32U C3A0512微控制器,具有功耗低、便携、使用方便等特点。
本检测仪主要包括电源、主控制电路、温湿度采集电路、LCD显示电路、ZigBee发送电路等几个部分,检测仪硬件系统结构框图如图1所示。
图1 检测仪硬件系统结构框图
温湿度采集电路采集环境的温湿度数据,并将数据送到主控制电路,AT32UC3A0512作为主控制电路的微控制器对数据进行处理,AT32UC3A0512将处理后的数据送到LCD上进行实时显示,并可通过ZigBee发送电路发送数据。
本检测仪的供电电源为7.2V的可充电电池,通过稳压芯片AMS1117-3.3转换成3.3V电压为检测仪供电,电源电路如图2所示。
图2 电源电路
AT32UC3A0512是一款高性能、低功耗的32位SoC微控制器,在对性价比敏感的嵌入式应用中具有明显优势。其内部集成了GPIO、多层次的总线系统、512KB高速Flash、64KB高速可全速单周期访问的SRAM、USB 2.0控制器与接口、以太网 MAC 10/100Mbps接口、同步串行协议控制器、通用同步/异步收发器(USART)、16位PWM控制器、10位高性能ADC、16位音频比特流DAC等许多常用电路和模块,大大简化了外围电路设计,性能也有较大提高。主控制电路以AT32UC3A0512为核心,其外围电路主要有晶振电路和按键复位电路。晶振电路为AT32UC3A0512提供振荡源,按键复位电路中当按键被按下时进行上电复位,AT32UC3A0512的工作频率可达66MHz。
DHT11数字温湿度传感器含有已校准的数字信号输出,包括一个电阻式感湿元件和一个NTC测温元件,具有功耗低、抗干扰能力强、稳定性好、性价比高等特点,在医疗、消费电子、气象、自动控制等领域有较广泛的应用。DHT11采用单总线技术,与微控制器接口简单,温湿度采集电路如图3所示。
DHT11温湿度测量分辨率为8位,数据分为整数部分和小数部分,一次完整的数据传输为40位,具体数据格式为:
8位湿度整数数据+8位湿度小数数据+8位温度整数数据+8位温度小数数据+8位校验数据
数据传送正确时,校验数据等于“8位湿度整数数据+8位湿度小数数据+8位温度整数数据+8位温度小数数据”所得结果的末8位。
图3 温湿度采集电路
本检测仪采用图形点阵液晶显示器TG12864E进行数据显示,TG12864E主要由行/列驱动器和128×64全点阵液晶显示器组成,可以进行图形显示。进行汉字显示时,每个汉字为16×16点阵,可以显示4行8列。为了减小功耗,采用串口接线工作方式,LCD显示电路如图4所示。
图4 LCD显示电路
AT86RF212是一款专为低成本的IEEE 802.15.4标准ZigBee技术、6LoWPAN技术与高数据传输速率的ISM应用而设计的低功耗、低电压700/800/900MHz频段收发器,提供了天线和微控制器之间的完整无线电接口。
利用AT86RF212设计的ZigBee发送电路如图5所示。平衡/不平衡转换器0900BL18B100用于将50Ω单端RF输入阻抗转换成100ΩRF端口差分输入阻抗,C1与C2提供RF输入的交流耦合,微控制器通过SPI接口与其通信。数据先在微控制器中产生PHY字节头(PHR)和PHY服务数据单元(PSDU),然后通过SPI接口传输到AT86RF212的数据缓冲区并自动加上同步头SHR,接着使AT86RF212处于发送状态,最后通过天线将数据发送出去。SLP_TR引脚主要使AT86RF212芯片工作于睡眠、发送或接收状态;串行时钟线SCLK引脚、主机输入/从机输出数据线MISO引脚、主机输出/从机输入数据线MOSI引脚、低电平有效的从机选择引脚,这4个引脚为SPI接口;DVSS为数字接地端。
本检测仪的软件开发工具为AVR Studio 5,使用C语言进行编程。AVR Studio 5是Atmel公司最新开发的针对AVR单片机的集成开发环境,在AVR Studio 4的基础上增加了对32位微控制器软件开发的支持,功能更强,操作简单,使用方便。
进行检测仪软件开发时,采用模块化的编程方法,主要分为主程序、温湿度采集子程序、LCD液晶显示子程序、ZigBee发送子程序等几个部分。温湿度采集子程序是检测仪软件开发的关键部分,主要有DHT11初始化函数、DHT11与AT32UC3A0512通信函数、DHT11数据读取函数等。由于接收到的数据的每一个字节的位为由低位到高位,每一个字节数据需要反序。DHT11与AT32UC3A0512通信函数、DHT11数据读取函数的程序代码如下:
图5 ZigBee发送电路
本文介绍了一种基于AT32UC3A0512单片机的温湿度检测仪的设计与实现,具有体积小、功耗低等特点,在实际使用时得到了较好的效果。在设计时主要考虑了低功耗和便携的要求,采用3.3V低电压供电,并对电源进行了一定的管理。本检测仪可以应用于蚕室、病房、养殖厂等多种环境。
[1]张中华,王泽勇,高晓蓉,等.基于SHTl0的便携式数显温湿度检测仪的设计[J].现代电子技术,2009(17):137-139.
[2]Atmel Corporation.AT32UC3A0512Datasheet[EB/OL].[2011-10].http://www.atmel.com/dyn/resources/prod_documents/doc32058.pdf.
[3]倪天龙.单总线传感器DHT11在温湿度测控中的应用[J].单片机与嵌入式系统应用,2010(6):60-62.
[4]Sensirion Company.DHT11Datasheet[EB/OL].[2011-10].http://www.sensirion.com.
[5]Tinsharp Industrial.TG12864EApplication Notes[EB/OL].[2011-10].http://www.Tinsharp.com.
[6]Atmel Corporation.AT86RF212Datasheet[EB/OL].[2011-10].http://www.atmel.com/dyn/rsources/prod_documents/doc8168.pdf.
[7]Atmel Corporation.AVRStudio5Introduction [EB/OL].[2011-10].http://www.atmel.com/dyn/.products/tools_Card.asp?source=cms&tool_id=17212.
[8]郭渊博,杨奎武,赵俭,等.ZigBee技术与应用:CC2430设计、开发与实践[M].北京:国防工业出版社,2010:1-30.
[9]张冬林,李鑫,戴梅,等.基于DHT11的低成本蚕室温湿度自动控制系统的设计[J].现代农业科技,2010(18):14-15.