整理电阻炉温度控制系统1文档格式.docx
《整理电阻炉温度控制系统1文档格式.docx》由会员分享,可在线阅读,更多相关《整理电阻炉温度控制系统1文档格式.docx(22页珍藏版)》请在冰豆网上搜索。
电阻炉炉温控制系统的控制过程是:
单片机定时对炉温进行检测,经A/D转换芯片得到相应的数字量,经过计算机进行数据转换,得到应有的控制量,去控制加热功率,从而实现对温度的控制。
关键词:
电炉温度控制系统ADC0809AD转换器
温度控制系统设计
1控制方案总述
随着电子技术的发展,特别是随着大规模集成电路的产生,给人们的生活带来了根本性的变化,特别是微型计算机的出现使现代的科学研究得到了质的飞跃,利用单片机来改造落后的设备具有性价比高、提高设备的使用寿命、提高设备的自动化程度的特点。
本设计就是利用单片机来控制高温加热炉的温度,传统的以普通双向晶闸管(SCR)控制的高温电加热炉采用移相触发电路改变晶闸管导通角的大小来调节输出功率,达到自动控制电加热炉温度的目的。
这种移相方式输出一种非正弦波,实践表明这种控制方式产生相当大的中频干扰,并通过电网传输,给电力系统造成“公害”。
采用固态继电器控温电路,通过单片机控制固态继电器,其波形为完整的正弦波,是一种稳定、可靠、较先进的控制方法。
为了降低成本和保证较高的控温精度,采用普通的ADC0809芯片和具有零点迁移、冷端补偿功能的温度变送器桥路,使实际测温范围缩小。
采用AT80C51为核心,结合温度传感器热电偶和AD转换器来监测被控温度数据,并把数据传递给单片机同时显示实时数据。
同时键盘会给与要求的控制温度大小供单片机把其和测量温度进行比较处理,从而控制执行系统的开关量的通断状态,达到温度检测、赋值和控制的作用。
其系统结构框图如图1所示:
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μs
4)单个+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。
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信号的下降沿把ADO~AD7上的8位地址信息,CE片选信号及IO/M信号都锁存到8155内部存储器中。
IO/
:
I/O端口和RAM选择信号。
当IO/
=1时,AD0~AD7的地址位8155I/O端口地址,选择I/O端口。
=0时,AD0~AD7的地址位8155片内RAM单元地址,选择RAM存储单元。
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可控硅调功器输出功率与通断时间的关系
\\
\\_
.---('
)
o()_-\_
3软件设计
温度控制程序的设计应考虑如下问题:
1.键盘扫描、键码识别和温度显示;
2.炉温采样,数字滤波;
3.数据处理时把所有数按定点纯小数补码形式转换,然后把8位温度采样值Umin和Umax都变成16位参加运算,运算结果取8位有效值;
4.越限报警和处理;
5.PID计算,温度标度转换。
通常,符合上述功能的温度控制程序由主程序和T0中断服务程序组成。
3.1主程序
主程序应包括8051本身的初始化、8155初始化等。
流程图如6所示。
3.2T0中断服务程序
T0中断服务程序时温度控制系统的主体程序,用于启动A/D转换、读入采样数据、数字滤波、越限温度报警和越限处理、PID计算和输出可控硅的同步触发脉冲等。
P1.3引脚上输出的该同步脉冲宽度由T1计数器的溢出中断控制,8051利用等待T1溢出中断空隙时间完成把本次采样值转换成显示值并放入显示缓冲区和调用温度显示程序。
8051从T1中断服务程序返回后便可恢复现场并返回主程序,以等待下次T0中断。
流程图如图7所示。
3.3子程序
3.3.1采样子程序SAMP
采样子程序流程图如图8所示。
3.3.2数字滤波子程序FILTER
数字滤波子程序用于滤去来自控制现场对采样值的干扰。
流程图如图9所示。
图9数字滤波子程序流程图
3.3.3积分分离PID控制算法的程序设计
PID算法的表达式为:
式中u(t):
调节器的输出信号;
e(t):
偏差信号;
调节器的比例系数;
TI:
调节器的积分时间;
TD:
调节器的微分时间。
在计算机控制中,为实现数字控制,必须对上式进行离散化处理。
用数字形式的差分方程代替连续系统的微分方程。
设系统的采样周期为T,在t=kT时刻进行采样,
式中e(k):
根据本次采样值所得到的偏差;
e(k-1):
由上次采样所得到的偏差。
将上面的三个式子代入,则有
式中,T为采样时间,
项为积分项的开关系数
积分分离PID控制算法程序流程图如图10所示。
图10积分分离PID控制算法程序流程图
4基于MATLAB仿真被控对象
采用simulink仿真,通过simulink模块实现积分分离PID控制算法。
仿真图如图11所示。
图11Simulink仿真
选择合适的Kp,Ki,Kd使系统的仿真效果趋于理想状态。
MATLAB编写程序如下:
clearall;
closeall;
ts=10;
%采样时间10s
sys=tf([1],[30,1],'
inputdelay'
80);
dsys=c2d(sys,ts,'
zoh'
);
%将sys离散化
[num,den]=tfdata(dsys,'
v'
%求sys多项式模型参数
kp=5.2;
Ti=0.005;
Td=0.005;
end
仿真波形如图12所示。
图12Matlab仿真波形图
5结果分析
当Ti,Td一定,即当Ti=Td=0.005时,改变Kp的值观察波形可以知道其对系统超调量的影响。
当Kp增大时,设Kp=5.8,此时的波形如图13。
图13Kp=5.8时的波形图
当Kp减小时,设Kp=4.6,此时的波形如图14。
图14Kp=4.6时的波形图
由图12,图13,图14我们可