文档库 最新最全的文档下载
当前位置:文档库 › 2012毕业设计--单片机闭环温度控制系统

2012毕业设计--单片机闭环温度控制系统

毕业设计(论文)任务书

兹发给班学生毕业设计(论文)任

务书,内容如下:

1.毕业设计(论文)题目:单片机闭环温度控制系统设计

【1】应完成的项目:

【2】了解熟悉单片机闭环温度控制系统设计基本原理。

【3】学习掌握温度控制的基本理论。

【4】深入研究闭环温度控制方法。

【5】完成单片机闭环温度控制系统设计。

【6】总结单片机闭环温度控制系统设计经验。

3.参考资料以及说明:

【7】何立民. 单片机应用系统设计—系统配置与接口技术.

北京航天大学出版社.

1990.54~114;138~180;254~309;421~474.

【8】孙育才. MCS-51系列单片微型计算机及其应用.南京:南京工学院出版社.1987.2~180.

【9】李永敏.数字化测试技术-模拟信号调理,数据转换及采集技术.北京:航空工业出版社.1987.32~161.

【10】BASIC单片机原理及应用.武汉力源单片机技术研究所.1996.4

【11】杨宁.分布式计算机遥测管理系统结构与功能[J].北华大学学报(自然科学版),2000,1(2):178~181.

【12】徐志军,大规模可编程逻辑器件及其应用[M] .成都:电子科技大学出版.2000.

【13】赵不贿.在系统可编程器件与开发技术[M].北京:机械工业出版社,2001.

【14】张洪润,蓝清华.单片机应用技术教程[M] .北京:清华大学出版社,1997.

【15】张毅刚等编. MCS-51单片机应用设计.哈尔滨工业大学出版社,1993

【16】沙占友.新编数字化测量技术[M].北京:国防工业出版社,1998.

【17】张俊谟编著.单片机中级教程原理与应用. 北京航空航天大学出版出社,2000.6

【18】何立民编著.单片机高级教程应用与设计. 北京航空航天大学出版出社,2000.8

【19】张奋程最新CMOS数字集成电路应用手册.广东科技出版社,1995

【20】潘新民微型计算机控制技术高等教育出版社

4. 进度要求:

【21】11月23日完成论文初稿。

【22】12月14日完成设计,并交设计论文。

【23】12月21日演示设计结果。

【24】1月4日论文答辩。

5.本毕业设计(论文)任务书于2012年9月10日发出,应于2013年1月1日前完成,然后提交毕业考试委员会进行答辩。

教研主任审核 2012年 9 月 10 日

指导教师签发 2012 年 9月 10 日

摘要

本文介绍了一种PID水温控制系统。该系统利用单片机可以方使地实现对PID参数的选择与设定;也可以通过计算机与单片机的串行通讯,实现工业过程中的交互式PID控制。它是用温度传感器将检测到的实际炉温A/D转换,送入计算机中,与设定值进行比较,得出偏差。对此偏差按PID算法进行修正,求得对应的控制量控制可控硅驱动器,调节电炉的加热功率,从而实现对炉温的控制。因此采集的炉温数据精度至关重要。利用89C51单片机实现温度智能控制,能自动完成数据采集、处理、缓冲、转换、并进行PID实施控制和键盘终端处理及显示,包括各参数数值的修正。但在控制过程中应该注意,采样周期不能太短,否则使调节过于频繁,不但执行机构不能反应,而且计算机的利用率大为降低。采样周期太长,也是不合适,因为干扰无法及时消除,使调节品质下降。随着单片机在各行业控制系统中的普遍采用,其构成的实时控制系统日臻完善,使该温度控制系统的总体性能大大提高,功能更趋完善,并详细介绍了该系统的软、硬件实施手段及系统特点。

关键词:单片机;PID算法;串行通讯;热电偶;温度控制

Abstract

