温度控制系统设计摘要温度控制是工业对象中主要的控制参数之一,其控制系统本身的动态特性属于一阶纯滞后环节,象冶金、机械、食品、化工各类工业中,广泛使用的各种加热炉、热处理炉、反应炉等,对工件的处理温度要求严格控制,计算机温度控制系统使温度控制指标得到了大幅度提高。
以8031单片机为核心,采用温度变送器桥路和固态继电器控温电路,实现对电炉温度的自动控制。
该控制系统具有硬件成本低、控温精度较高、可靠性好、抗干扰能力强等特点。
电阻炉炉温控制系统的控制过程是:单片机定时对炉温进行检测,经A/D 转换芯片得到相应的数字量,经过计算机进行数据转换,得到应有的控制量,去控制加热功率,从而实现对温度的控制。
关键词:电炉温度控制系统ADC0809AD转换器目录1 控制方案总述12 硬件电路设计12.1 温度检测和变送器部分22.2 接口电路32.2.1 主要特性32.2.2 部结构32.2.3 外部特性(引脚功能)42.3 接口电路63 软件设计73.1 主程序73.2 T0中断服务程序83.3 子程序103.3.1采样子程序SAMP103.3.2 数字滤波子程序FILTER113.3.3积分分离PID控制算法的程序设计124 基于MATLAB仿真被控对象135 结果分析15设计小结17参考文献18附录19温度控制系统设计1 控制方案总述随着电子技术的发展,特别是随着大规模集成电路的产生,给人们的生活带来了根本性的变化,特别是微型计算机的出现使现代的科学研究得到了质的飞跃,利用单片机来改造落后的设备具有性价比高、提高设备的使用寿命、提高设备的自动化程度的特点。
本设计就是利用单片机来控制高温加热炉的温度,传统的以普通双向晶闸管(SCR)控制的高温电加热炉采用移相触发电路改变晶闸管导通角的大小来调节输出功率,达到自动控制电加热炉温度的目的。
这种移相方式输出一种非正弦波,实践表明这种控制方式产生相当大的中频干扰,并通过电网传输,给电力系统造成“公害”。
采用固态继电器控温电路,通过单片机控制固态继电器,其波形为完整的正弦波,是一种稳定、可靠、较先进的控制方法。
为了降低成本和保证较高的控温精度,采用普通的ADC0809芯片和具有零点迁移、冷端补偿功能的温度变送器桥路,使实际测温围缩小。
采用AT80C51为核心,结合温度传感器热电偶和AD转换器来监测被控温度数据,并把数据传递给单片机同时显示实时数据。
同时键盘会给与要求的控制温度大小供单片机把其和测量温度进行比较处理,从而控制执行系统的开关量的通断状态,达到温度检测、赋值和控制的作用。
其系统结构框图如图1所示:2 硬件电路设计硬件电路如图2所示:图2 硬件电路图现对各部分电路分述如下:2.1 温度检测和变送器部分温度计的检测元件和变送器的类型选择与被控温度及进度等级有关。
镍鉻/镍铝热电偶适用于0~1000摄氏度的温度测量围,相应输出电压为0~41.32mV。
变送器由毫伏变送器和电流/电压变送器组成:毫伏变送器用于把热电偶输出的0~41.32mV变换成0~10mA围的电流;电流/电压变送器用于把毫伏变送器输出的0~10mA 电流变换成0~5V围的电压。
为了提高测量精度,变送器可以进行零点迁移。
例如,若温度测量围为0~300摄氏度,则热电偶输出为0~12.396mV,毫伏变送器零点迁移后输出0~10mA围的电流。
这样,采用8位A/D转换器就可以量化温度误差达到正负2.34摄氏度以。
2.2 接口电路8031的接口电路有8155、2732和ADC0809等芯片。
8155用于键盘LED显示器接口,2372可以作为8031的外部ROM存储器,ADC0809为温度测量电路的输入接口。
ADC0809是采样频率为8位的、以逐次逼近原理进行模——数转换的器件。
其部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。
2.2.1主要特性1)8路8位A/D转换器,即分辨率8位。
2)具有转换起停控制端。
3)转换时间为100μs4)单个+5V电源供电5)模拟输入电压围0~+5V,不需零点和满刻度校准。
6)工作温度围为-40~+85摄氏度7)低功耗,约15mW。
2.2.2部结构ADC0809是CMOS单片型逐次逼近式A/D转换器,部结构如图13.22所示,它由8路模拟开关、地址锁存与译码器、比较器、8位开关树型D/A转换器、逐次逼近。
2.2.3外部特性(引脚功能)ADC0809芯片有28条引脚,采用双列直插式封装,如图3所示。
下面说明各引脚功能。
IN0~IN7:8路模拟量输入端。
2-1~2-8:8位数字量输出端。
ADDA、ADDB、ADDC:3位地址输入线,用于选通8路模拟输入中的一路ALE:地址锁存允许信号,输入,高电平有效。
START:A/D转换启动信号,输入,高电平有效。
EOC:A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。
OE:数据输出允许信号,输入,高电平有效。
当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。
CLK:时钟脉冲输入端。
要求时钟频率不高于640KHZ。
图3 ADC0809引脚图REF(+)、REF(-):基准电压。
Vcc:电源,单一+5V。
GND:地。
ADC0809的工作过程是:首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。
此地址经译码选通8路模拟输入之一到比较器。
START上升沿将逐次逼近寄存器复位。
下降沿启动A/D转换,之后EOC输出信号变低,指示转换正在进行。
直到A/D转换完成,EOC 变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。
当OE输入高电平时,输出三态门打开,转换结果的数字量输出到数据总线上。
8155有40条引脚,如图4所示。
下面说明各引脚功能:AD0~AD7:三态地址/数据线。
是低8位地址与数据复用线。
地址可以是8155片RAM 单元地址或I/O端口地址。
AD0~AD7上的地址由ALE的下降沿素存到8155片地址锁存器。
也就是由AIE信号来区别AD0~AD7上出现的地址信息还是数据信息。
ALE:地址锁存允许信号。
在ALE信号的下降沿把ADO~AD7上的8位地址信息,CE 片选信号及IO/M信号都锁存到8155部存储器中。
IO/M:I/O端口和RAM选择信号。
当IO/M=1时,AD0~AD7的地址位8155I/O端口地址,选择I/O端口。
当IO/M=0时,AD0~AD7的地址位8155片RAM单元地址,选择RAM 存储单元。
图4 8155引脚图CE:片选信号。
低电平有效。
由ALE信号的下降沿锁存到8155部存储器。
RD:读选通信号。
低电平有效。
当RD=0,CE=0时开启AD0~AD7的缓冲器,被选中的片RAM单元或IO口的容送到AD0~AD7上。
WR:写选通信号。
低电平有效,当CE,WR都有效时,CPU输出到AD0~AD7上的信息想偶尔到8155片PAM单元或I/O端口。
PA0~PA7:A口的I/O线。
PB0~PB7:B口的I/O线。
PC0~PC5:C口的I/O线。
TMRIN:定时器输入。
TMROUT:定时器输出。
2.3 接口电路8031对温度的控制是通过可控硅调功器电路实现的,如硬件电路图(图2)所示。
双向可控硅管和加热丝串接在交流220V,50Hz交流电回路中。
在给定周期T,8031只要改变可控硅的接通时间便可改变加热丝的功率,以达到调节温度的目的。
如下图所示,可控硅在给定周期T具有不同接通时间的情况。
显然,可控硅在给定周期T的100%时间接通时的功率最大。
可控硅接通时间可以通过可控硅控制极上的触发脉冲控制。
该触发脉冲由8031用软件在P1.3引脚上产生,经过零同步脉冲同步后经光耦管和驱动器输出送到可控硅的控制极上。
可控硅调功器输出功率与通断时间的关系如图5所示。
图5 可控硅调功器输出功率与通断时间的关系3 软件设计温度控制程序的设计应考虑如下问题:1.键盘扫描、键码识别和温度显示;2.炉温采样,数字滤波;3.数据处理时把所有数按定点纯小数补码形式转换,然后把8位温度采样值Umin和Umax都变成16位参加运算,运算结果取8位有效值;4.越限报警和处理;5.PID 计算,温度标度转换。
通常,符合上述功能的温度控制程序由主程序和T0中断服务程序组成。
3.1 主程序主程序应包括8051本身的初始化、8155初始化等。
流程图如6所示。
3.2 T0中断服务程序T0中断服务程序时温度控制系统的主体程序,用于启动A/D 转换、读入采样数据、数字滤波、越限温度报警和越限处理、PID 计算和输出可控硅的同步触发脉冲等。
P1.3引脚上输出的该同步脉冲宽度由T1计数器的溢出中断控制,8051利用等待T1溢出中断空隙时间完成把本次采样值转换成显示值并放入显示缓冲区和调用温度显示程序。
8051从T1中断服务程序返回后便可恢复现场并返回主程序,以等待下次T0中断。
流程图如图7所示。
图6 主程序流程图图7 T0中断服务流程图3.3 子程序3.3.1采样子程序SAMP采样子程序流程图如图8所示。
图8 采样子程序流程图3.3.2 数字滤波子程序FILTER数字滤波子程序用于滤去来自控制现场对采样值的干扰。
流程图如图9所示。
图9 数字滤波子程序流程图3.3.3积分分离PID 控制算法的程序设计PID 算法的表达式为:])()(1)([)(0⎰++=tDIp dt t de T dt t e T t e K t u式中u(t):调节器的输出信号;e (t):偏差信号;pK :调节器的比例系数;TI :调节器的积分时间; TD :调节器的微分时间。
在计算机控制中,为实现数字控制,必须对上式进行离散化处理。
用数字形式的差分方程代替连续系统的微分方程。
设系统的采样周期为T ,在t=kT 时刻进行采样,∑⎰=≈ki ti Te dt t e 0)()(T k e k e dt de )1)()t (--≈(式中e(k):根据本次采样值所得到的偏差; e (k-1):由上次采样所得到的偏差。
将上面的三个式子代入,则有T 1k e k e k i e k e K ]T1k e k e T i e T Tk e [K k u dk 0i p k0i Ip )()()()()()()()()(--++=--++=∑∑==i D k β式中,T 为采样时间,β项为积分项的开关系数βββ>≤ ⎝⎛=)()(01k e k e积分分离PID 控制算法程序流程图如图10所示。
图10 积分分离PID控制算法程序流程图4 基于MATLAB仿真被控对象采用simulink仿真,通过simulink模块实现积分分离PID控制算法。