- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
基于AT89C51/55的温湿度自动监测系统介绍
1系统硬件设计
系统结构如图1所示,采用ATMEL公司生产的51系列单片机AT89C55和AT89C51为核心,其中主机采用AT89C55、从机采用AT89C51。从机负责64点的数据检测,各检测点的温度和湿度经过温、湿度传感器及其转换电路转变为电压信号,经过矩阵网络进行信号选择,所得信号送到相应的信号放大整理电路放大,再进入A/D转换器,进行模数转换,将数字量送入从机,再经从机的数据处理,送给LED进行显示,同时定时传送给主机AT89C55,主机负责收集各粮仓内的数据(可监测50~100个粮仓),实现数据的保存、打印以及调用历史数据,并可巡回显示各粮仓的及时温湿度及报警状态。
AT89C55/51芯片是由ATMEL公司推出的51系列8位单片机,AT89C55片内主要有20KB Flash存储器、256字节片内RAM,4个8位的双向可寻址I/O口,1个全双工UART(通用异步接收发送器)的串行接口、3个16位的定时器/计数器、多个优先级的嵌套中断结构,以及一个片内振荡器和时钟电路。
本系统中主机利用了AT89C55丰富的20KB闪存资源永久保存实时的测量信息、历史的测量数据等关键结果,从机完成数据采集、传送。主机位于监控室,从机位于各粮仓内,主从机之间有一定的距离,信号的传输采用串行异步通信方式,AT89C55/51单片机内部集成的UART模块,适合于同其他计算机系统以及单片机外扩的外设芯片进行通信,可实现全双工异步、半双工同步主控和半双工同步从控三种工作方式。本系统中利用其UART模块工作于全双工异步通信方式,其中TX为发送线、RC为接收线,利用RS-422驱动器和接收器,如MC3487和MC3486芯片,实现信号的稳定传输。
测量电路由传感器、矩阵测量网络、多路模拟开关及放大电路的组成。测温范围:-45~+45℃,±0.5℃,测湿范围:0~99%RH,±0.8%RH。温度传感器选用集成温度传感器AD590M,其特点为线性电流输出1μA/K,温度范围-55~150℃,电压输入/电流输出,激光修正到±0.5℃校准精度(AD590M),线性度可达±0.3℃/FS。使用时可将AD590M插入粮仓堆内。针对湿度测量范围及精度要求,湿度传感器选用湿敏集成传感器IH-3602。这是一种电容式湿敏传感器,内含调理电路和温度补偿电路,输出为0.8~4V的直流电压,可经多路开关直接输入A/D转换器。
矩阵测量网络由多路模拟开关CD4051、CD4052和温度传感器AD590、湿度传感器IH-3602组成,其连接方式如图2所示。测温(测湿)矩阵由CD4051的8个模拟开关,CD4052的4个模拟开关和32个AD590,(32个IH-36021)组成。各个测量元件的选通由地址码控制,其中由CD4051、CD4052,AD590、IH-3602组成的矩阵网络中,两片CD4052的4输入线A、B及CD4051的3输入线A、B、C共7位地址码由AT89C51的P0口提供,CD4052的INH直接接高电平,而CD4051的INH由P2口提供,温度和湿度输出信号即CD4052的OUT分别接温湿度放大电路。
该多路温湿度监测系统的软件采用模块化方法设计,主要包括主机程序、从机程序两大部分。从机程序设计通常先进行初始化,如设置中断、定时器、串行口、外部可编程器件的初始化等,然后循环执行主要功能,如定时、数据采集、数字滤波、显示以及定时将数据传递给主机。主机定时接收从机发送的采集信号,保存并实时显示,其流程如图3所示。上电复位后显示不同粮仓位号、温湿度值及其测量时间,并调用键盘管理程序模块及接收程序模块。为防止程序跑飞,主从机分别设计看门狗电路以保证AT89C55和AT89C51正常工作。
本设计中由于采用了AT89C51/55单片机,性能可靠电路简单,适于批量生产,而且,系统中还可充分利用AT8951/55中未用到的软件硬件资源,系统有再开发性。