This text introduced a kind of PID water temperature control system. It can choose and modify the PID parameters by SCM expediently. Moreover, via communication between the Computer and SCM, It can visually control the industry process temperature with the extensive PID arithmetic. It is an actual cooker to spreads to feel with the temperature machine will examine temperature A/ D conversion, sending into the computer inside, proceeding the comparison with the initial value, having to out the deviation. Press PID calculate way to proceed the correction to this deviation, beg to should of the control measures the control can control the silicon drives the machine, regulating the heating power of the electric stove, thereby realize to the control of the cooker temperature . Therefore the cooker temperature data accuracy that collects is very importance. Make use of 89 C51s the single a machine realizes temperature intelligence control, can complete automatically the data collect, handles, buffer, convert, combining the proceeding PID puts into practice the control handles and show with the keyboard terminal, including the correction of each parameter number. But should notice in control process, adopt the kind period can't be too short, make regulate otherwise too multifarious, not only carry out the organization can't respond, but also the utilization of the computer is big for lower. Adopt the kind period too long ,also is not fit, because interference can't on time dissolve, make regulate the quality descent. Along with the single a machine in each profession control system of widespread adoption, its component and real time controls the system more perfected, Make the total function of that temperature control system increases consumedly, the function is gradually perfect, combining detailed introducing that system of soft, the hardware puts into practice means and system characteristics.

Keywords: Single chip computer; PID arithmetic; serial communication;

thermoelectric couple; Temperature control

目录

摘要4 Abstract 5

前言7

第一章硬件电路设计9

1.1 主机电路的设计 10

1.2 I/O通道的硬件电路的设计 10 1.2.1 数据采集电路的设计 10 1.2.2电控制执行电路的设计 10 1.3 键盘及显示的设计 11 1.4 温度检测电路设计 13

1.5 A/D转换接口电路设计 13

1.6 光电隔离电路设计 13 1.7 掉电保护电路的设计 14 1.8 时钟电路 15 第二章系统软件设计 17

2.1主程序模块 17 2.2功能实现模块 18

2.2.1 T0中断子程序 18

2.2.2键盘中断子程序 19

2.2.3 T1中断子程序 19

2.2.4 采样子程序 19 2.2.5 数字滤波子程序 19 2.2.6 温度查表程序 19 2.3 运算控制模块 20

2.3.1 标度转换子程序 20

2.3.2 PID算法子程序 21 总结和结束语

22

附件

22

参考文献

23

前言

在现代工农业生产反科学实验中常常需要对温度进行控制和调节。在控制精度要求不高的情况下,人们往往采用开环控制,这种控制方式结构简单,易于实现。但是在控制精度要求较高时,单纯地采用开环控制往往达不到满意的控制效果,所以此时必须采用闭环控制方式,常规采用模拟量的ND调节方式。尽管这种方法已经被人们广泛采用,但是由于控制对象的复杂及多样性,在有些情况下未能获得满意的控制精度。

微型计算机,特别是单片微助计算机的应用,使各种工业控制都发生了巨大的变化,由于单片机成本低、功能强、抗干扰性能好,从而使计算机控制应用于工业生产及各种领域成为可能,单片机在温度控制中的应用更具有其他控制手段

无法比拟的优越性。

温度控制是工业生产过程中经常遇到的过程控制,有些工艺过程对其温度的控制效果直接影响着产品的质量,因而设计一种较为理想的温度控制系统是非常有价值的。根据温度变化慢,并且控制精度不易掌握的特点,本文设计了以89C51单片机为检测控制中心的水温自动控制系统。温度控制采用改进的PID数字控制算法,显示采用3位LED静态显示。该设计结构简单,控制算法新颖,控制精度高,有较强的通用性。所设计的控制系统有以下功能:(1)温度控制设定范围为40~90C,最小区分度为0.2C,标定温差<0.6C,静态误差<0.4C;(2)实现控制可以升温也可以降温;(3)实时显示当前温度值;(4)按键控制:设置复位键、功能转换键、加一键、减一键;(4)越限报警。

第一章硬件电路设计

