电阻炉微型计算机温度控制系统设计

上传人:无*** 文档编号:90582946 上传时间:2022-05-15 格式:DOC 页数:18 大小:217KB
收藏 版权申诉 举报 下载
电阻炉微型计算机温度控制系统设计_第1页
第1页 / 共18页
电阻炉微型计算机温度控制系统设计_第2页
第2页 / 共18页
电阻炉微型计算机温度控制系统设计_第3页
第3页 / 共18页
资源描述:

《电阻炉微型计算机温度控制系统设计》由会员分享,可在线阅读,更多相关《电阻炉微型计算机温度控制系统设计(18页珍藏版)》请在装配图网上搜索。

1、-学 号:11课 程 设 计题 目电阻炉微型计算机温度控制系统的设计学 院专 业班 级姓 名指导教师2013年7月4日. z.-课程设计任务书学生: 专业班级:指导教师: 石云 工作单位:题 目: 电阻炉微型计算机温度控制系统的设计初始条件:设计一个电阻炉微型计算机温度控制系统,系统为一阶惯性纯滞后特性参数自定,温度控制要求为500,温度控制精度为 1;通过LED 显示温度;要求完成的主要任务:1 输入通道及输出通道设计;2 LED接口设计;3 采用改良PID控制算法;1 系统软件流程及各程序模块设计并用仿真软件演示;4 完成符合要求的设计说明书。时间安排:2013年6月25日2013年7月4

2、日指导教师签名: 年 月 日系主任或责任教师签名: 年 月 日目录1 控制对象11.1控制对象介绍11.2 控制性能要求12方案的比拟和确定13统软硬件设计23.1总体设计23.2温度检测电路33.3 控制信号输出通道33.4 LED显示电路44 系统软件设计54.1 程序流程图54.2控制算法65基MATLAB仿真被控对象86.心得体会10参考文献11附录一电路图12附录二程序代码13. z.-摘要当今社会,随着产品的精细化,温度对产品的影响原来越受到人们的关注,于是,温度控制成为了工业生产中重要的控制参数之一。这样,一个能够准确控制温度的系统成为人们迫切的需要,它将能够广泛的被使用于的各种

3、加热炉、精细器件制造、甚至于食品行业等。本次试验便以电阻炉的温度控制为例,试图探求一个具有良好稳定性的温度控制系统。本次试验以C51单片机为核心,采用温度变送器桥路和固态继电器控温电路,该控制系统具有硬件本钱低、控温精度较高、可靠性好、抗干扰能力强等特点。根本的想法是:C51单片机能够按要求对电阻炉进展实时监测和控制算法确实定,发出准确的控制命令;A/D转换芯片将得到的模拟量转化为数字量;单片机对数字量进展处理,得到应有的控制量,去控制加热功率,从而实现对温度的控制。关键词:单片机、电阻炉、温度测量、控制系统. z.-电阻炉微型计算机温度控制系统的设计1 控制对象1.1控制对象介绍电阻炉是利用

4、电流通过电热体元件将电能转化为热能来加热或者熔化工件和物料的热加工设备。电阻炉由炉体、电气控制系统和辅助系统组成。炉体由炉壳、加热器、炉衬包括隔热屏等部件组成。电气控制系统包括电子线路、微机控制、仪表显示及电气部件等。辅助系统通常指传动系统、真空系统、冷却系统等,虽炉种的不同而已。电阻炉的主要参数由额定电压、额定功率、额定温度、工作空间尺寸。生产率、空炉损耗功率、空炉升温时间、炉温控制精度及炉温均匀性等1.2 控制性能要求本设计要求控制一个电阻炉,它是一个具有很大滞后性的系统,惯性也很大,其传递函数的形式可以写为,温度控制要求为500,温度控制精度为 1,电阻炉的温度还要通过LED 实时显示出

