设计和实现一种基于个域网技术的温湿度监测系统。结合无线传感器的网络技术,采用ATmega16L单片机作为控制核心,以及可以支持最新版的ZigBee 2007/Pro 协议栈。通过该系统应用于实验室后达到了低功耗、低成本、可扩充性好、易于维护的预期效果,得出基于个域网的无线温湿度传感器的设计满足了低成本、低功耗要求的结论。
0 引言
医学实验大多都要在确定的温度与湿度下展开,尤其是微生物实验,对于恒温、恒湿的要求更高,实验室的温度与湿度的控制对于医学实验能否成功、实验结论是否可信有着重大的影响。在实验室建设实时反馈温湿指标的温湿监测系统成为了一流医学实验室的必选项。人工记录是大部分实验室温湿管理的主要方式,效率低下,耗费大量的人力成本,而固定的有线温湿度监测仪则只能放置在特定的区域,一方面是布线复杂、建设成本高,另一方面约束了测样品、工况和试验区域的范围,不利于生物实验的大范围开展。
随着无线个域网技术的兴起,实验室的无线温湿监控成为必然的趋势。无线个域网(Wireless Personal Ar-ea Network,WPAN)是为了实现活动半径小、业务类型丰富、面向特定群体、无线无缝的连接而提出的新兴无线通信网络技术。本文结合无线传感器的网络技术,建立基于个域网的温湿度传感器,实现实验室的实时监测、多点无线测量、自动记录等功能,通过无线-有线-网络的传输架构使实验人员无需轮值守也能实时了解实验室的温湿指标,达到了生物体实验室温湿控制稳定性好、精度高、操作方便的预期效果。
1 系统概述
本系统主要由一个协调器和三个终端设备组成。
协调器的功能主要是启动整个网络和接收三个终端设备发送的温湿度数据,然后ATmega16L 把数据通过异步串行口与PC机的上位机进行通信。三个终端设备的硬件系统是一样的,主要的功能都是ATmega16L 先控制AM2302 模块采集本地的温湿度数据,然后显示在12864 液晶屏上,最后通过CC2530 把温湿度数据发送给协调器。
协调器的电路系统结构框图如图1所示。
2 硬件电路设计
2.1 5 V电源电路设计
5 V电源电路如图2所示,DC是9 V适配器的输入接口,适配器把市电220 V的交流电压转变成9 V的直流电压。BT1是9 V电池的输入接口。S3是电源选择端,分别可以选择电池供电和AC?DC供电。D2是整流二极管,在这里是起到防反接的作用。CP4和C17分别是稳压芯片输入端的高频滤波和低频滤波。LM1086?5.0 V是稳压芯片,把9 V的DC输入转变成5 V的DC输出,驱动电流可达1.5 A.CP3和C32分别是稳压芯片输出端的高频滤波和低频滤波。P11是排针,方便5 V扩展输出。
2.2 3 V电源电路设计
CP1 和C34 分别是稳压芯片输入端的高频滤波和低频滤波。RT9161 是3 V 稳压芯片,芯片的输入电压由LM1086的5 V输出,所以RT9161实现的是5~3 V的DC?
DC.CP2和C33分别是稳压芯片输出端的高频滤波和低频滤波。L4 是1 μH 的电感,在这里的作用是把模拟地和数字地分开。P12是排针,方便3 V扩展输出。P10是排针,方便GND扩展输出。
2.3 ATmega16L最小系统设计
D1、R5 、S2、C13 组成的是ATmega16L 的复位电路,在单片机正常工作的情况下,复位脚上拉了10 kΩ的R5 ,经过C13 的电容充电,单片机的复位脚保持高电平,当S2按钮按下,单片机的复位脚被拉成低电平,单片机就进入复位状态,ATmega16L是低电平复位。Y1、C14 、C15组成的是ATmega16L的起振电路,Y1是选择了8 MHz的无源晶振,C14 和C15 是起振电容,取值范围在20~30 pF之间。ISP接口是给单片机烧写程序时使用的。S10,S11,S12 , S13, R13, R14 , R15, R16 是外部输入设备,供扩展使用。
C16 是单片机ADC 模/数转换模块的基准电压滤波使用的。L5, C11, C31 组成的是π型滤波,把LM1086?5.0 V 的5 V模拟电源进行滤波,再提供给单片机使用。P5和P6是单片机所有引脚的扩展输出。
2.4 AM2302温湿度采集模块设计
AM2302温湿度模块的SDA数据口上拉一个5.1 kΩ的R17 与单片机的PC0脚相连,传输的通信协议是单总线协议。典型应用电路中建议连接线长度短于30 m时用5.1 kΩ上拉电阻,大于30 m 时根据实际情况降低上拉电阻的阻值。电路图如图3所示。
3 系统软件设计
软件部分主要分为ATmega16L 单片机模块、AM2302温湿度采集模块、12864液晶显示模块、DB9异步串行口收发模块、CC2530F256无线收发模块。
4 设计过程的问题及解决
在设计的初期,RT9161?3.0 V 稳压芯片的输入是直接9 V 输入的,这样高的输出与输入压差比,会让芯片发热严重,功耗增大,后来就改接到LM1086?
5.0 V的输出端。ATmega16L单片机模块是5 V供电的,而CC2530F256 射频系统是3 V 供电的,所以两个模块通信就需要电平转换,经测试后,外接了一个万能板搭了一个5 V 电平与3 V 电平之间的电平转换。程序的设计初期,用ATmega16L 和CC2530F256 的SPI 接口进行通信,因为SPI 是同步串行接口,通信速度相对较快,但是在程序调试时,发现当ATmega16L充当主机接收CC2530F256 的数据时,不能正常接收,所以后来改用了异步串行口进行通信,双机系统的传输速率就相对慢了。因此,推荐使用现在性价比较高的ST公司推出的基于ARM cortex?M3 内核的STM32 微处理器作系统控制核心。另外,如果需要远距离传输数据,可以加上一个功率放大的发射前端CC2591,这样传输距离可达2 000 m左右。
5 结语
本文主要介绍基于个域网温湿度监测系统的硬件及软件设计的部分功能,其架构是下位机以单片机为控制中心,通过传感器采集温湿度数据,借助通信模块的传输功能,将数据传至上位机,并使用数据库存储数据,再通过网络建立计算机、手机等便携计算设备的共享与发布平台,真正地帮助实验工作人员实现3A(Anytime,Anywhere,Anyway)监控实验室温湿度指标,更高效、及时地满足医学实验的控制稳定、调控及时的工作要求。