在温度控制中,经常采用是硬件电路主要有两大部分组成:模拟部分和数字部分,对这两部分调节仪表进行调节,但都存在着许多缺点,用单片机进行温度控制使构成的系统灵活,可靠性高,并可用软件对传感器信号进行抗干拢滤波和非线性补偿处理,可大大提高控制质量和自动化水平;总的来说本系统由四大模块组成,它们是输入模块、单片机系统模块、计算机显示与控制模块和输出控制模块。输入模块主要完成对温度信号的采集和转换工作,由温度传感器及其与单片机的接口部分组成。输出模块由可控硅和可控硅驱动器组成。MOC304X芯片是一种集成的带有光耦合的双向可控硅驱动电路。它内部集成了发光二极管、双向可控和过零触发电路等器件。它们的逻辑关系图如图所示。

水温控制硬件原理图

系 统 组 成 图

从功能模块上来分有:主机电路(本系统以89C51单片机为检测控制中心)、输入模块

输出模块 单

统 计 算 机

数据采集电路、键盘显示电路、温度检测电路、光电隔离电路、A/D转换接口电路、控制执行电路以及掉电保护电路。硬件结构框图如图1所示。

MCS-51型单片单板机

图1 温度控制系统原理硬件结构框图

本系统的任务是对水的温度进行实时检测和控制,单片机定时对温度进行检测,通过温度传感器把温度值转换成微弱的电压信号,该电压经放大器放大后通过A/D转换得到相应的数字量,再经数字滤波和查表程序得到当前的采样温度T X通过串行通讯送给计算机。将采样温度与设定温度进行比较,如果T X≠T,则按照设计好的PID算法对偏差(采样温度—设定温度)进行运算、处理,得到一个调节量。这里的调节量实际上对应着加热源打开或断开的时间。如果采样温度小于设定温度,则单片机的P1.0脚输出高电平, 89C51内部导通,双向可控硅控制端G端出现同步触发脉冲,控制可控硅导通,接通加热器使温度升高;温度升高到设定值时,单片机的P1.0脚自动输出低电平,89C51内部截止,双向可控硅断开,关闭加热器,如果采样温度T X大于设定温度T,则单片机的P1.1脚输出高电平,接通冷却器或风扇使温度降低,直到两者的温度相同后,再让单片机的P1.1脚输出低电平,关闭冷却器或风扇,从而使系统的温度保持在所要求的温度值上,达到温度控制的目的。

温度控制范围:0℃~100℃,控制精度≤0.5℃.

1.1 主机电路的设计

主机选用INTEL公司的MCS—51系列单片机89C51来实现,利用单片机软件编程灵活自由度大的特点,力求用软件完善各种控制算法和逻辑控制。本系统选

用的89C51芯片时钟可达12MHz,运算速度快,控制功能完善。其内部具有128字节RAM,而且内部含有4KB的EPROM不需要外扩展存储器,可使系统整体结构更为简单、实用。

1.2I/O通道的硬件电路的设计

就本系统来说,需要实时采集水温数据,然后经过A/D转换为数字信号,送入单片机中的特定单元,然后一部分送去显示;另一部分与设定值进行比较,通过PID算法得到控制量并经由单片机输出去控制电炉加热或风扇降温。

1.2.1 数据采集电路的设计

数据采集电路主要由AD590,MCl403,0P07,74LS373组成。考虑到温度信号为低电平缓变信号,对A/D转换速度要求不高,为此,选用实效价廉的ADC0809,而且,还可以根

据需要扩展测量8路温度信号。为了达到测量高精度的要求,选用温度传感器AD590,AD590具有较高精度和重复性(重复性优于0.1℃,其良好的非线形可以保证优于0.1℃的测量精度,利用其重复性较好的特点,通过非线形补偿,可以达到0.1℃测量精度。)超低温漂移高精度运算放大器0P07将温度—电压信号进行放大,便于A/D进行转换,输入计算机作进一步的处理,以提高温度采集电路的可靠性。模拟电路硬件部分见图2。

1.2.2 电控制执行电路的设计

该部分电路是利用89C51单片机对温度器作实时控制,由输出来控制电炉或风扇,电炉可以近似建立为具有滞后性质的一阶惯性环节数学模型。其传递函

数形式为