5、来。2方案的比拟和确定方案一系统采用8084芯片作为系统的微处理器。温度信号由热电偶检测后转换为电信号经过预处理放大送到A/D转换器,转换后的数字信号再送到8084芯片部进展判断或计算。从而输出的控制信号来控制锅炉是否加热。但对于8084芯片来说,其部只有128个字节的RAM,没有程序存储器,并且系统的程序很多,要完成键盘、显示等功能就必须对8084芯片进展存储器扩展和I/O口扩展,并且需要容量较大的程序存储器,外扩时占用的I/O口较多,使系统的设计复杂化。方案二系统采用AT89C51作为系统的微处理器来完成对炉温的控制和键盘显示功能。C51单片机片除了128KB的RAM外,片又集成了4KB的

6、ROM作为程序存储器,是一个程序不超过4K字节的小系统。系统程序较多时,只需要外扩一个容量较小的程序存储器,占用的I/O口减少,同时也为键盘、显示等功能的设计提供了硬件资源,简化了设计,降低了本钱。因此89C51可以完成设计要求。综上所述的二种方案,该设计选用方案二比拟适宜。3统软硬件设计3.1总体设计系统的硬件包括微控制器局部主机、温度检测、温度控制、人机对话键盘/显示4个主要局部,系统的构造框图如图3-1所示。系统程序采用模块化设计方法,程序有主程序、中断效劳子程序和各功能模块程序组成,各功能模块可直接调用。图3-1系统构造框图3.2温度检测电路温度检测电路包括温度检测电路、放大器和A/D

7、转换三局部。原理图如图3-2所示图3-2温度检测电路Pt100温度传感器的测量围为:,符合题目中的温度测量。它是利用金属铂在温度变化时自身电阻值也随之改变的特性来测量温度的,显示仪表将会指示出铂电阻的电阻值所对应的温度值。当被测介质中存在温度梯度时,测得的温度是感温元件所在围介质层中的平均温度。铂电阻的阻值随温度的变化而变化的计算公式:-200t0 Rt=R01+At+Bt+C(t-100)t 3-10t850 Rt=R01+At+Bt23-2Rt为t时的电阻值,R0为0时的阻值。公式中的A,B,系数为实验测定。这里给出标准的系数:A=3.90802*10-3;B=-5.802*10-7; C

8、=-4.27350*10-12。3.3 控制信号输出通道该电路用到了芯片MOC3021,它是过零触发双硅输出光耦。过零触发是在设定时间间隔,改变晶闸管导通的周波数来实现电压或功率的控制。 实际上它就相当于一个用于交流电路中的电子开关,这个电子开关的接通、断开动作是在交流电流过0点完成的。这样的电路,对用电负荷不会造成电流冲击。电路的工作状况是断续的,适用于本系统热惯性较大的电阻炉负载。控制信号输出通道的电路图如图10所示,考虑到加热系统具有较大的热惯性,即一阶惯性纯滞后特性,本系统采用脉冲宽度调制PWM的控制方法,单片机输出控温信号。单片机输出低电平时,使双向可控硅导通,电热丝通电;输出高电平

9、时,双向可控硅截止,电热丝断电。其中,7407用于驱动,提供更大的电流驱动发光二极管。可控硅门极回路与220V电源相通,光电耦合器有效地把单片机系统与220V强电隔离,确保了单片机系统的平安性。原理图如3-3所示图3-3控制信号输出通道3.4 LED显示电路由于温度控制精度为1,设计中选取型号为7SEG-MPX4-CC的数码管显示器,其为共阴极数码管。工作方式为动态显示方式。动态显示,就是微型机定时地对显示器件扫描,在这种方法中,显示器件分时工作,每次只能一个器件显示。但由于人视觉的暂留现象,所以,仍感觉所有的器件都在显示。图3-4LED显示电路4 系统软件设计4.1 程序流程图该控制系统的流

10、程图如图4-1所示,首先对单片机的各个控制端口以及各个参数初始化,然后就启动A/D转换,读取转换后的数据。对转换后的数据进展滤波等操作,使数据的准确性提高,然后进展标度变换,得到实际的测量温度。把测量温度进展处理后送到数码管显示,把测量温度与规定温度作比拟,判断是否动作。同时计算测量温度与标准值之间的偏差,根据偏差判断是进展PID计算还是积分项改良别离的PD计算,得到PWM脉冲控制执行机构,然后程序重复执行。图4-1电阻炉系统控制流程图4.2控制算法4.2.1控制算法确实定PID调节是连续系统术最成熟的、应用最广泛的一种控制算方法。它构造灵活,不仅可以用常规的PID调节,而且可以根据系统的要求

