一种基于单片机的温度监控系统设计
胡晓玲,康海静
(成都理工大学工程技术学院四川乐山614007)
摘要:对现场参量准确的测量是高性能温度控制的基础。以单片机AT89C51作为温度监控核心部件,采用热电偶温
度传感器、运算放大器、A/D转换器等构成温度采集模块,通过对采集到的温度数据值进行比例积分微分运算处理,并采用
RS485与上位机进行通信,实现一种温度监控系统的设计。实验表明该系统具有转换速度快、精度高、控制能力强等特点。
关键词:单片机;温度传感器;比例积分微分控制;数据采集
中图分类号:TN911.7文献标识码:A文章编号:1004-373X(2009)17-095-03
DesignofTemperatureMonitoringControlSystemBasedonSingleChipMicrocomputer
HUXiaoling,KANGHaijing
(EngineeringandThechnicalCollege,ChengduUniversityofTechnology,Leshan,614007,China)
Abstract:Theexactmeasurementoffieldparameterlaythefoundationforobtainingexcellenttemperaturecontrolper2
formance.Atemperaturemonitoringcontrolsystemisdesigned,whichisbasedonMCUAT89C52.Thetemperatureacquisi2
tionmoduleismadeupofthermocoupletemperaturesensor,operationamplifiers,A/Dconvertersetc.ThesampledataisPro2
cessedwithProportional-Integral-Derivativecontroller(PIDcontroller)andRS485isusedtocommunicatewiththeupper
computer.Themeasuredresultsindicatethatthesystemhasmeritsoffastconvertedresponse,higherprecision,excellentabili2
tyintemperaturecontrol.
Keywords:singlechipmicrocomputer;temperaturesensor;PIDcontrol;dataacquisition
收稿日期:2009-02-18
在工业控制领域,温度控制的应用非常广泛,控制
精度的高低直接影响到产品的质量及使用寿命,研究和
设计高性能的温度控制系统具有非常重要的意义。目
前控制算法的多样化也为温度控制提供了便利条件,应
用较为普遍的有比例积分微分(PID)控制、模糊控制
等[1-5]。本文根据某温控设备的控制要求设计了一种
以单片机为核心的监控系统。系统采用热电偶温度传
感器测温,利用位置式PID算法,实现了温度的实时监
测、超限报警、显示与控制等功能。
1系统硬件设计
本系统主要由热电偶温度传感器、OP27低噪声精
密运算放大器、双积分型A/D转换器ICL7135、可编程
定时/计数接口芯片8253、AT89C51单片机等器件组
成[6]。系统框图如图1所示。
1.1电源模块
电源模块分模拟电源和数字电源两大部分,分别对
本机的模拟电路和数字电路供电,地线各自独立,按
A/D转换器的要求只在A/D转换器处将模拟地和数字
地相连。数字电源和模拟电源都采用三端稳压块稳压,
在个别要求电源精度较高的场合选用低温漂稳压二极
管进行二级稳压。
图1系统框图
1.2温度采集模块
温度数据采集模块[7,8]以热电偶温度传感器为核
心部件,将温度变化量转化为电压信号,经精密运算放
大器OP27进行放大,放大后的电压信号输出到
ICL7135双积分型A/D转换器进行高精度模数转换。
A/D转换后,往往要进行相应的换算,得到系统所需要
的数据。之后将数据送往单片机,此信号一部分送往显
示模块,以提供实时数据的显示;另一部分送往控制模
块,将实时数据与目标数据对比,继而进行控制。图中
采用8253接口电路是为系统升级为具有多路温度检测
控制功能而设置的。
59
《现代电子技术》2009年第17期总第304期测试·测量·自动化
1.3输出控制
输出控制电路主要包括驱动和执行两部分。可用
达林顿阵列ULN2003来作驱动,进而控制交流固态继
电器(AC-SSR)中的双向可控硅的关断和导通,以便
切断或接通加热电源。原理是采用双向可控硅交流“调
功”方式控制加热电热丝发热量,即在每一个控制周期
时间内,改变加在电热负载上交流电压半波的个数来调
节电热丝的发热量。
1.4显示与报警
显示模块由LED数码管和驱动电路组成。报警系
统采用声光报警由发光二极管,扬声器及驱动电路组
成,当单片机发出超限报警信号,将驱动发光二极管和
扬声器实现报警。
1.5看门狗电路
为了防止系统受干扰而使程序丢失,或走进死循环
而使系统死机,应加入看门狗电路,以保证系统的可靠
性和稳定性。本系统采用常用的集成看门狗电路
X5045,X5045是一种集看门狗、电压监控和串行
E2PROM三种功能于一体的可编程电路。
2系统软件设计
系统程序的控制思想如下:设置目标温度后,系统
对炉温采样,并通过预设温度、当前温度、历史偏差等进
行PID运算产生输出参数,通过该参数控制加热时间,
从而调节加热器的平均功率,实现系统的PID控制。
整体功能通过主程序、串行通信中断服务程序、PID控
制子程序等配合实现。这里主要介绍主程序流程和
PID控制子程序流程。系统首先初始化I/O、8253、定
时器、UART等部件,然后进入主循环,进行温度采样
和相关处理。本系统软件设计的核心思想就在于实现
PID控制,在系统运行过程中通过按相应键重新设置目
标温度。主程序流程如图2所示。
本方案利用位置式PID算法,将温度传感器采样
输入作为当前输入,接着与设定值进行相减得偏差,再
进行PID运算产生输出结果,然后控制定时器的时间
进而控制加热器。由中断定时器提供溢出频率为
64Hz的中断信号,配合主程序的PID运算结果来确定
加热时间,实现加热器功率调节,该部分子程序流程图
如图3所示。
上位机软件使用Delphi[9,10],由于Delphi不提供
串口通信的ActiveX控件,仅有API函数可以使用,但
API函数编程较为复杂,因此可将微软公司提供的Ac2
tiveX控件MicrosoftCommunicationControl6.0(简
称MSComm控件)引入到Delphi开发环境中,这样用
户便可以像使用Delphi控件一样方便地利用
MSComm控件进行计算机串口的通信编程。下面给出
上位机命令的发送与数据接收的部分源程序:
procedure
TMainForm.btnSRClick(Sender:TObject);
……//变量初始化
ifnotMSComm.PortOpenthen//判断是否打开串口
……
elsebegin
//二进制数发送,需要使用Variant变量矩阵,矩阵大小
自动调节
Output:=mmSend.Text;//在文本框取上位机下传数据
……
MSComm.Output:=tmpVar;//向发送缓冲区写入数据
sleep(500);//延时接收数据
SerialInput:=MainForm.MSComm.Input;
//读取接收缓冲区中的数据
SerialDataLength:=MainForm.MSComm.InBufferCount;
//读串口数据长度
fori:=0toSerialDataLength-1do
begin
tmpInt:=SerialInput[i];
……//对上传的数据进行处理
end
end
图2主程序流程图
图3PID控制子程序流程图
3系统调试
本系统的关键之处在于PID控制。对于PID系统
来说,系统性能的好坏主要取决于PID控制参数的设
定。由PID控制原理知[1]:比例(P)控制能迅速反应误
差,减小稳态误差;比例作用的加大,会引起系统的不稳
定。积分(I)控制的作用,只要系统有偏差存在,积分作
用不断地积累,输出控制量以消除误差;积分作用太强
会使系统超调加大,甚至使系统出现振荡。微分(D)控
制可以减小超调量,克服振荡,使系统的稳定性提高,同
时加快系统的动态响应速度,减小调整时间,从而改善
系统的动态性能。本系统要达到的目标就是:反应速度
尽可能快,超调量尽可能小,稳态误差趋近于0。
为能在上位机上实时显示温度的变化曲线,调节
PID系统关键参数KP,KD使系统处于最佳运行状态就
显得尤为重要。图4给出了在4种情况下温度随时间
69
数控技术胡晓玲等:一种基于单片机的温度监控系统设计
变化的调试曲线。由图可知:在KP=1.5,KD=1.0
(温升:20~40℃)时,超调量过大;在KP=1.2,KD=
1.0(温升:40~60℃)时,由于参数过小,系统的快速性
不好,反应比较迟钝;在KP=1.3,KD=1.0(温升:30
~50℃)时,由于参数过小,系统的超调量比较大,而且
预测性不好,造成温度长时间超调;在KP=1.3,KD=
2.0(温升:50~70℃)时,选择适中,系统的超调量很
小,而且超调维持时间很短就会恢复平衡点。此时温度
控制指标如下:静态误差:T≤0.5℃;分辨率:0.1℃;
超调量:T≤0.5℃。这样的情况下,系统运行情况可
以达到最好。
图4PID参数调节曲线图
4结语
以单片机AT89C51为中心,设计了一种温度监控
功能系统。该系统简洁,温度数据采集和运算处理十分
方便简单,扩展为多路温度监控系统容易。利用单片机
的串行中断,采用Delphi编制上下位机通信程序,在上
位机直接实时显示温度的变化曲线,便于直接观察控制
的性能。通过调试找到了使控制最优的PID参数,在
此情况下,系统运行良好,表明了本系统设计的可行性
和有效性。
参考文献
[1]雷霞,周广文.改进的加热过程模糊自调整PID算法及仿真
分析[J].吉林大学学报:信息科学版,2008,26(5):
547-552.
[2]杨宁.电阻加热炉解耦模糊Smith预估PID控制研究与仿
真[J].系统仿真学报,2006,18(9):2566-2569.
[3]陈以,杨启伟.模糊Smith智能温度控制器的设计与仿真
[J].控制工程,2007,14(4):422-429.
[4]蔡文超,申群太.基于组合Smith的模糊PID控制在湿度控
制中的应用[J].科学技术与工程,2007,7(8):1617-
1620.
[5]吴兴纯,李江涛.Smith预估控制技术在炉温控制系统中的
应用[J].昆明理工大学学报:理工版,2005,30(3):60-63.
[6]戴梅萼,史嘉权.微型计算机技术及应用[M].北京:清华大
学出版社,2003.
[7]李长庚,李新兵,张宇鑫,等.基于无线射频技术的传感器温
度采集系统[J].仪表技术与传感器,2008(3):31-33.
[8]蒲正刚,张禾.无线温度采集系统[J].西南石油学院学报,
2006(1):88-90.
[9]陈婵娟,陈参.用Delphi开发实现开放式数控系统软PLC
功能模块[J].制造技术与机床,2008(5):54-56.
[10]郑荣进.用Delphi实现PC与三菱PLC串行通信的研究与
应用[J].电气应用,2007,26(6):124-127.
作者简介胡晓玲女,1980年出生,助教。主要从事通信与电子技术方面的科研和教学工作。
(上接第87页)
[6]SarkarTK,RaoSM,DjordjevicAR.ElectromagneticSca
-tteringandRadiationfromFiniteMicrostripStructures
[J].IEEETrans.onMicrowaveTheoryandTechniques,
1990,38(11):1568-1575.
[7]PutnamJM,Medgyesi-MitschangLN.CombinedFieldIn2
tegralEquationFormulationforInhomogeneousTwo-and
Three-DimensionalBodies:TheJunctionProblem[J].IEEE
Trans.onAntennasPropagat.,1991,39(5):667-672.
[8]SuC,SarkarTK.ElectromagneticScatteringfromCoated
StripsUtilizingtheAdaptiveMultiscaleMomentMethod[J].
ProgressinElectromagneticsResearch,1998:173-208.
[9]Yl-OijalaP,TaskinenM,SarvasJ.SurfaceIntegralEqua2
tionMethodforGeneralCompositeMetallicandDielectric
StructureswithJunctions[J].ProgressinElectromagnetics
Research,2005:81-108.
[10]YuanN,YeoTS,NieXC,LiLW,etal.AnalysisofSca-
tteringfromCompositeConductingandDielectricTargets
usingthePrecorrected-FFTAlgorithm[J].Electromagn.
WaveandAppl.,2003,17(3):499-515.
[11]郭景丽,刘其中,李建灜,等.金属介质混合结构目标电磁
特性的矩量法分析[J].西安电子科技大学学报:自然科学
版,2006,33(1):71-75.
《现代电子技术》(半月刊)欢迎订阅029-85393376
79
《现代电子技术》2009年第17期总第304期测试·测量·自动化
|
|