ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:452.08KB ,
资源ID:8881139      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8881139.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于大林算法的炉温控制系统设计与仿真课程设计报告.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于大林算法的炉温控制系统设计与仿真课程设计报告.docx

1、基于大林算法的炉温控制系统设计与仿真课程设计报告摘 要在许多实际工程中 , 经常遇到一些纯滞后调节系统,往往滞后时间比较长。对于这样的系统, 人们较为感兴趣的是要求系统没有超调量或很少超调量, 超调成为主要的设计指标。尤其是具有滞后的控制系统, 用一般的随动系统设计方法是不行的, 而且 PID 算法效果往往也欠佳。在温度控制技术领域中, 普遍采用控制算PID法。但是在一些具有纯滞后环节的系统中, PID控制很难兼顾动、静两方面的性能, 而且多参数整定也很难实现最佳控制。IBM公司的大林于1968年提出一种针对工业生产过程中含有纯滞后的控制对象的控制算法,即大林算法。它具有良好的效果,采用大林算

2、法的意义在于大林控制算法能在一些具有纯滞后环节的系统中兼顾动静两方面的性能,若采用大林算法, 可做到无或者小超调,无或小稳态误差,控制效果比较理想。对工程实际应用具有很大的意义。下面就PID设计和大林算法设计比较,发现二者的不同之处,然后用Matlab的GUI功能将两者制作成可简单操作的用户图形界面。关键词:大林算法;PID控制;GUI界面;Matlab;目 录第一章 大林算法在炉温控制中的应用 31.1大林算法简介 31.2大林算法在炉温控制中的设计思路 31.3大林算法实现炉温控制中的代码算法及波形图 6第二章 PID实现炉温控制的仿真 72.1 PID的原理及介绍 72.2 PID炉温控

3、制算法程序设计 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年针对工业生产过程中含纯滞后的控制对象的控制算法。该算法的设计目标是设计一个合适的

4、数字控制器,使整个系统的闭环传递函数为带有原纯滞后时间的一阶惯性环节。大林算法是运用于自动控制领域中的一种算法,是一种先设计好闭环系统的响应再反过来综合调节器的方法。设计的数字控制器(算法)使闭环系统的特性为具有时间滞后的一阶惯性环节,且滞后时间与被控对象的滞后时间相同,此算法具有消除余差、对纯滞后有补偿作用等特点。1.2大林算法在炉温控制中的设计思路已知电阻炉对象数学模型为其中,k=12, T=400,,电阻炉的温度设定为1000.要求:(1) 设计大林控制算法;(2) 设计PID控制器,并与PID算法进行比较;(3) 改变模型参数,考察模型扰动下系统性能变化情况。设计思路:温控炉时间常数K

5、调节系统总的放大倍数 系统的纯滞后时间, 且 = 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=

6、);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)

7、 图12 大林算法实现炉温控制波形图性能分析:基于大林算法的炉温控制系统仿真时,可以调节温控炉时间常数T使闭环系统的指标达到最佳。当T很小时,响应很快但稳定性不好系统会产生震荡;当T增大,系统的响应变慢,但稳定性很好。而且由波形图可见大林控制算法下系统几乎无超调,响应速度也很快,性能效果很好。第二章 PID实现炉温控制的仿真2.1 PID的原理及介绍具有一阶惯性纯滞后特性的电阻炉系统,其数学模型可表示为: (2-1)在PID调节中,比例控制能迅速反应误差,从而减小误差,但比例控制不能消除稳态误差,的加大,会引起系统的不稳定;积分控制的作用是:只要系统存在误差,积分控制作用就不断地积累,输出控制

8、量以消除误差,因而,只要有足够的时间,积分控制将能完全消除误差,积分作用太强会使系统超调加大,甚至使系统出现振荡;微分控制可以使减小超调量,克服振荡,提高系统的稳定性,同时加快系统的动态响应速度,减小调整时间,从而改善系统的动态性能。将P、I、D三种调节规律结合在一起,可以使系统既快速敏捷,又平稳准确,只要三者强度配合适当,便可获得满意的调节效果。模拟PID控制规律为: (2-2)式中:称为偏差值,可作为温度调节器的输入信号,其中为给定值,为被测变量值;为比例系数;为积分时间常数;为微分时间常数;为调节器的输出控制电压信号。因为计算机只能处理数字信号,故上述数字方程式必须加以变换。设采样周期为

9、T,第次采样得到的输入偏差为,调节器的输出为,作如下近似: (用差分代替微分) (用求和代替积分)这样,式(2-2)便可改写为: (2-3)其中,为调节器第次输出值;、分别为第次和第次采样时刻的偏差值。由式可知: 是全量值输出,每次的输出值都与执行机构的位置一一对应,所以称之为位置型PID算法。在这种位置型控制算法中,由于算式中存在累加项,而且输出的控制量不仅与本次偏差有关,还与过去历次采样偏差有关,使得产生大幅度变化,这样会引起系统冲击,甚至造成事故。所以在实际中当执行机构需要的不是控制量的绝对值,而是其增量时,可采用增量型PID算法。当控制系统中的执行器为步进电机、电动调节阀、多圈电位器等