11、进展改良,适时的采用各种PID的变型,如PI、PD控制等,本次试验便是使用改良的PID控制算法,它具有许多特点,如不需要求出数学模型、控制效果好、能够防止积分饱和、能够消除积分不灵敏区等,特别是在温度调节系统中,由于被控量变化较为缓慢且有惯性和滞后情况,积分项往往会产生很大的积累,导致系统产生很大超调,甚至发生震荡,使用改良PID控制算法可以将积分项进展别离,提高系统稳定性。改良PID控制系统的构造框图如图4-2所示:图4-2 系统构造框图具有一阶惯性纯滞后特性的电阻炉系统,其数学模型可表示为:4-1在改良PID调节中,需要根据屡次测试确定积分别离阈值,当时,采用PD控制,当时,采用PID控制

12、。阈值一定要选取适宜,假设选取过大,达不到积分别离的目的,假设选取过小,被控量无法跳出积分别离区,一直处于PD控制,将会出现残差。确定时,可以先假设一个值,然后测试假设干个不同的PI、PD参数,得出一组较好的控制参数。积分别离控制算法可表示为:4-2式中:T为采样时间,a为积分项开关系数,当时,a=0;时,a=1。为积分系数;为微分系数;为比例系数。因此,炉温控制系统的输出量为:a=0,a=1,其中, 为输出量;、分别为第t次、第t-1次和第t-2次采样时刻的偏差值。由式可知:a=1时,比例系数和微分系数同时起作用,温度快速接近设定值。a=0时,比例系数和微分系数同时起作用,使系统更加稳定接近

13、设定值,防止超调和过冲。与PID控制算法相比,改良PID控制算法有如下优点:(1) 单纯的PID控制算法无法发挥计算机运算速度快、逻辑判断能力强、编程灵活等优势,从而很难获得更好的效果。而改良PID控制算法那么能够更加灵活的根据输入量的变化与特点进展算法调整,使输出更加准确。 2对于温度这种变化缓慢的过程,PID算法的积分项会使系统产生很大超调量和很长的调整时间,如果在较大时取消积分作用,在较小时才投入积分项,就可以很灵活的防止这种情况,获得更加准确的调整。正因为具有上述优点,在实际控制中,改良PID控制算法比标准PID控制算法应用更加广泛。5基MATLAB仿真被控对象由于在硬件电路中,我们看

14、到的只是PID整定的结果,而对于其工作过程却不清楚,因此为了更清楚的了解PID的调节过程,我们使用MATLAB的SIMULINK功能对PID调节进展仿真,得出其整定的工作波形,从而更直观的看到PID调节过程。采用SIMULINK仿真,通过SIMULINK模块实现积分别离PID控制算示。设采样时间Ts=10s,被控对象为:SIMULINK仿真图如图5-1所示。图5-1 Simulink仿真图选择适宜的Kp,Ki,Kd是系统的仿真效果趋于理想状态。MATLAB编写程序如下:clear all;close all;ts=10sys=tf(1,30,1,inputdelay,80);dsys=c2d(

15、sys,ts,zoh);num,den=tfdata(dsys,v);kp=5.2ki=0.1;kd=0.1MATLAB仿真波形如图5-2所示。图5-2 MATLAB仿真波形6.心得体会本次课程设计之初,通过教师的给的资料,对报告的要求和所设计的容有了一定的了解。由于对电阻炉,温度传感器等不是太了解,于是在我查询了相关的资料,了解了电阻炉,温度传感器,根据题目的要求选择了热电阻中的铂电阻。同时本次课程设计中运用到了51单片机、TLC2543等较多的芯片,为此查询了相关芯片的引脚图,对这些芯片有了大致的了解,在学会使用这些芯片的过程,我也学到了许多的知识。本次课程设计让protues,Diagr