风扇可以认为是线形环节实现对水温的控制。采用PID控制算法,利用微分作超前补偿以解决温度的惰性问题。由于被控对象功率不大,所以采用了弱微分方式。为了实现强电和弱电的隔离,要选择光电隔离器,但考虑到输出信号要对可控硅进行触发,以便使电炉或风扇电路导通,所以选用既有隔离又有触发功能的MOC304l。光耦可控硅的特点是输入和输出完全隔离,相互无干扰,不考虑同

步问题,不设同步变压器,故而用其组成的电路所用元件较少,电路简单明了,安装维修方便,成本低,触发电路板的体积可大幅度缩小,因而可用于各行业的调压、调速,特别在功率自动调节的工业加热炉、烘房和烘箱等领域有着十分广阔的前景。其中P1.0口控制电炉电路;P1.1口控制风扇电路(见图3)。此外,还有越限报警,当温度低于40C时黄色发光二极管亮;高于90C时红色二极管亮。

1.3 键盘及显示的设计

键盘和显示器是人/机对话的接口。MCS-51系列单片机具有4个8位的I/O,即P0、P1、P2、P3。从原理上说,这4 个口均可用作双向并行I/O接口,但在实际应用中,P0口和P2口常被用作扩展总线,P3口的某些位又常被用作它的第二功能,特别是无ROM型的单片机。所以若一个MCS-51应用系统需要连接较多的并行输入输出外围设备(如打印机、键盘、显示器等),就必需扩展并行接口。常用的MCS-51并行接口扩展电路有:8255A、Zilog-PIO、8155、8156、87C75PF等,其中又以8255A最为常用。8255A是INTEL公司生产的可编程输入输出接口芯片,具备有3

个8位的并行I/O口。有三种工作方式,可通过编程设定,因而使用起来灵活方便,通用性强,常作为单片机与许多外围设备连接时的中间电路。如8255A可作为编程器接口,将RAM6116中的数据固化到EPROM2732中,而应用得最多的则是键盘/显示器扩展电路。但对于这种用法,需设计消抖电路或编制消抖子程序。相对而言,复杂程度较高。INTEL8279是一种通用可编程键盘/显示器接口芯片,可直接与INTEL微型单片机接口,在我们设计的闭环PID水温控制系统中就采用8279来实现系统的键盘/显示器扩展功能,降低了电路的复杂度,提高了稳定性及可靠性。

8279能自动完成键盘输入和显示控制两种功能。键盘控制部分提供一种扫描工作方式,可与64个按键的矩阵键盘连接,能对键盘进行自动扫描、自动消抖、自动识别出按下的键并给出编码。8279提供了按扫描方式工作的显示接口,其内部有一个168的显示缓冲器,能对4位或8位LED自动进行扫描,将显示缓冲器的内

容在LED上显示出来。8279通过74LS164译码器扩展2×2键盘、4位显示器。由3—8译码器对SL0﹀SL2译出键扫描线,由另一3—6译码器译出显示器的位扫描线,并采用了编码扫描方式。

图为键盘及显示设计电路图

键盘采用软件查询和外部中断相结合的方法来设计,低电平有效。图3中按键ANl,AN2,AN3,AN4的功能定义如表l所示。

按键AN2与P3.2(JA/70)相连,采用外部中断方式,并且优先级定为最高;按键AN3和AN4平共处分别与P1.5和P1.6相连,采用软件查询的方式;AN1则为硬件复位键,与R、C构成复位电路。

显示采用3位共阳LED静态显示方式,显示内容有温度值的十位、个位及小数点后一位,这样可以只用P3.0(TXD)口来输出显示数据,从而节省了单片机端口资源,在P1.4口和P3.1 (TXD)的控制下通过74LSl64来实现3位静态显示。数字电路硬件部分见图3。

1.4 温度检测电路

采用铂电阻温度传感器,设计成电桥放大电路,把温度的变化转换成铂电阻的变化,用电阻连成电桥,再把铂电阻的变化转换成电桥电压的变化,该电压经放大后送ADC0809芯片进行模数(A/D)转换,放大电路选用单一运放构成差动放大器,放大倍数约200倍左右,运放内设补偿,可承受大的差动输入电压且输入阻抗较高,具体电路如图所示

