大林控制其设计与仿真_第1页
大林控制其设计与仿真_第2页
大林控制其设计与仿真_第3页
大林控制其设计与仿真_第4页
大林控制其设计与仿真_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

目录第1章引言11.1、Dahllin算法介绍11.2、Dahllin算法的内容1系统结构11.2.2算法内容及公式2第二章设计内容42.1设计目的42.2设计内容42.1.1数字控制器D(z)的表达式42.2.2振铃现象5第3章MATLAB仿真73.1MATLAB的介绍7根本应用8MATLAB产品族可以用来进行以下各种工作:83.2仿真及输出图像83.2.1Dahllin算法的MATLAB程序93.2.2u(k)的单位阶跃响应波形图11第4章设计总结12第1章引言1.1、Dahllin算法介绍一般具有较大的时间常数和一定的纯滞后时间,且滞后时间比拟长的系统不利于现代化工业生产自动化水平提高,不利于产品质量和生产效率的提高。在生产过程中,大多数工业对象具有较大的纯滞后时间,对象的纯滞后时间对控制系统的控制性能极为不利,它使系统的稳定性降低,过渡过程特性变坏。对这样的系统在工业生产中要求没有超调量或超调量很小,调节时间希望在确定的采样时间内结束〔虽然也希望尽快结束过渡过程,但是这是第二位的〕。因此超调试主要的设计目标,用一般的控制系统设计方法是不行的,用模拟仪表控制算法效果也欠佳。当对象的纯滞后时间与对象的惯性时间常数T1之比,即/T10.5时,采用常规的比例积分微分〔PID〕控制,很难获得良好的控制性能。IBM公司的大林于1968年提出一种针对工业生产过程中含有纯滞后的控制对象的控制算法,即大林算法。它具有良好的效果,采用大林算法的意义在于大林控制算法能在一些具有纯滞后环节的系统中兼顾动静两方面的性能,可做到小超调小稳态误差。控制效果比拟理想。对工程实际应用具有很大的意义。1.2、Dahllin算法的内容系统结构大林算法要求在选择闭环Z传递函数时,采用相当于连续一节惯性环节的D〔z〕来代替最少拍多项式。如果对象含有纯滞后,D〔z〕还应包含有同样纯滞后环节〔即要求闭环控制系统的纯滞后时间等于被控对象的纯滞后时间〕。系统结构如下图图算法内容及公式大林算法的被控对象是带纯滞后的一阶或二阶惯性环节。即或本实验被控对象为带纯滞后的一阶惯性环节。式中:为纯滞后时间,为方便起见假设为采样周期T的整数倍大林算法的主要设计目标是系统在单位阶跃输入作用下,整个闭环系统的传递函数相当于一个延迟环节和一个惯性环节相串联。即〔1-1〕要求整个闭环系统的纯滞后时间等于被控对象的纯滞后时间。 与H(s)相对应的闭环系统脉冲传递函数为〔1-2〕将上式代入式中,得 〔1-3〕当对象为一阶惯性环节加纯滞后时〔1-4〕将式〔1-4〕代入式〔1-3〕得一阶惯性环节的控制器的D(z)为由上式,控制算法为第二章设计内容2.1设计目的〔1〕、掌握大林控制器的设计步骤。〔2〕、了解大林算法的时间常数对系统的影响。〔3〕、了解振铃现象对大林控制器的影响。〔4〕、掌握消除振铃的方法。2.2设计内容数字控制器D(z)的表达式设有纯滞后的一节惯性环节,其传递函数为:〔2-1〕式2-1中T1为对象的时间常数且T1=2s;为对象的纯滞后时间且=4s,K为对象的放大倍数且K=4,采样周期T=1s,即控制对象的传递函数为为了简化,设:〔2-2〕即为采样周期T的N倍,N为整数。对一节惯性对象,大林算法的设计目标是设计一个适宜的数字控制器,使整个闭环系统的传递函数相当于一个带有纯滞后的一节惯性环节的串联,其中纯滞后环节的滞后时间与被控对象的纯滞后时间完全相同,这样就能保证使系统不产生很小的超调,同时保证其稳定性。整个闭环系统的传函为:〔2-3〕于是得到数字控制器为〔2-4〕振铃现象直接用上述控制算法构成闭环控制系统时,人们发现数字控制器输出U〔z)会以1/2采样频率大幅度上下摆动。这种现象称为振铃现象。振铃现象与被控对象的特性、闭环时间常数、采样周期、纯滞后时间的大小等都有关系。振铃现象中的振荡是衰减的,并且于由被控对象中惯性环节的低通特性,使得这种振荡对系统的输出几乎无任何影响,但是振铃现象却会增加执行机构的磨损。在交互作用的多参数控制系统中,振铃现象还有可能影响到系统的稳定性,所以,在系统设计中,应设法消除振铃现象。可引入振铃幅度RA来衡量振荡的强烈程度。振铃幅度RA的定义为:在单位阶跃信号的作用下,数字控制器D〔z〕的第0次输出与第1次输出之差值。设数字控制器D(z)可以表示为:〔2-5〕其中〔2-6〕那么,数字控制器D〔z)输出幅度的变化完全取决于Q〔z),那么在单位阶跃信号的作用下的输出为:〔2-7〕根据振铃的定义,可得:〔2-8〕上述说明,产生振铃现象的原因是数字控制器D〔z〕在z平面上位于z=-1附近有极点。当z=-1时,振铃现象最严重。在单位圆内离z=-1越远,振铃现象越弱。在单位圆内右半平面的极点会减弱振铃现象,而在单位圆内右半平面的零点会加剧振铃现象。由于振铃现象容易损坏系统的执行机构,因此,应设法消除振铃现象。大林提出了一个消除振铃的简单可行的方法,就是先找造成振铃现象的因子,然后令该因子中的z=1.这样就相当于取消了该因子产生振铃的可能性。根据终值定理,这样处理后,不会影响输出的稳态值。本设计的被控对象是含有纯滞后的一阶惯性环节,大林算法求得的数字控制器为式3-13所示:〔2-9〕有可表示为式3-14所示:〔2-10〕可能引起振铃现象的因子是式3-15所示:〔2-11〕其振铃的幅度为:〔2-12〕根据r值的不同,有一下几种情况:〔1〕当r=0时,不存在振铃极点因子,此时不产生振铃现象〔2〕当r=1时,存在一个极点z=-();当τ<=时,z≈-1,存在严重的振铃。当r=2时,存在极点Z=,当τ<<T时,z≈,Z≈1时,存在振铃现象。对于r=2时的振铃极点,令Z=1代入式中可得:=此时就求得的消除振铃的数字控制器D〔z)表达式为第3章MATLAB仿真3.1MATLAB的介绍MATLAB是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言〔如C、Fortran〕的编辑模式,代表了当今国际科学计算软件的先进水平。MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创立用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。MATLAB的根本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也参加了对C,FORTRAN,C++,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。根本应用MATLAB产品族可以用来进行以下各种工作:●数值分析●数值和符号计算●工程与科学绘图●控制系统的设计与仿真●数字图像处理技术●数字信号处理技术●通讯系统设计与仿真\o"查看图片"●财务与金融工程●管理与调度优化计算〔运筹学〕MATLAB的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱〔单独提供的专用MATLAB函数集〕扩展了MATLAB环境,以解决这些应用领域内特定类型的问题。3.2仿真及输出图像该采样控制系统可以采用局部连续,局部环节采用离散化处理方式,对数字控制器仿真人采用离散化处理,后续连续控制对象按连续控制的离散相似法仿真。Dahllin算法的MATLAB程序clearall;closeall;ts=1;%初始化,采样周期t=1sys1=tf([4],[1,2],'inputdelay',4);%系统传递函数dsys1=c2d(sys1,ts,'zoh');%转换成z函数[num1,den1]=tfdata(dsys1,'v');%获得z传的函数的分子分母sys2=tf([1],[0.25,0.5],'inputdelay',4);%闭环传递函数dsys2=c2d(sys2,ts,'zoh');%转换成z函数dsys=1/dsys1*dsys2/(1-dsys2);%达林控制器的D(z)公式[num,den]=tfdata(dsys,'v');%获得z函数的分子分母u_1=0.0;u_2=0.0;u_3=0.0;u_4=0.0;u_5=0.0;y_1=0.0;error_1=0.0;error_2=0.0;error_3=0.0;ei=0;fork=1:1:50time(k)=k*ts;rin(k)=1.0;%TracingStepSignalyout(k)=-den1(2)*y_1+num1(2)*u_2+num1(3)*u-3;error(k)=rin(k)-yout(k);%差分方程M=1;ifM==1%使用达林算法u(k)=(num(1)*error(k)+num(2)*error_1+num(3)*error_2+num(4)*error_3...-den(3)*u_1-den(4)*u_2-den(5)*u_3-den(6)*u_4-den(7)*u_5)/den(2);u_5=u_4;u_4=u_3;u_3=u_2;u_2=u_1;u_1=u(k);y_1=yout(k);error_3=error_2;error_2=error_1;error_1=error(k);endplot(time,rin,'b',time,yout,'r');xlabel('time(s)');ylabel('rin,yout');%输出波形u(k)的单位阶跃响应波形图第4章设计总结在整个设计过程中,经常遇到各种问题,在编写程序时认为正确的,但经过上机实验,发现总是有语法,编程等个方面的问题,无法实现。回忆本次课程设计,在这两个星期的时间里,我收获很多,不仅稳固了所学知识,将相应知识运用于实践,而且学到很多课本以外的内容。通过这次课程设计使我懂得了理论与实践结合的重要性,只有将所学运用到实践中才是真正学懂了,才能提高自己的动手能力和独立思考能力。在查找和整理资料过程中,我获得了更广泛的MATLAB及计算机控制技术的相关知识,对此有了更深层次的认识。

温馨提示

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

评论

0/150

提交评论