基于单片机的电阻炉温度控制系统Word格式.doc
《基于单片机的电阻炉温度控制系统Word格式.doc》由会员分享,可在线阅读,更多相关《基于单片机的电阻炉温度控制系统Word格式.doc(84页珍藏版)》请在冰点文库上搜索。
工作过程:
当采样周期到达时,电阻炉内温度T由铂电阻检测转成电压信号,通过补偿放大后送入A/D模块,由A/D完成模/数转换后送至单片机,经数字滤波,线性化处理、标度变换后,经显示器由多种方式显示炉温并将数据存储进存储器,与设定温度进行比较后,再经软件实现的模糊控制器进行运算后将运算结果输出,输出的脉宽调制信号控制过零导通型固态继电器的通断比,从而改变固态继电器在一个固定控制周期内的导通时间,即改变电炉平均输入功率,从而控制了电阻炉的温度,使其逐渐趋于设定值且达到平衡,以此来达到控温目的。
输出采用电热调功方式控制,执行器件固态继电器是带有光电隔离和过零触发电路的双向可控硅,输入TL电平信号可控制其导通和截止,在规定周期内控制加入电炉导通的交流周波来实现调节功率的作用。
调功控制方式不仅减少对供电电网的非正弦干扰,提高电网功率因数,而且,由于该控制方式实质是时间量的离散输出(SOHZ交流电量,lom:
为一个单位),所以易于系统实现控制要求[1]。
2单片机基本系统
基于单片机的电阻炉温度控制系统是一个典型的微机控制系统。
在这里,单片机是整个控制系统的核心,通过接收软件可向系统的各个部分发出各种命令,对被测参数进行巡回检测,数据处理,控制计算,报警处理及逻辑判断等操作。
单片机的选择直接影响到系统的功能及接口电路的设计等。
因此,合理选择一种单片机是该控制系统设计的一个重要环节。
2.1 单片机的选型
本系统采用ATMEL公司生产的单片机AT89C52系列单片机。
ATMEL89系列单片机是ATMEL公司的8位Flash单片机系列。
这个系列单片机的最大特点是在片内含有Flash存储器,因此,有着十分广泛的用途,特别是在便携式、省电和特殊信息保存的仪器和系统中显得更为有用。
ATMEL89系列单片机是以8051为内核构成的,是8051系列单片机的兼容系列。
AT89C52单片机主要由下面几个部分组成:
1个8位中央处理单元(CPU)、片内Flash存储器、片内RAM、4个8位的双向可寻址I/O接口、定时器、1个全双工UART(通用异步接收发送器)的串行接口、3个16位的定时器/计数器、多个优先级的嵌套中断结构,以及一个片内振荡器和时钟电路。
2.1.189系列单片机的特点
1)内部含Flash存储器
由于内部含Flash存储器,因此在系统的开发过程中可以十分容易地进行程序的修改,这就大大缩短了系统的开发周期。
同时,在系统工作过程中,能有效地保存一些数据信息,即使外界电源损坏也不影响信息的保存。
2)和80C52兼容
89系列单片机的引脚和80C52是一样的,可直接用相同引脚的89系列单片机取代80C52。
3)静态时钟方式
89系列单片机采用静态时钟方式,所以可以节省电能。
4)可反复进行系统实验
用89系列单片机设计的系统,可以反复进行系统实验,每次实验可以编入不同的程序。
这样可以保证用户的系统设计达到最优。
而且随用户的需要和发展,还可以进行修改,使系统能不断追随用户的最新要求。
AT89C52是一种低功耗/低电压、高性能的8位单片机。
片内带有一个8KB的Flash可编程、可擦除只读存储器(EPROM)。
它采用了CMOS工艺和ATMEL公司的高密度非易失性存储器(NURAM)技术,而且其输出引脚和指令系统都与MCS-51兼容、片内的Flash存储器允许在系统内改编程序或用常规的非易失性存储器编程器来编程。
因此,AT89C52是一种功能强、灵活性高,且价格合理的单片机,可方便地应用在各种控制领域。
基于上述这些特点,这里选择AT89C52单片机作为控制核心[2]。
2.1.2AT89C52单片机的主要性能
1)8KB可改编程序Flash存储器(可经受1000次的写入/擦除)。
2)全静态工作:
0Hz~24MHz。
3)3级程序存储器保密。
4)256×
8字节内部RAM。
5)32条可编程I/O线。
6)3个16位定时器/计数器。
7)8个中断源
8)可编程串行通道。
9)片内时钟振荡器。
另外,AT89C52是用静态逻辑来设计的,其工作频率可下降到0Hz,并提供两种可用软件来选择的省电方式:
空闲方式(IdleMode)和掉电方式(PowerDownMode)。
在空闲方式中,CPU停止工作,而RAM、定时器/计数器、串行口和中断系统都继续工作。
而在掉电方式中,片内振荡器停止工作。
由于时钟被“冻结”,使一切功能都暂停,故只保存片内RAM中的内容,直到下一次硬件复位为止。
2.2 AT89C52的引脚及其主要功能
AT89C52有双列直插封装(PDIP)和方形封装(PLCC)两种封装形式。
这里采用PDIP封装的片子,其引脚如图2-1所示:
其引脚的主要功能如下:
1)主电源引脚
VCC(引脚号40):
芯片电源端,接+5V。
GND(引脚号20):
电源接地端。
图2-1 AT89C52DIP方式的引脚结构图
Fig.2-1 ThepinstructurefigureofAT89C52inDIPmode
2)外接晶体引脚XTAL1和XTAL2
XTAL1(引脚号19):
接外部晶体的一个引脚。
在单片机内部,它是构成片内振荡器的反相放大器的输入端。
当采用外部振荡器时,此引脚接收振荡器的信号,即把此信号直接接到内部时钟发生器的输入端。
XTAL2(引脚号18):
接外部晶体的另一个引脚。
在单片机内部,它是上述内部振荡器的反相放大器的输出端。
当采用外部振荡器时,此引脚应悬浮不连接。
3)控制或与其他电源复用引脚、、RST、/VPP
(引脚号30):
当访问外部存储器时,ALE(地址锁存允许)的输出用于锁存地址的低8位字节。
即使不访问外部存储器,ALE端仍以不变的频率(此频率为振荡器频率的1/6)周期性地出现正脉冲信号。
(引脚号29):
外部程序存储器读选通信号。
当AT89C52从外部程序存储器取指令(或数据)时,每个机器周期内,两次有效(即输出2个脉冲)。
但在此期间内,每当访问外部数据存储器时,这两次有效的信号将不出现。
RST(引脚号9):
复位信号输入端。
振荡器工作时,在该引脚上出现2个机器周期的高电平将使单片机复位。
/VPP(引脚号31):
外部访问允许端。
要使CPU只访问外部程序存储器(地址为0000H~FFFFH),则端必须保持低电平(接到GND端)。
当端保持高电平(接Vcc端时),CPU则执行内部程序存储器中的程序。
在Flash存储器编程期间,该引脚也用于施加12V的编程允许电源Vpp(如果选用12V编程)。
4)输入/输出引脚
P0口(引脚号32~39):
P0口是一个8位漏极开路型双向I/O端口。
作为输出口用时,每位能以驱动8个TTL输入,对端口写1时,又可作为高阻抗输入端用。
在访问外部程序和数据存储器时,它是分时多路转换的地址(低8位)/数据总线,在访问期间,激活了内部的上拉电阻。
在Flash编程时,P0口接收指令字节;
而在校验程序时,则输出指令字节。
验证时,要求外接上拉电阻。
P1口(引脚号1~8):
P1口是一个带有内部上拉电阻的8位双向I/O口。
P1口的输出缓冲器可驱动(吸收或输出电流的方式)4个TTL输入。
对端口写1时,通过内部的上拉电阻把端口拉到高电位,这时可用作输入口。
P1口作输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流。
在对Flash编程和程序效验时,P1口接收低8位地址。
不同的是P1.0和P1.1还可以分别作为定时/计数器2的外部计数输入(P1.0/T2)和输入(P1.1/T2EX)参见表2-1。
表2-1 P2个端口引脚与复用功能
Tablet.2-1 ThefunctionofP2portpin
引脚号功能特性
P1.0T2(定时/计数器2的外部计数脉冲输入),时钟输出
P1.1T2EX(定时/计数器2捕获/重装载触发和方向控制)
P2口(引脚号21~28):
P2口是一个带有内部上拉电阻的8位双向I/O端口。
P2口的输出缓冲器可驱动(吸收或输出电流的方式)4个TTL输入。
对端口P2写1时,通过内部的上拉电阻把端口拉到高电位,这时可用作输入口。
P2口作输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流。
在访问外部程序存储器和16位地址的外部数据存储器(如执行MOVX@DPTR指令)时,P2口送出高8位地址。
在访问8位地址的外部数据存储器(如执行MOVX@RI指令)时,P2口上的内容(就是专用寄存器(SFR)区中P2寄存器的内容),在整个访问期间不会改变。
在对Flash编程和程序校验时,P2口接收高位地址和一些控制信号。
P3口(引脚号10~17):
P3口是一个带有内部上拉电阻的8位双向I/O端口。
P3口的输出缓冲器可驱动(吸收或输出电流的方式)4个TTL输入。
对端口P3写1时,通过内部的上拉电阻把端口拉到高电位,这时可用作输入口。
P3口作输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流。
在AT89C52中,P3口还用于一些复用功能。
复用功能如表2-2所示。
在对Flash编程和程序效验时,P3口接收高位地址和一些控制信号。
表2-2 P3个端口引脚与复用功能
Tablet.2-2 ThefunctionofP3portpin
端口引脚复用功能
P3.0RXD:
串行输入口
P3.1TXD:
串行输出口
P3.2(外部中断0中断请求输入端)
P3.3(外部中断1中断请求输入端)
P3.4T0(定时器0的外部输入)
P3.5T1(定时器1的外部输入)
P3.6(外部数据存储器写选通)
P3.7(外部数据存储器写选通)
单片机是在本次设计中是核心部分,相当于人类的大脑,负责处理前向通道检测回来的数据,然后按照一定规律送往后向通道执行控制。
它指挥着各个部分的协调工作,所以说单片机是本次设计的核心器件。
2.3 时钟电路
单片机虽然有内部振荡电路,但要形成时钟,必须外部附加电路。
本次设计中,单片机的时钟电路如图2-3所示。
片内电路与片外器件构成了一个时钟产生电路,CPU的所有操作均在时钟脉冲同步下进行。
片内振荡器的振荡频率fosc非常接近晶振频率,一般多在1.2MHz~12MHz之间选取。
XTAL2输出约为3V左右的正弦波。
图中C1和C2是反馈电容,其值在5pF~30pF之间选取。
改变C1和C2可微调fosc。
这里晶振频率选12MHz,C1,C2均选30pF[3]。
图2-3 时钟电路
Fig.2-3 Clockcircuit
3温度检测与控制
3.1 温度检测部分
温度检测是本次设计前向通道的重要组成部分,它的精确程度将直接影响到控制效果。
因此,我们首先要选择合适的测温元件,对温度进行准确的测量。
3.1.1传感器概述
传感器是检测系统的第一个环节,其主要作用是将感知的被测非电量按照一定的规律转化为某一量值输出,通常是电信号。
也就是说,传感器是借检测元件(敏感元件)将被测对象的一种信息按一定的规律转换成另一种信息的器件或装置。
传感器所获取的信息通常有物理量、化学量和生物量等,而经传感器转换后的信息多数为电量,如电阻、电容、电感、电压、电流及频率与相位的变化等,它是实现自动化检测和自动控制的首要环节[4]。
传感器将被测信息如温度、压力、流量等转换成电信号输出,一般称为一次变换。
一般情况下经过一次变换后的信息具有以下特点:
1)输出电信号通常为模拟量;
2)输出电信号一般较微弱;
3)输出电信号的信号噪声比较小,甚至有用信号淹没在噪声之中;
4)传感器的输入输出特性通常存在一定的非线性,并易受环境温度及周围电磁干扰的影响;
5)传感器的输出特性与电源的稳定性等有关,通常要求恒压或恒流供电。
3.1.2 温度传感器选择
在电阻炉温度控制系统中,温度的检测与控制尤为重要。
而温度检测工作又是保证温度控制的基础。
温度传感器是通过物体随温度变化而改变某种特性来间接测量的。
不少材料、元件的特性都随温度的变化而变化,所以能做温度传感器的材料相当多。
温度传感器随温度变化而引起的物理参数变化有:
膨胀、电阻、电容、热电动势、磁性能、频率、光学特性及热噪声等等。
随着生产的发展,新型温度传感器还会不断地涌现。
由于工业生产中温度测量的范围极宽,从零下几百度到零上几千度,而各种材料做成的温度传感器只能在一定的温度范围内使用。
温度传感器与被测介质的接触方式分为两大类:
接触式和非接触式。
接触式温度传感器需要与被测介质保持热接触,使两者进行充分的热交换而达到同一温度。
这一类传感器主要有电阻式、热电偶、PN结温度传感器等。
非接触式温度传感器无需与被测介质接触而是通过被测介质的热辐射或对流传到温度传感器,以达到测温的目的。
这一类传感器主要存在红外测温传感器。
这种测温方法的主要特点是可以测量运动状态物体的温度(如慢速行驶着的火车的轴承温度、旋转着的水泥转窑的温度)及热容量小的物体(如集成电路中的温度分布)。
常见的感温元件有热电偶、热电阻和半导体传感器,它们的主要优缺点是:
热电偶价格便宜,但精度低,需要冷端温度补偿,电路设计复杂;
热电阻精度高,但需要标准稳定电阻匹配才能使用。
而半导体温度传感器线路设计简单,精度较高,线性度好,价格适中,非常适合0~300oC之间的测量。
3.1.3 测温元件接线方式
所以选择热电阻传感器。
但是,由于用热电阻传感器进行测温时,测量电路一般采用电桥电路。
但是热电阻与检测仪表距离一般较远,因此热电阻的引线对测量结果有很大的影响。
热电阻测温电桥的引线方式通常有三种:
两线制、三线制、四线制。
两线制中引线电阻对测量结果影响较大,一般用于测温精度不高的场合;
三线制可以减小热电阻与测量仪表之间连接导线的电阻因环境温度变化所引起的测量误差;
四线制可以完全消除引线电阻对测量的影响,用于高精度温度测量的检测。
其接线图如下:
图3-1测温电桥的引线方式
Fig.3-1Leadingwayoftemperaturebridge
因此,本次设计采用三线桥式测温电路。
接线方式如图3-2所示。
其中,铂电阻接入采用三线接法,以消除引线电阻对测量精度的影响[5]。
3.1.4 线性化处理
图3-2测温电路
Fig.3-2MeasuringCircuit
铂热电阻中的铂丝纯度用电阻比W100来表示,它是铂热电阻在100摄氏度时的电阻值R100与0摄氏度时的电阻值之比。
铂电阻阻值与温度的关系可以用下式表示:
在-200至0摄氏度以内
(3-1)
在0至800摄氏度以内
(3-2)
式中,---温度为时的电阻值;
---温度为时的电阻值;
---任意温度;
A、B、C---常数。
当铂的W100=1.391时
A=3.968*10-3/,
B=-5.847*10-7/,
C=-4.22*10-12/
很显然,上述表达式中,铂热电阻阻值与温度t之间的关系为非线性的。
因此,在测温系统中必须对铂热电阻的非线性进行优化,从而提高系统的精确度。
常用方法有差值法、折线法和迭代法。
插值法和折线法对内存空间有一定要求,同时要求选取合适的插值点,而迭代法则存在运算复杂,运算周期长的缺点。
因此在设计系统的过程中,采用最小二乘法进行拟合,很好地解决了铂热电阻不平衡电桥法测温方案中的非线性误差。
由图3-3电桥电路可知电桥输出端电压与的关系表达式为:
(3-3)
其中,,,,
设则
所以式
(1)可以表示为:
(3-4)
将放大器的增益设为,则可得
(3-5)
其中,
在0到300摄氏度范围内对通过的计算可以得到相应与t的关系,如表3-1所示:
表3-1与t的关系
Table.3-1relationshipwitht
温度4080120160200240280300
电压0.2410.4620.6640.8931.0941.2911.4891.632
表中,温度单位为摄氏度,电压单位为伏特。
拟合多项式的形式选为:
(3-6)
所以,用最小二乘法拟合得出:
,,,
(3-7)
以上是对热电阻的线性处理。
图中U8构成增益可调的差动运算放大器,其中:
R4=R5=Rf=5k
R6=R7=R8=R9=R10=RF=50k
AW为接入系数,该电路的理想闭环增益为:
(3-8)
在调试时适当选取AW的值,可使增益在一定范围内变化,本电路中取
AW=1,则=40
U9构成反相比例运算放大器
(3-9)
调节w1的值,可调节其增益。
二个二极管Dl,D2起限幅作用,使输出在0-+5V内变化,该电压范围即为单片机允许的模拟电压输入信号。
3.2温度控制部分
温度检测部分将检测到的信号经过A/D转换,然后送往单片机进行运算处理,然后输出控制信号对执行部分进行控制。
这部分也称为功率输出电路,它的作用是将经过单片机运算处理后的控制信号用于驱动后向通道,对系统进行校正、调整和控制等操作。
3.2.1 温度控制元件的选择
本控制器对温度的直接控制元件是双向可控硅(双向晶闸管)。
下面对双向可控硅的特性和工作原理做以说明。
双向晶闸管是一对反并联连接的普通晶闸管,可以认为是闸管的集成。
它的特点是,它有两个主电极T1和T2,一个门极G。
门极使器件在主电极的正反两方向均可触发导通,所以双向晶闸管在第一象限和第三象限有对称的伏安特性。
双向晶闸管与一对反并联晶闸管相比是经济的,而且控制电路也比较简单所以在交流调压电路、固态继电器和交流电动机等领域应用较多。
由于双向晶闸管通常用于交流电路中,因此不用平均值而用有效值来表示其额定电流值。
晶闸管触发导通有以下几种条件;
1)阳极电压升高至相当高的数值造成雪崩效应;
2)阳极电压上升率/过高;
3)节温过高;
4)光直接照射硅片,即光触发。
晶闸管的正常工作特性:
1)当晶闸管承受反向电压时,不论门极是否有触发电流,晶闸管都不会导通。
2)当晶闸管承受正向电压时,仅在门极有触发电流的情况下晶闸管才能导通。
3)晶闸管一旦导通,门极就失去控制作用,不论门极触发电流是否存在,晶闸管都保持导通。
4)若要使已经导通的晶闸管关断,只能利用外加电压和外电路的作用使流过晶闸管的电流降到接近零的某一数值以下。
根据以上晶闸管特点,我设计了控制电路的结构[6]。
3.2.2 可控硅控制方式的选择
由于本次设计对于温度的控制是通过控制双向可控硅,进而控制输出功率的大小,达到对温度的控制的目的。
那么,对于控制电路输出功率大小的调节,有两种方式。
第一种方式:
采用可控硅移相调压电路。
所谓可控硅移相调压电路,就是将计算得到的控制量先经过D/A变换,然后控制可控硅的移相触发电路,实现输出电压的无级调节。
但是,由于电压输出波形的不完整,并且含有高次谐波分量,对电网有一定的干扰。
所以不宜采用这种方法。
第二种方式:
采用占空比开关电路控制,也就是通过调节周期时间内的通电时间来调节输出功率的大小,这样负载上得到的电压为正弦波,同时,这种方式克服了调压方式的以上缺点。
因此,本控制器对温度的控制采用占空比开关电路来实现,其电路如图3-3所示。
图中MOC3041是一种过零触发光电偶合芯片,内部集成了发光二极管,双向可控硅.和过零触发电路等器件。
可用来实现BTA12双向控硅的过零触发。
MOC3041输出端允许的最大重复浪涌电流(IA)
MOC3041
图3-3温度控制电路
Fig.3-3Temperaturecontrolcircuit
的作用是限制流过MOC3041的输出端的电流不超过允许的最大重复浪涌电流。
的值可大致如下估算:
=/(3-10)
其中:
为工作电压的峰值,也就是220伏。
为MOC3041输出端允许的最大重复浪涌电流(1A)。
由于的串入,使触发电路产生一个最小触发电压场,低于时,双向可控硅BTA12不能导通。
=++