1.5 A/D转换接口电路

MCS-51型单片单板机扩展一片模数(A/D)转换芯片ADC0809芯片,从而可实现8路的A/D输入,其口地址:C000H~C007H。ADC0809的A/D转换结束信号EOC与89C51的P1.3脚相连,所以通过查询P1.3脚是否为高电平便可知A/D转换是否已经结束。89C51可以读入转换好数字量,并将该数字量送到软件部分查表程序的参数入口,从而查出它所对应的温度值,即为采样温度值。

1.6 光电隔离电路设计

本系统采用单片机的I/O线去控制加热或冷却器(风扇)的通或断,由于要经常地接通和断开,而这些被测控动作都要和强电联系在一起,为避免强电控制电路可能对单片机系统产生严重的干扰,故必须在单片机输出口和驱动电路之间采用光电隔离器,使输入与输出完全绝缘。具体电路如图3所示,图中的R0为LED限流电阻,当89C51的P1.0脚为高电平经非门为低电平时,光耦导通,经驱动器后就能驱动加热工作;反之,当89C51的P1.0脚为高电平时,光耦断开,因此不能驱动加热器工作。

1.7 掉电保护电路的设计

掉电保护电路是为防止系统因为意外掉电导致丢失数据而设计的。采用8098单片机构成掉电保护装置,对掉电流的检测电路,补偿电路均可采用原保护装置中的电路单元,运算处理单元主要由8098单片机,可编程并行接口8255A、A/D转换器等组成,其原理图见图所示,其检测电路、补偿电路部分略。此电路可实现电网对地电容电流的动态补偿及自动调整保护动作时间等功能。

由检测电路测量的电网对地电容电流,经A/D转换器转换为8位数字量后,经并行接口8255A的A通道输入给单片机8098,由8098进行运算分析后发出调整补偿命令,由8255A的B通道输出,自动调整零序电抗器的电感值,从而调整补偿效果,达到动态最佳补偿。

8255A的C通道高4位为输入,低4位为输出,其中PC7为由检测电路输入的掉电流,在掉电时,其值为高电平,不掉电时为低电平;PC6为横向选择性保护的状态输入。掉电时,若横向保护拒动或分支开关拒动,其输入为低电平,动作为高电平。据此,8098可判断横向选择性掉电保护装置是否动作可靠,从而自动调整纵向保护的动作时间。在纵向保护动作时,由PC0输出一高电平,使开关跳闸。

1.8 时钟电路的设计

该部分电路为计算机提供了一个精确的时标,在该系统中靠计算加热及冷却脉冲数(计时)来调温,故时间的准确与否直接影响数据精度。本系统采用内部时钟方式用外接晶体和电容组成的并联谐振回路构成时钟电路,另外该时钟内

置独立直流电源,所以是掉电可运行的,即无论系统掉电与否,都不会影响正常走时。通过MCS-51内部定时器T0产生中断来实现计时的。T0工作在定时器工作方式1,每100MS产生一次中断,利用软件将基准100MS(1/10 S)单元进行累加计数,当定时器产生10次中断后就产生了1秒信号,这时秒单元加1,同理,可对分单元和时单元计时,从而产生秒、分、时的时间值,并通过连接在8155A口、B口上的六位显示器进行显示,系统硬件框图如图所示。

系统硬件框图

第二章系统软件设计

在数字控制系统中PID参数值是很重要的,系统参数整定的好坏直接影响调节品质。利用PID温度控制曲线可以方便地实现PID参数的整定。曲线反映了系统对温度控制的状况。通过该曲线可以很方便地输入或修改P参数、I参数、D 参数和T参数。表中“上限、正常和下限”指示当前温度范围。当测得温度大于上限温度设定值理,表中上限指示灯闪烁,测得温度小于等于温度下限设定值时,下限指示灯闪烁;反之,温度在上限温度和下限温度之间时正常指示灯亮,同时,当温度越上限或下限时,单片机硬件部分也会发出报警信号。

