于 雷
(闽南理工学院 电子与电气工程系,福建 石狮 362700)
基于单片机的水温控制系统设计
于 雷
(闽南理工学院 电子与电气工程系,福建 石狮 362700)
设计了一种用STC89C52单片机和AD592温度传感器为核心的水温控制系统,给出了具体的设计电路,并详细叙述了系统的硬件线路设计要点。该水温控制系统能对水的温度进行实时监测与控制。
单片机;STC89C52;AD592
温度控制是无论是在工业生产过程中,还是在日常生活中都起着非常重要的作用,过低的温度或过高的温度都会使水资源失去应有的作用,从而造成水资源的巨大浪费。特别是在当前全球水资源极度缺乏的情况下,我们更应该掌握好对水温的控制,把身边的水资源好好地利用起来。采用单片机来对温度进行控制,不仅具有控制方便、组态简单、灵活性高、成本低廉等优点,还可以大幅度提高 被控温度的技术指标。提出一种基于单片机的水温自动控制系统,控制对象为不大于100L的水槽,容器为保温桶,与大气相通,可以在一定范围内人工设定水温并实现自动控制,保证水温恒定。
控制系统以STC89C52单片机最小系统为核心,由传感器检测电路、A/D转换电路、单片机系统、加热控制电路、键盘电路、显示电路、电源电路组成。总体结构如图1所示。
图1 温度控制系统框图
传感器检测电路采用集成温度传感器AD592。AD592温度传感器具有较高的精度和线性度,非线性为0.8℃(在-50℃到+155℃的范围内),重复性优于0.1℃,可在A/D采集后,在程序中对采样数据进行非线性补偿,从而达到±0.1℃的测量精度。
LM336-2.5是一个输出2.5V电压的高精度基准电压源。AD8751是一类具有极低失调电流、漂移电流和偏置电流的轨对轨输入/输出运算放大器。由AD592、运算放大器AD8751和带隙基准电压源LM336构成的测温电路如图2所示。
由于AD592测温精度为0.3℃,测温重复性优于0.1℃,因此在程序中使用软件插值算法进行线性化后,系统测温精度可达0.1℃.实际标定步骤如下:
(1)0℃点校准:在保温桶中加入冰水混合物,放入标准温度计(分度为0.1℃)和传感器探头,用高精度数字电压表测量温度检测电路输出电压。等温度检测电路输出电压稳定后,读标准温度计刻度。若温度为0.5℃,则调节温度检测电路中的调零电位器RP1,使检测电路输出电压为20mV。
(2)满度校准:将传感器探头放入沸水中,读标准温度计刻度。若温度为95℃,则通过键盘输入当前的温度值后,按校准按键,存储当前温度所对应的AD值。
图2AD592温度检测电路
(3)传感器精度标定:AD592的测温精度由于其非线性特性,只能达到±0.3℃。若要进一步提高AD592的测温精度,则必须精确地标定温度检测电路在不同温度下的输出电压,将温度与电压的对应关系存入表格,在测控程序中采用软件进行插值补偿,获得±0.1℃的测量精度。
以上校准数据通过程序存储在STC89C52单片机内EEPROM中,以防掉电后丢失。
采用TLC1549A/D转换芯片。TLC1549是10位I2C串行A/D转换器,其引脚排列如图3所示。
引脚功能说明如下:
REF+:基准电压高端,常接+VCC。
REF-:基准电压低端,常接地。
AIN:模拟电压输入端,要求驱动源有大于10mA的电流驱动能力。
CS:片选端,低电平有效。
DOUT:转换后数据输出端,片选无效时为高阻态;片选有效时,在时钟信号作用下数据从高位到低位依次输出。
CLK:时钟端,最高频率达2.1MHZ。
VCC:电源,4.5-5.5V。
GND:数字/模拟地。
当TLC1549基准电压高端接+5V时,其输入电压范围为0-5V,温度测量范围为0-100℃,温度检测电路输出为0-4V。若设定A/D输入量程为0-5V,则分辨率可达0.122℃,满足设计要求。
采用动态显示方式驱动3个七段数码管,分别显示温度的十位、个位和小数位。数码管采用共阴极,由于AT89C52单片机每个I/O的拉电流只有1-2mA,所以在位码和段码都加上了同相驱动器。键盘采用按键开关,经上拉电阻分别接P1.0、P1.1、P1.2口上,起到控制、上调和下调作用。每按上调、下调键,设定温度值可加1、减1。单片机XTAL2、XTAL1接12MHZ的晶振,提供系统时钟基值。另外,RESET接复位按键。具体电路如图4所示。
图3 TLC1549引脚排列
图4 键盘、显示、控制部分电路
加热采用3000W电热管式加热器,使用交流220V电源,单片机系统对加热功率控制采用MOC3061光电隔离器和晶闸管功率控制电路。功率控制电路如图5所示。
图5 功率控制电路
图中MOC3061是具有双向晶闸管输出的光电隔离器,T1是功率双向晶闸管,RL是负载(3000W电热管)。在MOC3061内部不仅有发光二极管,而且还有过零检测电路和一个小功率双向晶闸管。当单片机的P1.6引脚置1时,MOC3061内部发光管截止,其内部双向晶闸管关断,外部大功率晶闸管控制极G没有触发电流,T1不导通,加热器RL断电。反之,当P1.6引脚置0时,MOC3061内部发光管导通,加热器开始加热。
为提高电源效率,稳定电路工作,电源电路采用了可调低压差线性集成稳压芯片MC33296AJ,具体电路如图6所示。
图6 稳压电源电路
限于篇幅,仅提出该系统的硬件设计环节。经调试,实验数据表明该系统能通过键盘输入设定所需温度值,并能自动控制加热器件,使系统达到给定温度值。最小测量分度可达0.122℃,温度控制误差最低可达0.329℃。本系统结构简单,成本低廉,温度控制灵活,检测准确,具有较高的实用价值。
[1] 边元春.单片机应用开发实用子程序[M].北京:人民邮电出版社,2005.
[2] 张毅坤.单片机微型计算机原理及应用[M].西安:西安电子科技大学出版社,1998.
[3] 王兆月.微型计算机接口技术[M].北京:机械工业出版社,2006.
MCU-based Design for Water Temperature Control System
YU Lei
(Department of Electrical and Electronic Engineering,Minnan University of Science and Technology,Shishi 362700,China)
This article designs a water temperature control system based on STC89C52 microcontroller and AD592 temperature sensor,gives the specific circuits and describes the outline and hardware structure of the system in detail.The temperature control system can conduct real-time monitoring and control for the temperature of the water.
microcontroller;STC89C52;AD592
TP202
A
1009-3907(2011)08-0028-03
2011-06-22
于雷(1982-),男,吉林辽源人,讲师,主要从事电子信息工程技术方面研究。
责任编辑:吴旭云