matlab在自动控制原理中的应用讲述

上传人:cn****1 文档编号:569527461 上传时间:2024-07-30 格式:PPT 页数:57 大小:879KB
返回 下载 相关 举报
matlab在自动控制原理中的应用讲述_第1页
第1页 / 共57页
matlab在自动控制原理中的应用讲述_第2页
第2页 / 共57页
matlab在自动控制原理中的应用讲述_第3页
第3页 / 共57页
matlab在自动控制原理中的应用讲述_第4页
第4页 / 共57页
matlab在自动控制原理中的应用讲述_第5页
第5页 / 共57页
点击查看更多>>
资源描述

《matlab在自动控制原理中的应用讲述》由会员分享,可在线阅读,更多相关《matlab在自动控制原理中的应用讲述(57页珍藏版)》请在金锄头文库上搜索。

1、matlabmatlab在自动控制原理中在自动控制原理中的应用讲述的应用讲述第五章 控制系统的数学描述与建模 q控制系统的数学模型在控制系统的研究中有着相当重要的地位,要对系统进行仿真处理,首先应当知道系统的数学模型,然后才可以对系统进行模拟。同样,如果知道了系统的模型,才可以在此基础上设计一个合适的控制器,使得系统响应达到预期的效果,从而符合工程实际的需要。q在线性系统理论中,一般常用的数学模型形式有:传递函数模型(系统的外部模型)、状态方程模型(系统的内部模型)、零极点增益模型和部分分式模型等。这些模型之间都有着内在的联系,可以相互进行转换。按系统性能分:线性系统和非线性系统;连续系统和离

2、散系统;定常系统和时变系统;确定系统和不确定系统。1、线性连续系统:用线性微分方程式来描述,如果微分方程的系数为常数,则为定常系统;如果系数随时间而变化,则为时变系统。我们所讨论的系统主要以线性定常连续系统为主。2、线性定常离散系统:离散系统指系统的某处或多处的信号为脉冲序列或数码形式。这类系统用差分方程来描述。3、非线性系统:系统中有一个元部件的输入输出特性为非线性的系统。微分方程是控制系统模型的基础,一般来讲,利用机械学、电学、力学等物理规律,便可以得到控制系统的动态方程,这些方程对于线性定常连续系统而言是一种常系数的线性微分方程。如果已知输入量及变量的初始条件,对微分方程进行求解,就可以

3、得到系统输出量的表达式,并由此对系统进行性能分析。通过拉氏变换和反变换,可以得到线性定常系统的解析解,这种方法通常只适用于常系数的线性微分方程,解析解是精确的,然而通常寻找解析解是困难的。MATLAB提供了ode23、ode45等微分方程的数值解法函数,不仅适用于线性定常系统,也适用于非线性及时变系统。5.1 控制系统的传递函数模型 对线性定常系统,式中s的系数均为常数,且a1不等于零,这时系统在MATLAB中可以方便地由分子和分母系数构成的两个向量唯一地确定出来,这两个向量分别用num和den表示。num=b1,b2,bm,bm+1den=a1,a2,an,an+1注意:它们都是按s的降幂进

4、行排列的。一、连续系统的传递函数模型连续系统的传递函数如下:零极点模型实际上是传递函数模型的另一种表现形式,其原理是分别对原系统传递函数的分子、分母进行分解因式处理,以获得系统的零点和极点的表示形式。v在MATLAB中零极点增益模型用z,p,K矢量组表示。即:vz=z1,z2,zmvp=p1,p2,.,pnvK=kv函数tf2zp()可以用来求传递函数的零极点和增益。二、零极点增益模型K为系统增益,zi为零点,pj为极点控制系统常用到并联系统,这时就要对系统函数进行分解,使其表现为一些基本控制单元的和的形式。函数r,p,k=residue(b,a)对两个多项式的比进行部分展开,以及把传函分解为