本软件具备与硬件实时通讯,实时显示系统状态的特点。单片机系统的键盘对参数的任何修改,也会影响本软件的参数。另外通过本软件也可很方便对串行通讯波特率进行修改。

系统的软件由三大模块组成:主程序模块、功能实现模块和运算控制模块。程序结构采用中断方式,其中,8098作为外部中断0的中断源,T0定时器用作采样周期的定时中断,每隔15秒种中断一次。在中断服务程序中启动A/D,读入采样数据,进行数字滤波,上下限报警处理,PID计算,然后调节T1输出控制脉冲信号,启动定时器T1,返回主程序。脉冲的宽度由T1计数器溢出中断决定。在等待T1中断时,将本次采样数值转换成对应的温度值放入显示缓冲区,然后调用显示子程序;从T1中断返回后,再从T0中断返回主程序并继续显示本次采样温度,等待下次T0中断。

需要说明的是,系统控制程序逻辑采用两次中断嵌套方式来设计,T1中断嵌套在T0中断之中。

2.1 主程序模块

在主程序中首先给定PID算法的参数值,然后通过循环显示当前温度,并且设定键盘外部中断为最高优先级,以便能实时响应键盘处理;软件设定定时器T0为5秒定时,在无键盘响应时每隔5秒响应一次,以用来采集经过A/D转换的温度信号;设定定时器T1为嵌套在T0之中的定时中断,初值由PID算法子程序提供,以用来执行对电炉或风扇的控制。主程序流程图见图4。

图4 主程序流程图

2.2功能实现模块

功能实现模块主要由A/D转换子程序、中断处理子程序、键盘处理子程序、显示子程序等部分组成。限于篇幅,只介绍中断处理子程序。

2.2.1 T0中断子程序

该中断是单片机内部5s定时中断,优先级设为最低,但却是最重要的子程

序。在该中断响应中,单片机要完成A/D数据采集转换、数字滤波、判断是否越限、标度转换处理、继续显示当前温度、与设定值进行比较,调用PID算法子程序并输出控制信号等功能。

2.2.2 键盘中断子程序

作为优先级最高的功能控制键,系统要实时响应该中断。在该中断的响应过程中,系统要显示上一次的温度设定值,并且可以通过AN3、AN4来实现加1、减1的输入修改。鉴于系统要求,程序实现为加1到90时再加则为40;减1到40时再减则为90。

2.2.3 T1中断子程序

T1定时中断嵌套在Tφ中断之中,优先级高于Tφ中断,其定时初值由PID 算法子程序提供,T1中断响应的时间用于输出电炉或风扇的控制信号。

2.2.4 采样子程序

流程图如图5所示。

2.2.5数字滤波子程序

用于滤去控制过程中外部对采样值的干扰,采用三次采样值进行比较,取中

间值存放在温度查表程序的参数入口。

2.2.6温度查表程序

为解决铂热电阻温度/电压变换电路中的非线性,采用模拟数据拟合法,利用已调好的硬件电路,用电压表产生模拟的热电势信号。该信号经放大及A/D 转换后,由单片单板机读出对应该热电势的数字量,这个数字量与模拟的温度标准值构成一个数据对,在使用的温度范围内逐点获得全部数据对后再采用曲线拟合法的方法建立A/D值与温度之间的函数关系式,由此得到A/D转换值与温度值的对应关系,由这些一一对应关系制成表格存贮在ROM中,供实际测试与程序运行过程中查表用。

2.3运算控制模块

运算控制模块涉及标度转换、PID算法、以及该算法调用到的乘法子程序等。2.3.1 标度转换子程序

该子程序作用是将温度信号(00H~FFH)转换为对应的温度值,以便送显示或与设定值在相同量纲下进行比较。所用线形标度变换公式为:

式中,Ax:实际测量的温度值;Nx:经过A/D转换的温度量;

Am=90;Ao=40;Nm=FEH;No=01H

单片机运算采用定点数运算,并且在高温区和低温区分别用程序作矫正处理,测量值与LED显示见图5。

相关文档
相关文档 最新文档