基于单片机的恒温测控系统设计
2013-08-11关贵清林建平肖顺根宁德师范学院物理与电气工程系福建宁德352100
关贵清,林建平,肖顺根 (宁德师范学院物理与电气工程系,福建 宁德352100)
恒温箱可以用来控制温度,在工农业及医学等领域有着广泛应用,其关键技术是利用恒温测控系统来保持温度的稳定,恒温测控系统包括人工控制和自动控制2种恒温测控系统[1-3]。为了避免人工控制恒温测控系统控制温度不稳定的缺点,笔者对基于单片机的恒温测控系统进行了设计研究。
1 系统硬件设计
以高速单片机STC89C52为核心控制器件,采用数字温度计芯片DS18B20构成测温单元并将温度显示于1602液晶显示器上,应用固态继电器构建开关功放调节加热器工作状态,系统框图如图1所示。
1.1 STC89C52控制电路模块
图1 系统结构框图
STC89C52单片机内部有4KB单元的程序存储器,不需外部扩展程序存储器,而且其I/O口也能够满足系统需求。STC89C52单片机最小系统模块如图2所示,其中P0口接10K的上拉电阻以便与显示模块进行通讯。
图2 控制器模块电路图
1.2 键盘与温度检测模块电路
键盘和温度检测模块电路图如图3所示。采用4×4矩阵键盘接单片机P1口,利用DS18B20模块对水温进行采样,并与单片机通讯以实现对水温的控制。
1.3 继电器模块电路
继电器模块电路主要控制加热器的通断,其与单片机的P2.6口进行通讯(见图4)。
1.4 1602液晶显示模块电路
1602液晶显示模块按照总线接法来连接,其数据口接单片机的P0口 (见图5)。
图3 键盘与温度检测模块电路图
图4 继电器模块电路图
图5 1602液晶显示模块电路图
2 系统软件设计
以传统的PID控制算法为核心,通过实验测试的方法获得控制参数范围,然后应用试凑法进行参数设定,最终达到较为快速、精确的控制。相关程序采用C语言编写。
2.1 PID算法
模拟PID控制系统原理框图如图6所示。PID控制系统是将给定值r(t)与实际输出值c(t)的偏差的比例 (P)、积分(I)、微分 (D)通过线性组合构成控制量,从而对控制对象进行控制。PID控制系统各校正环节类型及其作用如下[4-5]:①比例环节。即时成比例地反应控制系统的偏差信号e(t),偏差一旦产生,调节器立即产生控制作用以减小偏差。②积分环节。主要用于消除静差,提高系统的无差度。积分作用的强弱取决于积分时间常数TI,TI越大,积分作用越弱,反之则越强。③微分环节。能反应偏差信号的变化趋势 (变化速率),并能在偏差信号的值变得太大之前,在系统中引入一个有效的早期修正信号,从而加快系统的动作速度并减小调节时间。
图6 模拟PID控制系统原理框图
2.2 系统软件设计
采用循环查询方式来显示和控制温度,系统主要工作流程的程序如下:
3 试验分析
用继电器模块控制加热器对1L水进行加热,用键盘设定需加热温度值,观察1602液晶显示器所显示的稳定时的水温值和环境温度降低时温度控制的静态误差。多次调试并设定PID参数改善系统。试验结果如表1所示。从表1可以看出,温度设定范围为20~80℃,最小区分度达到0.1℃;1602液晶显示器显示水的实际温度和设定温度值均很稳定,且温度稳定时,温度控制的静态误差≤0.5℃。
表1 测试数据表
4 结 语
设计的自动恒温控制系统采用了DS18B20单总线数据传输方式,并且合理搭建了STC89C52单片机平台。采用传统PID算法,使被控对象的温度具有响应时间小、超调量少、控制精度较高、稳定性较好等优点。因此,该系统可以广泛应用在电热水壶、热水器、暖水壶等小家电上,具有良好的市场开发前景。
[1]孙梅,王彦良 .自动控制原理及应用 [M].北京:北京交通大学出版社,2007.
[2]谭浩强.C语言程序设计 [M].北京:清华大学出版社,2005.
[3]张迎新 .单片机应用原理及应用教程 [M].北京:电子工业出版社,2003.
[4]罗杰,谢自美 .电路线路 [M].第4版 .北京:电子工业出版社,2008.
[5]陈永真,韩梅 .硬件电路设计精解 [M].北京:电子工业出版社,2009.