10、具有保持历史位置的功能的这类装置时,一般均采用增量型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=

11、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_

12、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仿真波形图

13、3.2 PID的SIMULINK仿真图23 PID实现炉温控制的SIMULINK仿真结构图图22 大林算法实现炉温控制的SIMULINK仿真波形3.3 大林算法和PID的比较大林算法适合用于没有超调或较小的超调而对快速性要求不高的场合。PID控制多年来受到广泛的的应用,PID在解决快速性、稳态误差、超调量等问题上具有很好的应用。PID的调整时间,动态性能都很好,但是PID也有需要改进的地方。如:积分项的改进在PID控制中,积分作用是消除稳态误差,提高控制精度。但是很多时候积分作用又会对系统的动态响应造成不良影响,是系统产生大的超调或时间震荡。具体的改进有:(1)积分项的改进有积分分离法、抗积分

14、饱和法;(2)微分项的改进有不完全微分PID控制算法、微分先行PID控制算法。第四章 GUI图形用户界面编程设计4.1 GUI简介MATLAB是控制系统计算机辅助分析与设计的一个卓越平台,具有开放的环境、功能极强的矩阵运算、图形绘制、数据处理、各种工具箱以及像“草稿纸”一样的工作空间等许多优点,为控制工程基础的教学提供了一个连续的、有实用价值的工具。但命令繁多,分析起来过于零散,难于对控制系统的性质有个整体的掌握,困此编制一个辅助教学工具箱是必要的。在MATLAB开发平台中,有可视化编程能力很强的图形用户界面GUI,设计相应的控制系统辅助课程教学工具箱是完全可行的。图形用户界面(Graphic

15、al User Interface,简称 GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面。与早期计算机使用的命令行界面相比,图形界面对于用户来说在视觉上更易于接受。借助 MATLAB语言有中具有可视化编程能力很强的图形用户界面GUI,构建控制系统 CAI课程教学应用软件的使用环境,开发出操作简捷,形式灵活,界面友好,实用性强的人机对话窗口,提供一个方便的软件操作平台,计算机辅助分析与设计得到简化,同时也能提高学生动手分析与设计系统的主动性和创造性。 使用本软件教学系统,除了控制系统模型的参数设置通过键盘输入以外,其他的全部工作都只需用鼠标选择菜单的操作来完成,且无需任何编程

16、操作。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”用鼠标

17、拖拉出相应的控件,如图图 423、图形窗口和控件的某些参数进行设置双击工作区或控件可引出图形和相应控件的“属性编辑框Property Inspector”。图显示的是轴属性的编辑框。图43Tex控件用以表示各编辑框的名称,使界面友好;AXES控件在当前界面显示仿真波形;菜单栏显示说明部分;控件Pushbutton来控制仿真。GUI界面如图:图44图454.2.1编写pushButton回调函数界面中,“返回”按钮用于回到主界面,回调函数为:function back2_Callback(hObject, eventdata, handles)h=gcf;fangzhengui03;close(

18、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(g

19、et(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(e

20、nd); 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致 谢本课题在设计过程中得到杨国亮老师的悉心指导,每次设计遇到问题时老师不辞辛苦的讲解才使得我的设计顺利的进行,给予我很大的支持和鼓励。从设计的选题到资料的搜集直至最后设计的修改的整个过程中,花费了杨老师很多的宝贵时间和精力,在此向杨老师表示衷心地感谢!杨老师严谨的治学态度

21、,开拓进取的精神和高度的责任心都将使我们受益终生!在此,谨向杨老师致以诚挚的谢意和崇高的敬意,他在学习方面给了我很大的帮助,并为我们提供了良好的学习环境,让我学到了知识,掌握了学习的方法,也获得了实践锻炼的机会。他严谨的治学态度对我的严格要求以及为人处世的坦荡将使我终身受益。还要感谢和我同一设计小组的几位同学,是你们在我平时设计中和我一起探讨问题,并指出我设计上的误区,使我能及时的发现问题把设计顺利的进行下去,没有你们的帮助我不可能这样顺利地完成,在此表示深深的谢意。在今后,我们将会更加努力,不管自己是否会走嵌入式系统技术这条道路,我们仍然还是会在课余时间继续对其进行更深入学习和探讨,为将来就业打下一个良好的基础。参考文献【1】杨国亮,梁礼明 基于MATLAB的控制系统仿真实验软件编制 中国电力教育 (2012)02-0080-02【2】于爽,张燕,肖军.基于MATLAB的过程控制系统课程仿真实验软件. 辽宁石油化工大学学报,2005.12【3】柴瑞娟.基于MATLAB GUI的线性控制系统教学仿真软件的设计. 计算机与现代化,2003.9【4】黄忠霖.控制系统 MATLAB计算及仿真 M . 北京:国防工业出版社 ,2001.【5】吴旭光,王新民.计算机仿真技术及应用. 西安:西北工业大学出版社,1998

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1