电加热炉温度微机控制系统设计毕业论文.doc_第1页
电加热炉温度微机控制系统设计毕业论文.doc_第2页
电加热炉温度微机控制系统设计毕业论文.doc_第3页
电加热炉温度微机控制系统设计毕业论文.doc_第4页
电加热炉温度微机控制系统设计毕业论文.doc_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

天津工业大学 毕业设计(论文) 电加热炉温度微机控制系统姓 名 李顺 学 院 继续教育学院 专 业 电气工程及其自动化 指导教师 贾文民 职 称 讲师 2014年 4 月 20日电加热炉温度微机控制系统摘 要温度是工业对象中的很重要参数的之一。广泛应用在冶金、化工、机械各类加热炉热、处理炉和反应炉等工业中。电加热炉随着科学技术的发展和工业生产水平的提高,已经在冶金、化工、机械等各类工业控制中得到了广泛应用,并且在国民经济中占有举足轻重的地位。对于这样一个具有非线性、大滞后、大惯性、时变性、升温单向性等特点的控制对象,很难用数学方法建立精确的数学模型,因此用传统的控制理论和方法很难达到好的控制效果。关键词:加热炉;pid;单片机abstracttemperature is one of the important parameters in the industrial object. widely used in metallurgy, chemical industry, machinery and all kinds of heating furnace, heat treatment furnace and furnace industry etc. electric heating furnace with the development of science and technology and industrial production level, has been widely used in metallurgy, chemical, machinery and other kinds of industrial control, and has play a decisive role in the national economy status. for such a nonlinear, large delay, large inertia, time-varying, unidirectional rising, control object, it is difficult to establish accurate mathematical model, so the traditional control theories and methods are difficult to achieve good control effect.key words:heating furnace; pid; mcu 目 录第一章 绪论1第二章 系统工作原理2第三章 硬件的设计与实现33.1 系统硬件设计33.2 单片机最小系统33.3 a/d转换器43.4 led数码管53.5 键盘电路63.6 晶闸管及其控制电路63.7炉温检测电路7第四章 系统控制流程及软件设计94.1 总体流程图94.2 程序块流程图9第五章 心得体会17参考文献18谢辞19第一章 绪论温度是工业对象中主要的被控参数之一。为了保证生产过程正常安全地进行,提高产品的质量和数量,以及减轻工人的劳动强度,节约能源,对加热用的各种电炉要求在一定条件下保持恒温,不能随电源电压波动或炉内物体而变化,或者有的电炉的炉温根据工艺要求按照某个指定的升温或保温规律而变化,等等。 工业生产过程中,用模拟控制来控制电加热炉温已经取得了较为成熟的经验,但他的控制精度较低,显示操作不方便,为此引入了计算机控制系统对温度进行数字算法控制。由于电炉加热的时间常数相对于采样周期来说很大,所以电炉加热控制系统的动态特性可以看作一阶滞后环节来近似,在控制算法上可采用pid控制或其他纯滞后补偿算法。 本课程设计所控制的电加热炉的加热能源是热阻丝,根据控制系统要求,设计控制方案和主电路及各检测控制模块电路,然后针对温度控制要求计算电路元件所需参数,应用pid控制算法,实现温箱的闭环控制。进而了解温度控制系统的特点及运用计算机设计控制程序实现计算机自动控制温度的方法。 第二章 系统工作原理 整个加热炉的温度控制系统采用典型的反馈式闭环控制,系统结构框图如图2.1所示。 图2.1 电加热炉计算机控制系统框图数字控制器的功能采用单片机at89c51实现,执行器的作用由可控硅实现,温度有采样与测量采用热电偶及变送器实现。 数字控制器的设计:在温度调节系统中,由于加热炉温度的时间常数很大(相对于采样周期而言),所以其闭环调节可以用一个一阶滞后环节来近似。可以采用直数字控制,也可以采用模糊控制和pid控制,本设计中采用pid控制,其控制系统的调节原理如图2.2所示: 图2.2 电加热炉计算机控制系统的调节原理 可控硅触发信号 炉温控制的基本原理是:改变可控硅的导通角即改变电热炉加热丝两端的有效电压,有效电压可在0140v内变化。温度传感器是通过一只热敏电阻及其放大电路组成,温度越高其输出电压越小。外部led灯的亮灭表示可控硅的导通与关断的占空比时间,如果炉温低于设定值则可控硅导通,系统加热,否则系统停止加热,炉温自然冷却到设定值。 第三章 硬件的设计与实现3.1 系统硬件设计 本系统的硬件设计主要包括:单片机最小系统、模数转换器、温度变送器、控制键盘、led显示数码管、光电隔离可控硅触发电路。硬件系统框图如图3.1所示: 图3.1 电加热炉计算机控制系统硬件框 3.2 单片机最小系统本系统采用at89c51单片机作为该控制系统的核心,实现对温度的采集、检测和控制。单片机控制a/d转换器,接收由a/d转换器转换得到的二进制温度数据,并对其进行数字滤波、标度变换并与输入的参照温度相比较,得出误差,根椐pid算法求出控制温度达到期望值所需要的控制量。通过调节高低电平输出时间,控制可控硅的接通时间,从而改变电炉的输出功率,达到调温的作用。单片机及其接口电路图如图3.2所示:图3.2 单片机最小系统及其外围电路接口图3.3 a/d转换器a/d转换器在该系统中的功能是将温度变送器输出的15v电压信号转换为单片机能识别的二进制代码,供给单片机做进一步的处理。电热炉的温度变化范围为室温到1000,将控制精度确定限定在5范围内,则可选择8位a/d转换器,其最小精度可以达到1000256=3.9215,则选择adc0808或adc0809均可满足设计要求,这里选择adc0809。 adc0809是cmos单片型逐次逼近式a/d转换器,它由8路模拟开关、地址锁存与译码器、比较器、8位开关树型a/d转换器、逐次逼近寄存器、逻辑控制和定时电路组成,其内部结构如图3.3所示。adc0809的工作过程:首先输入3位地址,并使ale=1,将地址存入地址锁存器中。此地址经译码选通8路模拟输入之一到比较器。start上升沿将逐次逼近寄存器复位。下降沿启动 a/d转换,之后eoc输出信号变低,指示转换正在进行。 直到a/d转换完成,eoc变为高电平,指示a/d转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当oe输入高电平 时,输出三态门打开,转换结果的数字量输出到数据总线上。本设计中只需要用到adc0809的一个通道即可,故将adc0809的输入通道选通地址a、b、c均接地(即只使用输入通道in0)。adc0809的工作时钟为500khz,由于单片机的ale能自动输出单片机时钟频率的1/6(即当单片机的时钟晶振选择12mhz时,ale自动输出2mhz时钟信号),adc0809的时钟信号通过对单片机ale的输出时钟进行四分频得到,进行四分频的器件可采用集成有两个二分频器的74ls74。单片机的pa口作adc0809的控制口,p0口作转换结束后转换数据的接收口。 adc0809与单片机的接口电路如图3.4所示。图3.3 adc0809内部结构图 图3.4 adc0809与单片机接口电路3.4 led数码管数码管主要用以显示设定温度值与实际测量温度值。数码管根据其连接方式可以分为共阴数码管与共阳数码管,根据其显示的段数可以分为七段数码管和八段数码管,其中八段数码管相比七段数码管要多一个小数位。 由于本设计所需用到的最大温度值为1000,故需选用4位数码,在这里选用4位共阴8段数码管作为本设计的led显示。四位共阴数码管的引脚图如图3.5所示,数码管与单片机的接口电路如图3.6所示。 图3.5 四位共阴数码管引脚图 图3.6 数码管与单片机接口电路 3.5 键盘电路键盘主要用来完成对系统参数的设置和启动及停止计算机自动控制系统。本系统主要采用四位独立键盘完成上述控制功能。键盘电路如图3.7所示,其中,s1、s2对预温度进行设置,s2为数码管移位选择按扭,被选中的数位小数点被点亮,此时再按s1,可以使被选中位从09依次循环,循环到所需要值的时候,再按s2移到下一位,依次设置完4位数码管组成的预设温度值。s3、s4分别为启动和停止计算机自动控制系统,当s3有按下信号时,单片机开始对系统进行自动调节控制,当s4有输入信号时,退出自动控制。 图3.7 键盘电路3.6 晶闸管及其控制电路 晶闸管属于半控器件,当在基极输入电流触发信号满足其导通电流强度时,晶闸管即导通,且导通后触发信号将失去作用。要使晶闸管关断,第一可以不断减小电源电压或是加大回路电阻,使阳极电流ia低于维持电流ih之下,晶闸管即可恢复关断;第二可以给晶闸管施加反电压,使晶闸管自行关断。 本系统中晶闸管的关断方式采用第二种,由于我们生活所用的交流电是频率为50hz的正弦交变电压,系统所要求晶闸管控制电压有效值在0140v内变化,故采用如图3.8所示的电路接线方式。当电源电压处于正弦变化的正半周的时修,通过调节晶闸管的导通角,即可改变电阻两端的电压有效值,当电源电压处于正弦负半周的时候,加在晶闸管两端的反电压使晶闸管自动关断。由于触发晶闸管导通的电流信号是模拟信号,故需要采取隔离措施,使数字控制电路与模拟负载电路隔离开,防止模拟信号串入数字电路造成误动作或损坏数字电路。这里采用的隔离措施是使用光电隔离器4n25,当p1.7输出高电平时,经7404反向为低电平,发光二极管发光触发模拟电路部分导通,晶闸管irf640得到触发信号从而导通。根据单片机发出脉冲的间隔时间不同,即可改变晶闸管的导通角,从而起到调压的作用。 图3.8 晶闸管及其控制电路3.7炉温检测电路 电炉的温度先由热电偶温度传感器检测并转换成微弱的电压信号,温度变送器将此弱信号进行非线性校正及电压放大后,送至a/d转换器转换为数字量,此数字量经过单片机数字滤波误差校正及查表等处理后,得到电炉内的实测温度值。温度检测原理结构如图3.9所示: 图3.9 温度检测原理图 第四章 系统控制流程及软件设计4.1 总体流程图 单闭环电加热炉温度计算机控制系统总体流程如图4.1所示 图4.1 程序总体流程图4.2 程序块流程图4.2.1 温度控制系统主程序及流程图 图4.2.1 主程序流程图 主程序主要进行初始化,定义i/o端口及定时器参数,调用子程序以便为系统正常工作创造条件。主程序如下,主程序流程序如图4.2.1所示: #include #include /*.定义四位数码管的位选脚.*/ sbit w1=p30; sbit w2=p31; sbit w3=p32; sbit w4=p33; /*.定义ad转换器的启动引脚.*/ sbit st=p11; /*.定义ad转换器的控制脚.*/ sbit eoc=p12; sbit oe=p13; /*.定义09十个数字代码.*/ unsigned char wu_ds = 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f; /*.定义按键引脚.*/ sbit s1=p3.4; sbit s2=p3.5; sbit s3=p3.6; sbit s4=p3.7; /*.声明程序中将会调用到的子程序.*/ void delay(int t);/声明程序延时子程序 int set_temp(int s);/声明设置初始值子程序 void start_temp(void);/声明启动a/d转换器子程序 void _pid_(int y,int z);/声明 pid 控制程序 /*.开始主函数.*/ void main() int data_in; /定义一个用来存放ad转换器转换结果的变量 int a1,a2,a3,a4,m,t; m=set_temp(0) ; p0=0xff; /初始化ad转换器数据端口 while(1) cont_temp(data_in); display(a1,a2,a3,a4); /调用数码管分时显示函数显示测得温度 t=a1*1000+a2*100+a3*10+a4; _pid_(m,t); 4.2.2 led数码管显示子程序及其流程图 8段led显示屏是最常用的显示器件,分为共阳极和共阴极两种形式。共阳极led将所有发光二极管的阳极接在一起作为公共端,当公共端接高电平,某一段的发光二极管阴极接低电平时,相应的字段就被点亮。共阴极led将所有发光二极管的阴极接在一起作为公共端,当公共端接低电平,某一段的发光二极管阳极接高电平时,相应的字段就被点亮。 led数码管的显示方法 动态显示:动态扫描,分时循环; 静态显示:一次输出,结果保持(1)动态显示 动态显示,就是微型机定时地对显示器件扫描,在这种方法中,显示器件分时工作,每次只能一个器件显示。但由于人视觉的暂留现象,所以,仍感觉所有的器件都在显示。 (2)静态显示 静态显示,是由微型机一次输出显示后,就能保持该显示结果,直到下次送新的显示模型为止。这种显示占用机时少,显示可靠。 通过比较及对程序的分析,本设计当中两组数码管均采用了共阴极静态显示。 本系统采用4位共阴数码管用动态显示的方式显示预设值和测得温度值,其动态扫显示程序如下,程序流程图如图4.2.2所示:void display(long int a,long int b,long int c,long int d) p0=0; /先关闭全部数码管 w1=0; /显示千位数,从左到右 p0=wu_dsa; delay(3); w1=1; p0=0; w2=0; p0=you_dsb;显示百位数 delay(3); w2=1; p0=0; w3=0; p0=wu_dsc;显示十位数 delay(3); w3=1; p0=0; w4=0; p0=wu_dsd;显示个位数 delay(3); w4=1; 图4.2.2 显示程序流程图4.2.3 a/d转换程序及流程图 转换程序及流程图转换程序及流程图转换程序及流程图 本系统所使用的a/d转换器adc0809接线图如图3.4所示,控制其启动及转换程序如下,启动a/d转换流程图如图4.2.3所示: void start_temp(void) ale=1;_nop_();_nop_();ale=0; /锁存通道地址,这里采用通道in0 st=1;_nop_();_nop_();st=0; _nop_();_nop_();_nop_();_nop_(); _nop_();_nop_();_nop_();_nop_();/start下降沿,开始进行a/d转换 while(eoc=0)/转换时间约为100us,在转换期间eoc为低电平,利用条件延时 _nop_(); oe=1; /转换结束,给oe高电平,请求输出转换结果 data_in=p3; /用p3口来接收ad转换器的转换结果,将结果存入data_in oe=0; 图4.2.3 a/d转换程序流程图4.2.4 数字控制器设计数字控制器是本控制系统的核心,用它对被测参数进行自动调节,这里采用pid程序设计法进行设计。根据位置型pid设计方法可写出表达式4-1 p(k)=pp(k)+pi(k)+pd(k) 式4-1 pp(k)=kpe(k) pi(k)=ki =kie(k)+ki =kie(k)+pi(k-1) pd(k) =kde(k)-e(k-1)根据4-1式和图2.2所示的pid调节控制图可得pid数字控制程序的流程图如图4.2.4所示:图4.2.4 位置型pid运算程序流程图4.2.5 键盘控制流程图在本次设计当中,输入设备采用4*4矩阵键盘。当“设定”键按下时触发键盘中断服务程序,由程序程控扫描法确定那个键按下并执行相应的动作。程控扫描的任务是: (1)首先判断是否有键按下。方法:使所有的行输出均为低电平,然后从端口a读入列值。如果没有键按下,则读人值为ffh如果有链按下则不为ffh。 (2)去除键抖动。方法:延时1020 ms,再一次判断有无键按下,如果此时仍有键按下,则认为键盘上确实有键处于稳定闭合期。 (3)若有键闭合,则求出闭合键的键值。方法:对键盘逐行扫描。 (4)程序中需等闭合键释放后才对其进行处理。 键盘控制程序采用定时器延时扫描的方法控制,当按键被按下时输入一个低电平,其流程图如图4.2.5所示:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论