经典水温控制文档格式.docx
《经典水温控制文档格式.docx》由会员分享,可在线阅读,更多相关《经典水温控制文档格式.docx(35页珍藏版)》请在冰豆网上搜索。
1.2国内外研究现状1
1.3研究方法1
2系统方案1
2.1水温控制系统设计任务和要求1
2.2水温控制系统部分2
2.2.1CPU(ComputerprocessingUnit)中央处理器2
2.2.2温度控制系统算法分析3
3系统硬件设计7
3.1总体设计框图及说明7
3.2外部电路设计8
3.2.1温度采集电路8
3.2.2温度控制电路9
3.3单片机系统电路设计11
2.3.1系统框图11
3.3.2A/D转换电路11
3.3.3串口通讯部分电路15
3.3.4键盘设置电路17
4.系统软件设计17
4.1程序框架结构17
4.2程序流程图及部分程序18
4.2.1主程序模块18
4.2.2系统初始化20
4.2.3按键程序20
4.2.4A/D采样数据处理22
4.2.5PID计算25
4.2.6继电器控制26
5.AT89S52单片机简介28
6.系统安装调试与测试29
6.1串口调试29
6.2继电器测试29
结论30
致谢32
第1章引言
1.1课题背景
一些价格比较昂贵的观赏鱼,如蝴蝶鱼,银龙鱼等对于温度的要求比较苛刻。
随着人们生活水平的提高,这些鱼类在我国的饲养开始兴盛,因此,对饲养环境温度进行恒温控制十分必要。
现有的一些温度控制设备,如HAl68型的温度控制棒,结构比较简单,一般采取的是开关式的控制,即当测量温度低于设定温度时进行加热,其结果是饲养水域内温度不均,控温效果不理想。
1.2国内外研究现状
目前,国外温度控制系统及仪表正朝着高精度智能化、小型化等方面快速发展。
温度控制系统在国内各行各业的应用虽然已经十分广泛,但从国内生产的温度控制器来讲,总体发展水平仍然不高,同国外的日本、美国、德国等先进国家相比,仍然有着较大的差距。
目前,我国在这方面总体技术水平处于20世纪80年代中后期水平。
成熟产品主要以“点位”控制及常规的PID控制器为主,它只能适应一般温度系统控制,难于控制滞后复杂时变温度系统控制,而且适应于较高控制场合的智能化、自适应控制仪表国内技术还不十分成熟,形成商品化并广泛应用的控制仪表较少。
现在,我国在温度等控制仪表业与国外还有着一定的差距。
随着嵌入式系统开发技术的快速发展及其在各个领域的广泛应用,人们对电子产品的小型化和智能化要求越来越高,作为高新技术之一的单片机以其体积小、价格低、可靠性高、适用范围大以及本身的指令系统等诸多优势,在各个领域、各个行业都得到了广泛应用。
1.3研究方法
本文主要介绍单片机温度控制系统的设计过程,其中涉及系统结构设计、元器件的选取和控制算法的选择、程序的调试和系统参数的整定。
以AT89S52为CPU,温度信号由Pt1000和电压放大电路提供。
电压放大电路用超低温漂移高精度运算放大器OP07将温度-电压信号进行放大,用单片机控制SSR固态继电器的通断时间以控制水温,系统控制对象为1升净水,容器为搪瓷器皿。
水温可以在环境温度降低时实现自动控制,以保持设定的温度基本不变,具有较好的快速性与较小的超调。
第2章系统方案
2.1水温控制系统设计任务和要求
该系统为一实验系统,系统设计任务:
设计一个水温自动控制系统,控制对象为1升净水,容器为搪瓷器皿。
水温可以在一定范围内由人工设定,并能在环境温度降低时实现自动调整,以保持设定的温度基本不变。
系统设计具体要求:
温度设定范围为40~90℃;
环境温度降低时(例如用电风扇降温)温度控制的静态误差≤1℃;
采用适当的控制方法,当设定温度突变(由40℃提高到60℃)时,减小系统的调节时间和超调量;
用十进制数码管显示水的实际温度。
2.2水温控制系统部分
水温控制系统是一个过程控制系统,组成框图如图1所示,由控制器、执行器、被控对象其反馈作用的测量变送组成。
控制系统框图
除了以上的组成元件以外,还要选择合适的算法以实现所要求的控制精度,以下我会对关键的元件以及电路的确定进行详细的分析。
因为它们选取的好坏将直接影响着整个系统实现效果的优劣。
2.2.1CPU(ComputerprocessingUnit)中央处理器
方案一:
采用8031作为控制核心,以使用最为普遍的器件ADC0804作模数转换,控制上使用对电阻丝加电使其升温和开动风扇使其降温。
此方案简易可行,器件的价格便宜,但8031内部没有程序存储器,需要扩展,增加了电路的复杂性。
方案二:
此方案采用89S52单片机实现,此单片机软件编程自由度大,可用编程实现各种控制算法和逻辑控制。
进行数据转换,控制电路部分采用SSR固态继电器控制电炉丝的通断此方案电路简单并且可以满足题目中的各项要求的精度。
将两个方案一比较便可得出一个结论,采用Atmel单片机来实现本题目,不管是从结构上,还是从工作量上都占有很大的优势,所以最后决定使用AT89S52作为该控制系统的核心。
根据温度变化慢,并且控制精度不易掌握的特点,我们设计了以AT89S52单片机为检测控制中心的水箱温度自动控制系统,总体框图如图2所示。
控制器设计总体框图
温度控制采用改进的PID数字控制算法,显示采用3位LED静态显示。
该设计结构简单,控制算法新颖,控制精度高,有较强的通用性。
2.2.2温度控制系统算法分析
系统算法控制采用工业上常用的位置型PID数字控制,并且结合特定的系统加以算法的改进,形成了变速积分PID—积分分离PID控制相结合的自动识别的控制算法。
该方法不仅大大减小了超调量,而且有效地克服了积分饱和的影响,使控制精度大大提高。
长期以来国内外科技工作者对温度控制器进行了广泛深入的研究,产生了大批温度控制器,如性能成熟应用广泛的PID调节器、智能控制PID调节器、自适应控制等。
此处主要对一些控制器特性进行分析以便选择适合的控制方法应用于改造。
常用的控制算法有以下几种:
经典的比例积分微分控制算法;
根据动态系统的优化理论得到的自适应控制和最优控制方法;
根据模糊集合理论得到模糊控制算法。
自适应控制、最优控制方法以及模糊控制算法是建立在精确的数学模型基础上的,在实时过程控制中,由于控制对象的精确数学模型难于建立,系统参数经常发生变化,运用控制理论进行综合分析要花很大代价,主要是时间。
同时由于所得到的数学模型过于复杂难于实现。
在实时控制系统中要求信号的控制信号的给出要及时,所以在目前的过程控制系统中较少采用自适应控制、最优控制方法和模糊控制算法。
目前在过程控制中应用较多的还是PI控制算法、PD控制算法和PID控制算法。
水温控制系统的控制对象具有热储存能力大,惯性也较大的特点,水在容器内的流动或热量传递都存在一定的阻力,因而可以归于具有纯滞后的一阶大惯性环节。
对于大惯性系统的过渡过程控制,一般可采用以下几种控制方案:
开关量控制
这种方法通过比较给定值与被控参数的偏差来控制输出的状态,开通或关断,因此控制过程十分简单,也容易实现;
但由于输出控制量只有两种状态,使被控参数在两个方向上变化的速率均为最大,因此容易引起反馈回路振荡,控制精度不高;
这种控制方案一般在大惯性系统对控制精度和动态特性要求不高的情况下采用。
如图3所示。
开关量控制图4比例控制
比例控制(P控制)
比例控制的输出与偏差成比例关系,当负荷变化时,抗干扰能力强,过渡过程时间短,但过程终了存在余差;
适用于控制通道滞后较小、负荷变化不大、允许被控量在一定范围内变化的系统。
如图4所示。
比例积分控制(PI控制)
控制器的输出与偏差的积分成比例,积分的作用使过渡过程结束时无余差,但降低了系统的稳定性;
PI控制适用于滞后较小,负荷变化不大,被控量不允许有余差的控制系统。
如图5所示。
比例积分加微分控制(PID控制)
微分的作用使控制器的输出与偏差变化的速度成比例,它对克服对象的容量滞后有显著的效果;
在比例基础上加入微分作用,使稳定性提高,再加上积分作用,可以消除余差;
PID控制适用于负荷变化大、容量滞后较大、控制品质要求又很高的控制系统。
如图6所示。
比例积分控制图6比例积分微分控制
方案选择:
结合本设计任务与要求,由于水温系统的传递函数事先难以精确获得,因而很难判断哪一种控制方法能够满足系统对控制品质的要求;
但从以上对控制方法的分析来看,PID控制方法最适合本例采用:
一方面,由于可以采用单片机实现控制过程,无论哪一种控制方法都不会增加系统硬件成本,而只需对软件作相应改变即可实现不同的控制方案;
另一方面,采用PID的控制方式可以最大限度地满足系统对诸如控制精度、调节时间和超调量等控制品质的要求。
由图7可知PID调节器是一种线性调节器,这种调节器是将设定值w与实际输出值y进行比较构成偏差
并将其比例、积分、微分通过线性组合构成控制量。
其动态方程为:
其中
---为调节器的比例放大系数
---为积分时间常数
---为微分时间常数
PID调节器的离散化表达式为;
其增量表达形式为:
其中T为采样周期。
模拟PID控制
可见温度PID调节器有三个可设定参数,即比例放大系数
、积分时间常数
、微分时间常数
。
比例调节的作用是使调节过程趋于稳定,但会产生稳态误差;
积分作用可消除被调量的稳态误差,但可能会使系统振荡甚至使系统不稳定;
微分作用能有效的减小动态偏差。
图8中,初始水温为26℃。
实现思想:
Ui(k)为第k次采样温度值,Ur为设定值。
e(k)≥ε使用PD算法;
e(k)<ε使用变速积分PID算法。
温度控制曲线图
控制方式:
该控制系统是把输出量检测出来,经过物理量的转换,再反馈到输入端去与给定量进行比较(综合),并利用控制器形成的控制信号通过执行机构SSR对控制对象进行控制,抑制内部或外部扰动对输出量的影响,减小输出量的误差,达到控制目的。
自动控制框图如图9所示,在此控制系统中单片机就相当于常规控制系统中的运算器控制器,它对过程变量的实测值和设定位之间的误差信号进行运算然后给出控制信息。
单片机的运算规则称为控制法则或控制算法。
自动控制框图
第3章系统硬件设计
3.1总体设计框图及说明
本系统是一个简单的单回路控制系统。
为了实现温度的自动测量和控制,根据系统总体方案,系统由单片机基本系统、前向通道、后向通道和人机对话通道等4个主要的功能模块组成,总体框图如上面图2所示。
单片机系统是整个控制系统的核心,AT89S52可以提供系统控制所需的I/O口、中断、定时及存放中间结果的RAM电路;
前向通道是信息采集的通道,主要包括传感器、信号放大、A/D转换等电路;
由于水温变化是一个相对缓慢的过程,因此前向通道中没有使用采样保持电路;
信号的滤波可由软件实现,以简化硬件、降低硬件成本。
键盘设定:
用于温度设定,共三个按键。
数据采样:
将由传感器及相关电路采集到的温度转为电压信号,经A/D转换后,送入AT89S52相应接口中,换算成温度值,用于控制和显示。
数据显示:
采用了共阴极数码管LED进行显示设置温度与测量温度。
串行口传输:
将采样温度值,上传至PC机,可利用PC的端口下载程序。
继电器/热电管:
通过三极管控制继电器的开关来完成对热电炉的功率控制。
3.2外部电路设计
3.2.1温度采集电路
本系统运放采用OP07,OP07是一种高精度单片运算放大器,具有很低的输入失调电压和漂移。
OP07的优良特性使它特别适合作前级放大器,放大微弱信号。
使用OP07一般不用考虑调零和频率问题就能满足要求。
主要特点:
低输入失调电压:
75uV(最大)
低失调电压温漂:
1.3uV/℃(最大)
低失调电压时漂:
1.5uV/月(最大)
低噪声:
0.6uVP-P(最大)
宽输入电压范围:
±
14V
宽电源电压范围:
3V~18V
图10所示的是本人用Multimeter-8软件模拟OP07典型放大电路,1、8脚用来调零的,中间接两个固定电阻和一个电位器滑动端接电源正极就行了,固定电阻用于把电压衰减便于细调;
其实不用调零端也可以调零,在输入端加入可调的偏置即可。
OP07典型应用图—Multimeter8模拟图
采用温度传感器铂电阻Pt1000,对于温度的精密测量而言,温度测量部分是整个系统设计的第一步。
温度传感器的选择是这块电路的关键,它是直接影响整个系统的性能与效果的关键因素之一。
这里采用的是精密级铂电阻温度传感器Pt1000,它的金属铂含量达99.9999%,因为铂电阻的物理和化学性能在高温和氧化介质中很稳定、价格又便宜,常用作工业测量元件,以铂电阻温度计作基准器线性好,温度系数分散性小,在0~100摄氏度时,最大非线性偏差小于0.5摄氏度,性能稳定,广泛用于精密温度测量和标定。
铂热电阻与温度关系式
,其中:
--温度为t摄氏度时的电阻;
--温度为0摄氏度时的电阻;
A、B--温度系数A=3.94*102/℃;
其中B=-
/℃;
T--任意温度。
3.2.2温度控制电路
此部分通过控制继电器的通断从而控制电热管(俗称“热得快”),采用对加在电热管两端的电压进行通断的方法进行控制,以实现对水加热功率的调整,从而达到对水温控制的目的,即在闭环控制系统中对被控对象实施控制。
此部分的继电器采用的是SSR(SolidStateRelays,缩写SSR)继电器,即固态继电器。
工作原理:
固态继电器是一种无触点电子开关,由分立元器件、膜固定电阻网络和芯片,主要由输入(控制)电路,驱动电路和输出(负载)电路三部分组成。
固态继电器的输入电路是为输入控制信号提供一个回路,使之成为固态继电器的触发信号源。
固态继电器的输入电路多为直流输入,个别的为交流输入。
固态继电器的输出电路是在触发信号的控制下,实现固态继电器的通断切换。
输出电路主要由输出器件(芯片)和起瞬态抑制作用的吸收回路组成,固态继电器(SSR)是一种全电子电路组合的元件,它依靠半导体器件和电子元件的电、磁和光特性来完成其隔离和继电切换功能。
固态继电器与传统的电磁继电器(EMR)相比,是一种没有机械、不含运动零部件的继电器,但具有与电磁继电器本质上相同功能。
图11是它的工作原理框图,图11中的部件①-④构成交流SSR的主体,从整体上看,SSR只有两个输入端(A和B)及两个输出端(C和D),是一种四端器件。
工作时只要在A、B上加上一定的控制信号,就可以控制C、D两端之间的“通”和“断”,实现“开关”的功能,其中耦合电路的功能是为A、B端输入的控制信号提供一个输入/输出端之间的通道,但又在电气上断开SSR中输入端和输出端之间的(电)联系,以防止输出端对输入端的影响,耦合电路用的元件是“光耦合器”,它动作灵敏、响应速度高、输入/输出端间的绝缘(耐压)等级高;
由于输入端的负载是发光二极管,这使SSR的输入端很容易做到与输入信号电平相匹配,在使用可直接与计算机输出接口相接,即受“1”与“0”的逻辑电平控制。
SSR工作原理图
固态继电器按其工作性质分直流输入-交流输出型、直流输入-直流输出型、交流输入-交流输出型、交流输入-直流输出型。
而本系统采用的是直流输入-交流输出型,常开式,型号是SSR/1P-15A,允许电流为15A。
由于较小的驱动功率即可使SSR工作,触发电路的功能是产生合乎要求的触发信号,驱动开关电路工作所以我采用三极管控制其通断,三极管采用的是NPN8050,在IOA4口加一个驱动电压即可使三极管导通,触发电路的功能是产生合乎要求的触发信号,驱动开关电路④工作。
SSR实际图
热电管控制电路
由于开关电路在不加特殊控制电路时,将产生射频干扰并以高次谐波或尖峰等污染电网,为此特设“过零控制电路”。
所谓“过零”是指,当加入控制信号,交流电压过零时,SSR即为通态;
而当断开控制信号后,SSR要等待交流电的正半周与负半周的交界点(零电位)时,SSR才为断态--如图13所示。
这种设计能防止高次谐波的干扰和对电网的污染。
为使其实现过零控制,就是要实现工频电压的过零检测,并给出脉冲信号,由单片机控制可控硅过零脉冲数目。
当在其输入端加入控制信号时,输出端接通,从而使得热电管加热以致温度上升;
当此时撤离控制信号时,输出端断开,而使热电管停止加热从而温度下降。
过零控制工作下SSR的波形
3.3单片机系统电路设计
3.3.1系统框图
系统框图
3.3.2A/D转换电路
ADC0804引脚及使用说明:
ADC0804是CMOS集成工艺制成的逐次比较型A/D转换器芯片。
分辨率为8位,转换时间为100μs,输出电压范围为0~5V,增加某些外部电路后,输入模拟电压可为±
5V。
该芯片内有输出数据锁存器,当与计算机连接时,转换电路的输出可以直接连接到CPU的数据总线上,无需附加逻辑接口电路。
ADC0804引脚图图16ADC0804控制信号的时序图
ADC0804引脚名称及意义如下:
VIN+、VIN-:
ADC0804的两模拟信号输入端,用以接收单极性、双极性和差模输入信号。
D7~D0:
A/D转换器数据输出端,该输出端具有三态特性,能与微机总线相连接。
AGND:
模拟信号地。
DGND:
数字信号地。
CLKIN:
外电路提供时钟脉冲输入端。
CLKR:
内部时钟发生器外接电阻端,与CLKIN端配合,可由芯片自身产生时钟脉冲,其频率为1/1.1RC。
CS:
片选信号输入端,低电平有效,一旦CS有效,表明A/D转换器被选中,可启动工作。
WR:
写信号输入,接受微机系统或其他数字系统控制芯片的启动输入端,低电平有效,当CS、WR同时为低电平时,启动转换。
RD:
读信号输入,低电平有效,当CS、RD同时为低电平时,可读取转换输出数据。
INTR:
转换结束输出信号,低电平有效。
输出低电平表示本次转换已经完成。
该信号常作为向微机系统发出的中断请求信号。
在使用时应注意以下几点:
(1)转换时序
ADC0804控制信号的时序图如图16所示,由图可见,各控制信号时序关系为:
当CS与WR同为低电平时,A/D转换器被启动,且在WR上升沿后100μS模数转换完成,转换结果存入数据锁存器,同时INTR自动变为低电平,表示本次转换已结束。
如CS、RD同时为低电平,则数据锁存器三态门打开,数据信号送出,而在RD高电平到来后三态门处于高阻状态。
(2)零点和满刻度调节
ADC0804的零点无需调整。
满刻度调整时,先给输入端加入电压
,使满刻度所对应的电压值是:
其中Vmax是输入电压的最大值,Vmin是输入电压的最小值。
当输入电压
值相当时,调整VREF/2端电压值使输出码为FEH或FFH。
(3)参考电压的调节
在使用A/D转换器时,为保证其转换精度,要求输入电压满量程使用。
如输入电压动态范围较小,则可调节参考电压VREF,以保证小信号输入时ADC0804芯片8位的转换精度。
(4)接地
模数、数模转换电路中要特别注意到地线的正确连接,否则干扰很严重,以致影响转换结果的准确性。
A/D、D/A及取样-保持芯片上都提供了独立的模拟地(AGND)和数字地(DGND)。
在线路设计中,必须将所有器件的模拟地和数字地分别相连,然后将模拟地与数字地仅在一点上相连接。
地线的正确连接方法如图17所示。
正确的地线连接
ADC0804的典型应用
在现代过程控制及各种智能仪器和仪表中,为采集被控(被测)对象数据以达到由计算机进行实时检测