基于大林算法的炉温控制系统设计与仿真课程设计报告.doc_第1页
基于大林算法的炉温控制系统设计与仿真课程设计报告.doc_第2页
基于大林算法的炉温控制系统设计与仿真课程设计报告.doc_第3页
基于大林算法的炉温控制系统设计与仿真课程设计报告.doc_第4页
基于大林算法的炉温控制系统设计与仿真课程设计报告.doc_第5页
免费预览已结束,剩余16页可下载查看

下载本文档

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

文档简介

电气工程与自动化学院课程设计报告(控制基础)题 目:基于大林算法的炉温控制系统设计与仿真专业班级:自动化101班学 号:26号学生姓名:许瑞新指导老师:杨国亮 2012 年 12 月 21 日摘 要在许多实际工程中 , 经常遇到一些纯滞后调节系统,往往滞后时间比较长。对于这样的系统, 人们较为感兴趣的是要求系统没有超调量或很少超调量, 超调成为主要的设计指标。尤其是具有滞后的控制系统, 用一般的随动系统设计方法是不行的, 而且 PID 算法效果往往也欠佳。在温度控制技术领域中, 普遍采用控制算PID法。但是在一些具有纯滞后环节的系统中, PID控制很难兼顾动、静两方面的性能, 而且多参数整定也很难实现最佳控制。IBM公司的大林于1968年提出一种针对工业生产过程中含有纯滞后的控制对象的控制算法,即大林算法。它具有良好的效果,采用大林算法的意义在于大林控制算法能在一些具有纯滞后环节的系统中兼顾动静两方面的性能,若采用大林算法, 可做到无或者小超调,无或小稳态误差,控制效果比较理想。对工程实际应用具有很大的意义。下面就PID设计和大林算法设计比较,发现二者的不同之处,然后用Matlab的GUI功能将两者制作成可简单操作的用户图形界面。关键词:大林算法;PID控制;GUI界面;Matlab;目 录第一章 大林算法在炉温控制中的应用31.1大林算法简介31.2大林算法在炉温控制中的设计思路31.3大林算法实现炉温控制中的代码算法及波形图6第二章 PID实现炉温控制的仿真72.1 PID的原理及介绍72.2 PID炉温控制算法程序设计8第三章 大林算法和PID实现炉温控制的SIMULINK仿真113.1 大林算法SIMULINK仿真结构图及波形113.2 PID的SIMULINK仿真123.3 大林算法和PID的比较13第四章 GUI图形用户界面编程设计134.1 GUI简介134.2 GUI界面的建立144.2.1编写pushButton回调函数174.2.2仿真波形18致 谢19参考文献20第一章 大林算法在炉温控制中的应用1.1大林算法简介大林算法是由美国IBM公司的大林(Dahllin)于1968年针对工业生产过程中含纯滞后的控制对象的控制算法。该算法的设计目标是设计一个合适的数字控制器,使整个系统的闭环传递函数为带有原纯滞后时间的一阶惯性环节。大林算法是运用于自动控制领域中的一种算法,是一种先设计好闭环系统的响应再反过来综合调节器的方法。设计的数字控制器(算法)使闭环系统的特性为具有时间滞后的一阶惯性环节,且滞后时间与被控对象的滞后时间相同,此算法具有消除余差、对纯滞后有补偿作用等特点。宋体五号,居中,位于1.2大林算法在炉温控制中的设计思路已知电阻炉对象数学模型为其中,k=12, T=400, ,电阻炉的温度设定为1000.要求:(1) 设计大林控制算法;(2) 设计PID控制器,并与PID算法进行比较;(3) 改变模型参数,考察模型扰动下系统性能变化情况。设计思路:温控炉时间常数K调节系统总的放大倍数 系统的纯滞后时间, 且 = N T , T 为采样周期在被控制对象前加一个零阶保持器,将连续系统离散化,闭环系统的脉冲传递函数为:D (z)为温控炉按大林算法得出的数字控制器的数学模型。为了计算机实现比较方便, 把D (z)进一步简化为:根据流程图编写程序:图11 程序设计流程图宋体五号,居中,位于1.3大林算法实现炉温控制中的代码算法及波形图实验程序及波形图:r=1000;T=10;sys=tf(12,400 1,inputdelay,60)sys=c2d(sys,T,zoh);num,den=tfdata(sys,v);Tf=input(仿真时间Tf=);Tm=input(采样周期Tm=);a0=1/12;a1=exp(-Tm/400)/12;b1=exp(-Tm/400);b2=1-exp(-Tm/400);u1=0;u2=0;u3=0;u4=0;u5=0;u6=0;u7=0;e1=0;y=0;y1=0;t=0;for i=1:Tf/Tm e=r-y(end); u=a0*e-a1*e1+b1*u1+b2*u7;for j=1:Tm/T y=y,-den(2)*y1+num(1)*u6+num(2)*u7; t=t,t(end)+T;endu7=u6;u6=u5;u5=u4;u4=u3;u3=u2;u2=u1;u1=u;y1=y(end);e1=e;endplot(t,y) 图12 大林算法实现炉温控制波形图性能分析:基于大林算法的炉温控制系统仿真时,可以调节温控炉时间常数T使闭环系统的指标达到最佳。当T很小时,响应很快但稳定性不好系统会产生震荡;当T增大,系统的响应变慢,但稳定性很好。而且由波形图可见大林控制算法下系统几乎无超调,响应速度也很快,性能效果很好。第二章 PID实现炉温控制的仿真2.1 PID的原理及介绍具有一阶惯性纯滞后特性的电阻炉系统,其数学模型可表示为: (2-1)在PID调节中,比例控制能迅速反应误差,从而减小误差,但比例控制不能消除稳态误差,的加大,会引起系统的不稳定;积分控制的作用是:只要系统存在误差,积分控制作用就不断地积累,输出控制量以消除误差,因而,只要有足够的时间,积分控制将能完全消除误差,积分作用太强会使系统超调加大,甚至使系统出现振荡;微分控制可以使减小超调量,克服振荡,提高系统的稳定性,同时加快系统的动态响应速度,减小调整时间,从而改善系统的动态性能。将P、I、D三种调节规律结合在一起,可以使系统既快速敏捷,又平稳准确,只要三者强度配合适当,便可获得满意的调节效果。模拟PID控制规律为: (2-2)式中:称为偏差值,可作为温度调节器的输入信号,其中为给定值,为被测变量值;为比例系数;为积分时间常数;为微分时间常数;为调节器的输出控制电压信号。因为计算机只能处理数字信号,故上述数字方程式必须加以变换。设采样周期为T,第次采样得到的输入偏差为,调节器的输出为,作如下近似: (用差分代替微分) (用求和代替积分)这样,式(2-2)便可改写为: (2-3)其中, 为调节器第次输出值;、分别为第次和第次采样时刻的偏差值。由式可知: 是全量值输出,每次的输出值都与执行机构的位置一一对应,所以称之为位置型PID算法。在这种位置型控制算法中,由于算式中存在累加项,而且输出的控制量不仅与本次偏差有关,还与过去历次采样偏差有关,使得产生大幅度变化,这样会引起系统冲击,甚至造成事故。所以在实际中当执行机构需要的不是控制量的绝对值,而是其增量时,可采用增量型PID算法。当控制系统中的执行器为步进电机、电动调节阀、多圈电位器等具有保持历史位置的功能的这类装置时,一般均采用增量型PID控制算法。2.2 PID炉温控制算法程序设计(1)“PID控制”控制算法程序框图如图31所示。(2)“PID控制”控制算法程序代码如下:kp=input(比例Kp=);ki=input(积分Ki=);kd=input(微分Kd=);K=input(K=);ts=10;sys=tf(K,400,1,inputdelay,60);dsys=c2d(sys,ts,zoh);num,den=tfdata(dsys,v);u_1=0;u_2=0;u_3=0;u_4=0;u_5=0;ud_1=0;y_1=0;y_2=0;y_3=0;error_1=0;ei=0;for k=1:1:400time(k)=k*ts;rin(k)=1000;yout(k)=-den(2)*y_1+num(2)*u_5;error(k)=rin(k)-yout(k);ei=ei+error(k)*ts;gama=0.50;Td=kd/kp;Ti=1;c1=gama*Td/(gama*Td+ts);c2=(Td+ts)/(gama*Td+ts);c3=Td/(gama*Td+ts);u(k)=kp*error(k)+kd*(error(k)-error_1)/ts+ki*ei;u_5=u_4;u_4=u_3;u_3=u_2;u_2=u_1;u_1=u(k);y_3=y_2;y_2=y_1;y_1=yout(k);error_2=error_1;error_1=error(k);endplot(time,rin,r,time,yout,b);xlabel(time(s);ylabel(rin,yout);(3)“PID控制”控制算法波形图如下:图32 “PID控制”控制算法波形图由图32可知,PID控制调节器超调量较大,控制效果不太理想。第三章 大林算法和PID实现炉温控制的SIMULINK仿真3.1 大林算法SIMULINK仿真结构图及波形图21 大林算法实现炉温控制的SIMULINK仿真结构图图22 大林算法实现炉温控制的SIMULINK仿真波形图3.2 PID的SIMULINK仿真图23 PID实现炉温控制的SIMULINK仿真结构图图22 大林算法实现炉温控制的SIMULINK仿真波形3.3 大林算法和PID的比较大林算法适合用于没有超调或较小的超调而对快速性要求不高的场合。PID控制多年来受到广泛的的应用,PID在解决快速性、稳态误差、超调量等问题上具有很好的应用。PID的调整时间,动态性能都很好,但是PID也有需要改进的地方。如:积分项的改进在PID控制中,积分作用是消除稳态误差,提高控制精度。但是很多时候积分作用又会对系统的动态响应造成不良影响,是系统产生大的超调或时间震荡。具体的改进有:(1)积分项的改进有积分分离法、抗积分饱和法;(2)微分项的改进有不完全微分PID控制算法、微分先行PID控制算法。第四章 GUI图形用户界面编程设计4.1 GUI简介MATLAB是控制系统计算机辅助分析与设计的一个卓越平台,具有开放的环境、功能极强的矩阵运算、图形绘制、数据处理、各种工具箱以及像“草稿纸”一样的工作空间等许多优点,为控制工程基础的教学提供了一个连续的、有实用价值的工具。但命令繁多,分析起来过于零散,难于对控制系统的性质有个整体的掌握,困此编制一个辅助教学工具箱是必要的。在MATLAB开发平台中,有可视化编程能力很强的图形用户界面GUI,设计相应的控制系统辅助课程教学工具箱是完全可行的。图形用户界面(Graphical User Interface,简称 GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面。与早期计算机使用的命令行界面相比,图形界面对于用户来说在视觉上更易于接受。借助 MATLAB语言有中具有可视化编程能力很强的图形用户界面GUI,构建控制系统 CAI课程教学应用软件的使用环境,开发出操作简捷,形式灵活,界面友好,实用性强的人机对话窗口,提供一个方便的软件操作平台,计算机辅助分析与设计得到简化,同时也能提高学生动手分析与设计系统的主动性和创造性。 使用本软件教学系统,除了控制系统模型的参数设置通过键盘输入以外,其他的全部工作都只需用鼠标选择菜单的操作来完成,且无需任何编程操作。4.2 GUI界面的建立1、打开GUI或在MATLAB指令窗中运行guide得到如图3-1所示:图4-12、选则 Blank GUI 空白GUI设计工作台,如下图所示,包含以下4个功能区:(1) 菜单条(2) 编辑工具条(3) 控件模板区(4) 设计工作区:图形用户界面设计在该区域进行,引出图所示的界面设计工具。用鼠标拖动“工作区”右下角的“小黑块”,使工作区的大小与图与图大小相当点击“轴Axes”控件图标,然后在工作区中的适当位置,拉出适当大小的绘图区。类似上步操作,通过点击相应的“静态文本Static Text”、可编辑文本“Edit Text”、按键“Push Button”用鼠标拖拉出相应的控件,如图图 423、图形窗口和控件的某些参数进行设置双击工作区或控件可引出图形和相应控件的“属性编辑框Property Inspector”。图显示的是轴属性的编辑框。图43Tex控件用以表示各编辑框的名称,使界面友好;AXES控件在当前界面显示仿真波形;菜单栏显示说明部分;控件Pushbutton来控制仿真。GUI界面如图:图44图454.2.1编写pushButton回调函数界面中,“返回”按钮用于回到主界面,回调函数为:function back2_Callback(hObject, eventdata, handles)h=gcf;fangzhengui03;close(h);由三个edit控件可获得其返回值,通过 str2double(get(hObject,String)将返回值转换成整形变量,即Tm=str2double(get(handles.Tm,String); Tf=str2double(get(handles.Tf,String);T=str2double(get(handles.T,String);在pushbutton的回调函数中编写基于大林算法的炉温控制程序,并绘制仿真图形,其回调函数代码如下:function pushbutton1_Callback(hObject, eventdata, handles)Tm=str2double(get(handles.Tm,String); Tf=str2double(get(handles.Tf,String);T=str2double(get(handles.T,String);r=1000;A,B,C,D=tf2ss(12,T 1)G,H,Cd,Dd=c2dt(A,B,C,Tm,60)a0=1/12;a1=exp(-Tm/T)/12;b1=exp(-Tm/T);b2=1-exp(-Tm/T);u1=0;u2=0;u3=0;u4=0;u5=0;u6=0;u7=0;e1=0;y=0;y1=0;t=0;x=zeros(size(G,1),1);for i=1:Tf/Tm e=r-y(end); u=a0*e-a1*e1+b1*u1+b2*u7; x=G*x+H*u; y=y,Cd*x+Dd*u; t=t,t(end)+Tm; u7=u6;u6=u5;u5=u4;u4=u3;u3=u2;u2=u1;u1=u;y1=y(end); e1=e;endplot(t,y)4.2.2仿真波形得到波形界面如图:图4-6致 谢本课题在设计过程中得到杨国亮老师的悉心指导,每次设计遇到问题时老师不

温馨提示

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

评论

0/150

提交评论