16、am Designer,word,Keil等软件的使用,增强了我的电脑操作能力,对单片机的使用让我重新回忆了C语言的使用,对以前的知识有了复习的时机。而本次课程设计主要的难点也是在于程序的设计。本次课程设计中也遇到了些问题,如刚开场时题目的理解错误,程序运行出错,仿真出问题等,在同学的指导和帮助下,这些问题得到了一定的解决。在今后的学习生活中也是如此,除了自己的努力外,还需请教他人,学习他人的经历,让今后的路更加的平坦。参考文献1 立周、宇.单片机原理及其应用.:机械工业,20062 于海生编著.计算机控制技术.机械工业,20033 谭浩强.C程序设计.:清华大学,20054 于海生.计算机控

17、制技术.:机械工业,2007.5 红丽、菊秀. 传感与检测技术. 国防工业,2007.6 康华光编著.电子技术根底模拟局部.高等教育,2000附录一 电路图附录二 程序代码#include #include #define uint unsigned int#define uchar unsigned charsbit D_OUT=P30;sbit D_IN=P31;sbit _CS=P32;sbit CLOCK=P33; /单片机与TLC2543连接的端口定义sbit C1=P21;sbit C0=P20;sbit C2=P22;sbit C3=P23; /单片机与数码管位选连接的端口定义s

18、bit dip=P07; /数码管小数点的定义sbit green=P34;sbit red=P35; /报警灯的定义uint KP=10; /比例系数uint KI=5; /积分系数uint KD=3; /微分系数uint KC=5; /速度调整sbit HEAT=P27;/执行装置端口定义float PWM; /脉冲调制宽度uint temp; /温度值uchar code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71; /数码管显示表/*准确延时模块*/void

19、delay(uchar n)uchar i;for(i=0;i0;x-)for(y=110;y0;y-);/*TLC2543驱动模块*/uint read2543(uchar port)uint ad=0,i;CLOCK=0;_CS=0;port=4;for(i=0;i12;i+)if(D_OUT) ad|=0x01;D_IN=(bit)(port&0x80);CLOCK=1;delay(3);CLOCK=0;delay(3);port=1;ad=1;return(ad); /* 温度显示函数*/void display(uchar qian,uchar bai,uchar shi,uchar

20、 ge)P0=tableqian;C0=0;delayms(2);C0=1;P0=tablebai; C1=0;delayms(2);C1=1;P0=tableshi;dip=1; C2=0;delayms(2); C2=1;P0=tablege;C3=0;delayms(2);C3=1;/*PID程序判断计算模块*/void PID() uint diff19=0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0; uint um_diff=0; /(diff) uint urr_=0; float p_out,i_out,d_out,temp_pid; float p

21、wm_0; temp_pid=diffcurr_; if(curr_+1=19)curr_=0; sum_diff-=diffcurr_; diffcurr_=abs(key-(uint)(temp); sum_diff+=diffcurr_; p_out=KP*diffcurr_; /比例项输出 i_out=KI*sum_diff; /积分项输出 d_out=KD*(diffcurr_-temp_pid); /微分项输出 pwm_0=KC*key; /维持功率项 if(i_out100)i_out=100; /积分别离 if(i_out-100)i_out=-100; PWM=p_out+i

22、_out+d_out+pwm_0; /总输出量 if(PWM=100)PWM=100;/*执行程序模块*/void PWM_OUT_HEAT(float PWM) uchar i; uchar limit; /pid_value输出百分比 limit=(uchar)PWM; if(t1=limit)HEAT=0; /加热 else HEAT=1; /停顿加热 for(i=0;i100)t1=1; /*主函数*/void main() uint ad;float temp1;uchar m1,m2,m3,m4;green=1;red=1;while(1)ad=read2543(0); /读取温度数字量temp=6/4.0*ad;m1=temp/1000;m2=temp/100%10;m3=temp/10%10;m4=temp%10; /标度变换display(m1,m2,m3,m4); temp1=temp/10;if(temp1501|temp1409)/灯光显示green=1; red=0;else red=1; green=0; if(temp1!=500)/不等于设定温度时调温 PID(); PWM_OUT_HEAT(PWM);/小于等于设定温度升温. z.

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!