5、微分单元的形式。向量b和a是按s的降幂排列的多项式系数。部分分式展开后,余数返回到向量r,极点返回到列向量p,常数项返回到k。b,a=residue(r,p,k)可以将部分分式转化为多项式比p(s)/q(s)。三、部分分式展开举例:传递函数描述 1)num=12,24,0,20;den=2 4 6 2 2;2)借助多项式乘法函数conv来处理:num=4*conv(1,2,conv(1,6,6,1,6,6);den=conv(1,0,conv(1,1,conv(1,1,conv(1,1,1,3,2,5);零极点增益模型:num=1,11,30,0;den=1,9,45,87,50; z,p,k

6、=tf2zp(num,den)z= 0 -6 -5p= -3.0000+4.0000i -3.0000-4.0000i -2.0000 -1.0000k= 1结果表达式:部分分式展开:num=2,0,9,1;den=1,1,4,4; r,p,k=residue(num,den)p= 0.0000+2.0000i 0.0000-2.0000i -1.0000k= 2r= 0.0000-0.2500i 0.0000+0.2500i -2.0000结果表达式:P146例10-1,10-2,10-3自动控制原理教材P131例3-16 1控制系统的模型及转换控制系统的模型及转换 线性控制系统是一般线性系

7、统的子系统。在MATLAB中,对自动控制系统的描述采用三种模型:状态空间模型(ss)、传递函数模型(tf)以及零极点增益模型(zpk)。模型转换函数:ss2tf,ss2zp,tf2ss,tf2zp,zp2ss和zp2tf。 在MATLAB的Control System Toolbox(控制系统工具箱)中提供了许多仿真函数与模块,用于对控制系统的仿真和分析。 控制系统的描述与控制系统的描述与LTI对象对象2LTI对象对象 为了对系统的调用和计算带来方便。根据软件工程中面向对象的思想,MATLAB通过建立专用的数据结构类型,把线性时不变系统(LTI)的各种模型封装成为统一的LTI对象。 MATLA

8、B控制系统工具箱中规定的LTI对象包含了三种子对象:ss对对象象、tf对对象象和和zpk对对象象。每个对象都具有其属性和方法,通过对象方法可以存取或者设置对象的属性值。属属性性说说明明:(1)当系统为离散系统时,给出了系统的采样周期Ts。Ts0或缺省时表示系统为连续时间系统;Ts=-1表示系统是离散系统,但它的采样周期未定。 (2) 输入时延Td仅对连续时间系统有效,其值为由每个输入通道的输入时延组成的时延数组,缺省表示无输入时延。 (3)输入变量名InputName和输出变量名OutputName允许用户定义系统输入输出的名称,其值为一字符串单元数组,分别与输入输出有相同的维数,可缺省。 (

9、4)Notes和用户数据Userdata用以存储模型的其它信息,常用于给出描述模型的文本信息,也可以包含用户需要的任意其它数据,可缺省。LTI模型的建立及转换函数 在MATLAB的控制系统工具箱中,各种LTI对象模型的生成和模型间的转换都可以通过一个相应函数来实现。表表 生成LTI模型的函数例例5-4 生生成成离离散散系系统统的的零零极极点点模模型型。MATLAB源程序为:z= ,-0.5;p=0.3,0.1+2i,0.2-2i;k=2,3;s6=zpk(z,p,k,-1)运行结果为:运行结果为:Zero/pole/gain from input 1 to output: 从从第第1输输入入端

10、端口口至至输出的零极点增益输出的零极点增益 2-(z-0.3) Zero/pole/gain from input 2 to output: 从从第第2输输入入端端口口至至输出的零极点增益输出的零极点增益 3 (z+0.5)-(z-(0.1+2i) (z-(0.2-2i) Sampling time: unspecified表明该系统为双输入单输出的离散系统。P150例10-5,10-6,10-7 LTILTI对象属性的设置与转换对象属性的设置与转换1LTI对象属性的获取与设置对象属性的获取与设置表表 对象属性的获取和修改函数对象属性的获取和修改函数 2LTI模型的转换函数模型的转换函数表表

11、模型检测函数 典型系统的生成典型系统的生成1随机生成随机生成N阶稳定的连续状态空间模型函数阶稳定的连续状态空间模型函数rss( )格式:格式:sys = rss(N,P,M)功能:随机生成N阶稳定的连续状态空间模型,该系统具有M个输入,P个输出。缺省是P=M=1,即sys=rss(N)。2. 随机生成随机生成N阶稳定的连续线性模型系数函数阶稳定的连续线性模型系数函数rmodel( )格式:格式:num,den=rmodel(N,P) 功能:生成一个N阶连续的传递函数模型系统,该系统具有P个输出。3离离散散时时间间N阶阶稳稳定定随随机机系系统统生生成成函函数数drss( )和和drmodel(

12、)drss和drmodel函数的用法与rss和rmodel函数的用法相仿,不同点仅仅在于它生成的是离散系统。4二阶系统生成函数二阶系统生成函数ord2格式:格式:A,B,C,D = ord2(Wn, Z) 功能:生成固有频率为Wn,阻尼系数为Z的连续二阶的状态空间模型系统。 5系统时间延迟的系统时间延迟的Pade近似函数近似函数pade( )格式:格式:sysx = pade(sys,N)功能:对连续系统sys产生N阶Pade近似的延时后,生成新的系统sysx。 LTILTI模型的简单组合与复杂模型组合模型的简单组合与复杂模型组合1LTI模型的简单组合模型的简单组合(1)若假定两环节均为单输入

13、单输出的系统若假定两环节均为单输入单输出的系统SA和和SB。两个环节级联:两个环节级联:sysseries(SA,SB)两个环节并联:两个环节并联:sys=parallel(SA,SB)A环节前向,环节前向,B环节反馈:环节反馈:S=feedback(SA,SB)(2)当当在在多多输输入入多多输输出出系系统统中中,必必须须增增加加输输入入变变量量和和输输出出变变量量的的编号:编号:级联:级联:sys=series(SA,SB,outputA, inputB)并联:并联:sys=parallel(SA,SB,InputA,InputB,OutputA,OutputB)反馈:反馈: sys=fee

14、dback(SA,SB,feedout,feedin,sign)例例5-14 计算图5.1所示的系统的传递函数。MATLAB源程序为:s1=tf(2,5,1,1,2,3) %系统s1的传递函数模型s2=zpk(-2,-10,5) %系统s2的零极点增益模型sys=feedback(s1,s2)% s1环节前向,s2环节反馈5(s+2)/(s+10)程序运行结果为:程序运行结果为:Transfer function: 系统s1的传递函数模型2 s2 + 5 s + 1- s2 + 2 s + 3Zero/pole/gain: 系统s2的零极点增益模型5 (s+2)-(s+10)Zero/pole

15、/gain: 系统s1、s2的反馈零极点增益模型0.18182 (s+10) (s+2.281) (s+0.2192)- (s+3.419) (s2 + 1.763s + 1.064)2LTI模型的复杂模型组合模型的复杂模型组合 对复杂系统的任意组合,在MATLAB中,则采用集成的软件包,让机器自动去完成复杂的组合,人们只要输入各环节的LTI模型和相应的联接矩阵与输入矩阵,指定输出变量,软件包会自动判别输入的模型表述方式,作出相应的运算并最后给出组合后系统的状态方程。在求解过程中,主要涉及append( )函数和函数和connect( )函数函数。通常,由以下五个步骤来完成:通常,由以下五个步

16、骤来完成: 对方框图中的各个环节进行编号,建立它们的对象模型。利用append函数命令建立无连接的状态空间模型。 sap=append(s1,s2,sm)按规定写出系统的互联接矩阵q互联矩阵q中的每一行由组合系统的一个输入编号和构成该输入的其它输出编号组成,其中该行的第一个元素为该输入的编号,接下来的元素则由构成该输入的其它子框的输出编号组成,如果为负反馈,则编号应取负号。选择组合系统中需保留的对外的输入和输出端的编号并列出。 Inputs=i1,i2, outputs=j1, j2,用connect命令生成组合后的系统。连续系统与采样系统之间的转换连续系统与采样系统之间的转换若连续系统的状态

17、方程为:则对应的采样系统状态方程为:其中Ts为采样周期。 反之,采样系统到连续系统的转换关系为上式的逆过程:1. 转换原理转换原理 2. 连续系统与采样系统之间的转换函数连续系统与采样系统之间的转换函数例例5-17 系统的传递函数为:输入延时Td=0.35秒,试用一阶保持法对连续系统进行离散,采样周期Ts=0.1s。MATLAB程序为:程序为:sys=tf(2,5,1,1,2,3,td,0.5); %生成连续系统的传递函数模型sysd=c2d(sys,0.1,foh)%形成采样系统程序运行结果为:程序运行结果为:Transfer function: 2.036 z2 - 3.628 z + 1

18、.584z(-5) * - z2 - 1.792 z + 0.8187 Sampling time: 0.15.2 控制系统的时域分析 时域分析是一种直接在时间域中对系统进行分析的方法,具有直观和准确的优点。它是根据控制系统输入与输出之间的时域表达式,分析系统的稳定性、瞬态过程和稳态误差。控制系统最常用的分析方法有两种:一是当输入信号为单位阶跃时,求出系统的响应;二是当输入信号为单位冲激函数时,求出系统的响应。 1. 生成特定的激励信号的函数生成特定的激励信号的函数gensig( )格式:格式:u,t = gensig(type,tau)功能:按指定的类型type和周期tau生成特定类型的激励

19、信号u。其中变元type可取字符为:sin(正弦)、square(方波)、pulse(脉冲)。2LTI模型的单位冲激响应函数模型的单位冲激响应函数impulse( )格式:impulse(sys)功能:绘制系统sys(sys由函数tf、zpk或ss产生)的单位冲激响应,结果不返回数据,只返回图形。例例5-19 系统传递函数为:系统传递函数为:求脉冲响应。MATLAB程序如下:sys=tf(4,1 1 4); %生成传递函数模型impulse(sys); %计算并绘制系统的单位冲激响应title(脉冲响应脉冲响应);该程序运行所得结果如图5.5所示。图5.5系统的脉冲响应 3. 状态空间模型系统

20、的零输入响应函数状态空间模型系统的零输入响应函数initial( ) 格式:initial(sys,x0) 功能:绘制状态空间模型sys在初始条件x0下的零输入响应,不返回数据,只绘出 响应曲线。该响应由如下方程表征:连续时间:离散时间: 、4LTI模型任意输入的响应函数模型任意输入的响应函数lsim( )格式:格式:lsim(sys,u,T) 功能:计算和绘制LTI模型sys在任意输入u、持续时间T的作用下的输出y,不返回数据,只返回图形。T为时间数组,它的步长必须与采样周期Ts相同。当u为矩阵时,它的列作为输入,且与T(i)行的时间向量相对应。例如t = 0:0.01:5; u = sin

21、(t); lsim(sys,u,t)完成系统sys对输入u(t)=sin(t)在5秒内的响应仿真。5LTI模型的阶跃响应函数模型的阶跃响应函数step( )格式:格式:step(sys)功能:绘制系统sys(sys由函数tf、zpk或ss产生)的阶跃响应,结果不返回数据,只返回图形。对多输入多输出模型,将自动求每一输入的阶跃响应。例例5-21 求系统:的方波响应,其中方波周期为6秒,持续时间12秒,采样周期为0.1秒。MATLAB程序为:程序为:u,t=gensig(square,6,12,0.1); %生成方波信号plot(t,u,-);hold on; %绘制激励信号sys=tf(1,1,

22、1,2,5); %生成传递函数模型lsim(sys,u,t,k); %系统对方波激励信号的响应该程序运行所得结果如图5.7所示。图5.7方波响应曲线 5.3 控制系统的根轨迹 在控制系统分析中,为了避开直接求解高阶多项式的根时遇到的困难,在实践中提出了一种图解求根法,即根轨迹法。所谓根轨迹是指当系统的某一个(或几个)参数从到时,闭环特征方程的根在复平面上描绘的一些曲线。 应用这些曲线,可以根据某个参数确定相应的特征根。在根轨迹法中,一般取系统的开环放大倍数K作为可变参数,利用它来反映出开环系统零极点与闭环系统极点(特征根)之间的关系。 根轨迹可以分析系统参数和结构已定的系统的时域响应特性,以及

23、参数变化对时域响应特性的影响,而且还可以根据对时域响应特性的要求确定可变参数及调整开环系统零极点的位置,并改变它们的个数,也就是说根轨迹法可用于解决线性系统的分析与综合问题。q根轨迹根轨迹:是指开环系统某个参数是指开环系统某个参数由由0变化到变化到,闭环特征根在闭环特征根在s平面平面上移动的轨迹。根轨迹与系统性能密切相关上移动的轨迹。根轨迹与系统性能密切相关。表示系统的闭环极点表示系统的闭环极点 0 j j0.5K=1/2-0.5-1 s1 s2 闭环特征方程为闭环特征方程为 s2+s+K=0, 解得闭环解得闭环特征根表达式特征根表达式 令令K(由由0到到 )变动变动,s1、s2在在s平面的平

24、面的移动轨迹即为根轨迹。移动轨迹即为根轨迹。q研究根轨迹的目的研究根轨迹的目的:分析系统的各种性能分析系统的各种性能(稳定性、稳态性能、动态性能)(稳定性、稳态性能、动态性能)根轨迹根轨迹( (root locusroot locus) )概念概念R(s)(-)(-)C(s)开环零点:开环零点:指系统开环传递函数中分子多项式方程的根。指系统开环传递函数中分子多项式方程的根。开环极点:开环极点:指系统开环传递函数中分母多项式方程的根。指系统开环传递函数中分母多项式方程的根。闭闭环环零零点点:指指系系统统闭闭环环传传递递函函数数中中分分子子多多项项式式方方程程的的根根。闭闭环环零零点点由由前前向向

25、通通道道的的零零点点和和反反馈馈通通道道的的极极点点构构成成。对对于于单位反馈系统,闭环零点就是开环零点。单位反馈系统,闭环零点就是开环零点。闭闭环环极极点点:指指系系统统闭闭环环传传递递函函数数中中分分母母多多项项式式方方程程的的根根。闭闭环环极极点点与与开开环环零零、极极点点以以及及根根轨轨迹迹增增益益K K* *均均有有关关。( (K K* *0, 0, 开闭环极点相同。开闭环极点相同。) )开开/ /闭环传递函数零极点表达式闭环传递函数零极点表达式根轨迹增益根轨迹增益: K*为为开开环环系系统统根根轨轨迹迹增增益益;闭闭环环系系统统根根轨迹增益轨迹增益 等等于于开开环环系系统统前前向向

26、通通路路根根轨轨迹迹增增益益。(由由下下式及式及mn可知)可知) 根轨迹法的基本任务根轨迹法的基本任务: 由已知的开环零、极点分布由已知的开环零、极点分布 及根轨迹增益,通过图解的方法找出闭环极点。及根轨迹增益,通过图解的方法找出闭环极点。表 系统根轨迹绘制及零极点分析函数 P199,例131,绘制系统的根轨迹例132,绘制系统的根轨迹,并根据轨迹判定系统的稳定性。例134例1385.4 控制系统的稳定性分析 系统稳定的概念系统稳定的概念 设一线性定常系统原处于某一平衡状态,若它瞬间受到某一扰动作用而偏离了原来的平衡状态,当此扰动撤消后,系统仍能回到原有的平衡状态,则称该系统是稳定的。 由此可

27、知:线形系统的稳定性取决于系统的固有特征(结构、参数),与系统的输入信号无关。要想系统稳定,只有当系统的特征根要想系统稳定,只有当系统的特征根s s,全部具有全部具有负实部。负实部。 综上所述,不论系统特征方程的特征根为何种综上所述,不论系统特征方程的特征根为何种形式,线性系统稳定的充要条件为:所有特征根形式,线性系统稳定的充要条件为:所有特征根均为负数或具有负的实数部分;即:所有特征根均为负数或具有负的实数部分;即:所有特征根均在复数平面的左半部分。均在复数平面的左半部分。由于特征根就是系统的极点,因此,线性系统稳由于特征根就是系统的极点,因此,线性系统稳定的充要条件也可表述为:系统的极点均

28、在定的充要条件也可表述为:系统的极点均在s s平平面的左半平面。面的左半平面。2 2、判别系统稳定性的基本原则、判别系统稳定性的基本原则 一般情况下,确定系统稳定性的方法有:一般情况下,确定系统稳定性的方法有:1 1 直接计算或间接得知系统特征方程式的根。直接计算或间接得知系统特征方程式的根。2 2 确定特征方程的根具有负实部的系统参数的区域。确定特征方程的根具有负实部的系统参数的区域。应用第一种类型的两种方法是:应用第一种类型的两种方法是:(1)(1)直接对系统特征方程求解;直接对系统特征方程求解;(2)(2)根轨迹法根轨迹法应用第二种类型的两种方法是:应用第二种类型的两种方法是:(1)(1

29、)劳斯劳斯- -胡尔维茨判据胡尔维茨判据; (2); (2)奈氏判据奈氏判据系统稳定性的MATLAB直接判定P=eig(G)P=pole(G)Z=zero(G)p,z=pzmap(sys)r=roots(P)Matlab直接判定实例P169,例111,112,113系统稳定性的matlab图形化判定P172,例114,1155.5 控制系统的频域分析 频域分析法是应用频率特性研究控制系统的一种经典方法。采用这种方法可直观地表达出系统的频率特性,分析方法比较简单,物理概念比较明确,对于诸如防止结构谐振,抑制噪声、改善系统稳定性和暂态性能等问题,都可以从系统的频率特性上明确的看出其物理实质和解决途

30、径。 频率分析法主要包括三种方法: Bode图(幅频/相频特性曲线); Nyquist曲线; Nichols图。例P226,141,例142,143画Nyquist曲线,144145基于频域法的控制系统稳定性能分析P237,例147,148,149控制系统的PID控制器设计例例5-29 试绘制开环系统H(s)的Nyquist曲线,判断闭环系统的稳定性,并求出闭环系统的单位冲激响应。其中MATLAB程序为:程序为:k=50;z=;p=-5,2;sys=zpk(z,p,k);figure(1);nyquist(sys);title(Nyquist曲线图曲线图);figure(2);sb=feedback(sys,1);impulse(sb);title(单位冲激响应单位冲激响应);图5.18 开环系统的Nyquist曲线图及冲激响应 结束结束

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号