[工学]计算机控制系统仿真第4章.ppt_第1页
[工学]计算机控制系统仿真第4章.ppt_第2页
[工学]计算机控制系统仿真第4章.ppt_第3页
[工学]计算机控制系统仿真第4章.ppt_第4页
[工学]计算机控制系统仿真第4章.ppt_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

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

文档简介

第4章 控制系统数学模型及其转换,在线性系统中,常用的数学模型有微分方程模型、传递函数模型、状态空间模型以及零极点模型等。不同的模型应用于不同的场合。掌握模型间的转换才能灵活应用各种数学模型。本章将主要介绍系统数学模型及转换、系统环节模型的连接及标准型实现等内容。,4.1 控制系统类型,1 连续系统和离散系统,2 线性系统和非线性系统,3 时变系统和定常(时不变)系统,4 确定性系统和随机系统,4.2 控制系统常用数学模型,4.2.1 连续系统数学模型,1系统微分方程形式模型,对于线性定常单入单出(简称SISO)系统 ,可用以下方程描述:,2系统传递函数形式模型,零初始条件下,系统输出的拉氏变换 与输入的拉氏变换 之比.,在MATLAB中,微分方程和传递函数都可以用分子、分母多项式系数向量表示,这里分子、分母多项式系数向量中的系数均按 s 的降幂排列。用printsys( ), tf( )来建立传递函数的系统模型,其基本格式为,(注:printsys只能在命令窗口中显示模型,不能将模型输入到workspace中),例: 已知系统的传递函数如下,利用MATLAB建立其相应的传递函数系统模型。,运行命令:,example4_01.m,结果为:,3系统的零极点(ZPK)形式模型,在MATLAB中零极点可以分别表示为,使用zpk( )函数建立零极点形式的系统模型,其基本格式为,如果已知传递函数,可用求根函数求零点向量z和极点向量p,例:已知系统传递函数如下,应用Matlab语言建立系统的零极点形式模型。,运行命令:,结果为:,例:将如下传递函数表示成零极点形式,example4_02.m,4系统的部分分式形式,可以将传递函数表示成部分分式或留数形式:,R,P,K=residue(num,den),使用求留数的命令,例:将如下传递函数表示成部分分式形式,example4_03.m,显示结果: R = 2.5000 -10.0000 7.5000 P = -3.0000 -2.0000 -1.0000 K = ,运行程序: num=5 20; den=1 6 11 6; R,P,K=residue(num,den),这表示:,5系统的状态空间(state space)模型,在MATLAB中建立系统状态空间模型的函数格式,例:某线性定常系统的状态空间表达式如下,请在MATLAB 的workspace中建立模型。,运行命令:,运行后显示:,4.2.2 离散系统数学模型,离散系统常用的数学模型通常可以用差分方程、脉冲传递函数(或Z传递函数)、状态空间表达式三种形式对系统加以描述。,1系统差分方程形式模型,2系统的传递函数模型,这里分子、分母多项式系数向量中的系数仍按的降幂排列,在MATLAB中用系数向量表示:,函数tf( ),printsys()也可建立脉冲传递函数的系统模型,其格式为,其中,Ts为系统采样周期。,对于离散系统,也可以用zpk( )函数建立零极点模型,基本格式为,(注:printsys只能在命令窗口中显示模型,不能将模型输入到workspace中),3系统的零极点模型,4系统的状态空间模型,在MATLAB中建立状态空间模型的函数格式,例:假设某离散系统的脉冲传递函数为,采样周期为 T=0.1秒,将其输入到MATLAB的workspace中,并且绘制零、极点分布图。并且将该离散系统脉冲传递函数模型转换成状态空间表达式。,输入下列语句,运行结果为,程序example4_04.m,计算机绘制出零极点分布图:,再输入:,显示:,再输入:,4.2.3 系统模型参数的获取,对于连续系统,调用函数:,对于离散系统,调用函数,v表示返回数据行向量,只适用于单变量系统,example4_05.m,模型表示函数小结,num,den: 微分方程和传递函数模型 tf(num,den): 传递函数模型 zpk(z,p,k ): 零极点增益模型 ss(A,B,C,D ): 状态空间模型,num,den: 差分方程和脉冲传递函数模型 tf(num,den,Ts): 脉冲传递函数模型 zpk(z,p,k,Ts ): 零极点增益模型 ss(A,B,C,D,Ts ): 离散状态空间模型,4.3 系统数学模型的转换,4.3.1 系统模型向状态方程形式转换,利用MATLAB函数可将系统模型转换为状态方程形式,函数格式为,(注意:在英语中,2和to谐音),将任意线性定常系统sys转换成状态方程还可以用:,MATLAB命令:,【例4-2】 已知系统传递函数如下,应用MATLAB的函数将其转换为状态方程形式的模型。,example4_2.m,4.3.2 系统模型向传递函数形式转换,1状态空间模型向传递函数形式转换,MATLAB提供了函数ss2tf( )实现将状态空间方程转换为传递函数形式,基本格式为,其中,iu用于指定变换所使用的输入量,对于多输入系统是必须的。,还可以采用下面的方式,即,【例4-3】某线性定常系统的状态空间表达式如下,求该系统的传递函数。,编写m文件如下:,运行结果为,example4_3.m,例:某线性定常系统的状态空间表达式如下,求该系统的传递函数矩阵。,输入并且运行程序:,example4_06.m,上述输出的结果表明,传递函数矩阵为,运行结果:,2零极点增益模型向传递函数形式转换,函数格式,4.3.3 系统模型向零极点形式转换,MATLAB提供了实现系统模型向零极点形式转换的函数,其基本格式为,【例4-4】对于例4-3题中的线性定常系统,将其转换为zpk形式,编写m文件如下,运行结果为,例:某线性定常系统的状态空间表达式如下,将其转换成ZPK形式,输入并且运行程序:,计算机输出:,上述输出的计算结果表明,两输入单输出的传递函数矩阵的ZPK形式为:,4.3.4 传递函数形式与部分分式形式的转换,MATLAB函数residue( )实现极点留数的求取,其基本格式为,【例4-5】 某系统的传递函数如下,求它的部分分式形式。,编写m文件:,上述结果表示:,运行结果为:,如果此时在命令窗口中输入,则返回,可见,residue( )函数,既可以将传递函数形式转换成部分分式形式,也可以将部分分式形式转换成传递函数形式。,4.3.5 连续和离散系统之间的转换,如果对离散化处理结果提出具体的转换方式要求,则可以采用c2d( ) 或 c2dm( )函数进行,基本格式为,其中, Gc表示连续系统模型 Ts表示系统采样周期 method指定转换方式: “zoh”表示采用零阶保持器 “foh”表示采用一阶保持器,编写m文件:,【例4-6】 某连续系统的状态空间表达式如下,采用零阶保持器将其离散化,设采样周期为0.1秒,求离散化的系统方程。,运行结果:,结果表示离散化后的系统方程为:,模型转换的函数小结,residue:传递函数模型与部分分式模型互换 ss2tf: 状态空间模型转换为传递函数模型 ss2zp: 状态空间模型转换为零极点增益模型 tf2ss: 传递函数模型转换为状态空间模型 tf2zp: 传递函数模型转换为零极点增益模型 zp2ss: 零极点增益模型转换为状态空间模型 zp2tf: 零极点增益模型转换为传递函数模型,状态空间SS,传递函数tf,零极点ZP,极点留数,ss2tf,tf2ss,zp2ss,ss2zp,zp2tf,tf2zp,residue,ss2ss,4.4 控制系统模型的连接,系统模型连接的方式主要有串联、并联、反馈等形式。MATLAB提供了相应的模型连接函数。,4.4.1 模型串联,SISO系统串联,MIMO系统串联,等价为:,sys1 = ss(eye(3),InputName,C,B,A,OutputName,Z,Y,X); sys2 = ss(eye(3),InputName,A,C,B,OutputName,X,Y,Z); parallel(sys1,sys2,name),4.4.2 模型并联,SISO系统并联,MIMO系统并联,等价为:,【例】 已知两个系统的模型,利用MATLAB分别求出它们串联和并联后的传递函数阵。,其中,sys1:,sys2:,sys1=tf(2,1,2);%系统1 sys2=tf(3,1,5);%系统2 %串联连接 ss11=series(sys1,sys2) ss12=sys1*sys2 %并联连接 ss21=parallel(sys1,sys2,1,1,1,1) ss22=sys1+sys2,example4_07.m,【例】 已知两个系统的模型,利用MATLAB分别求出它们串联和并联后的传递函数阵。,其中,sys1:,sys2:,串联连接:,并联连接:,%系统的串联和并联连接 clc clear sys1=tf(2,1,2); %系统1的传递函数 G2=ss(-9 17;-1 3,0 -1;-1 0,-3 2;-13 18,-1 0;-1 0); sys2=tf(G2) %系统2的传递函数阵 disp(以下是串联系统的传递函数矩阵) ss1=series(sys1,sys2,1,1) %串联连接 disp(以下是并联系统的传递函数矩阵) ss2=parallel(sys1,sys2,1,1,1,1) %并联连接,example4_08.m,以下是系统2的传递函数矩阵 Transfer function from input 1 to output. -s2 - 8 s + 43 #1: - s2 + 6 s - 10 -s2 - 24 s + 69 #2: - s2 + 6 s - 10 Transfer function from input 2 to output. 3 s - 7 #1: - s2 + 6 s - 10 13 s - 21 #2: - s2 + 6 s - 10,系统2的传递函数矩阵,运行结果,系统1的传递函数,以下是串联系统的传递函数矩阵 Transfer function from input to output. -2 s2 - 16 s + 86 #1: - s3 + 8 s2 + 2 s - 20 -2 s2 - 48 s + 138 #2: - s3 + 8 s2 + 2 s - 20,以下是并联系统的传递函数矩阵 Transfer function from input 1 to output. -s3 - 8 s2 + 39 s + 66 #1: - s3 + 8 s2 + 2 s - 20 -s2 - 24 s + 69 #2: - s2 + 6 s - 10 Transfer function from input 2 to output. 3 s - 7 #1: - s2 + 6 s - 10 13 s - 21 #2: - s2 + 6 s - 10,思考:如何进行结构图化简?,4.4.3 反馈连接,对于SISO系统,其中,sign缺省时即为负反馈,sign=1时为正反馈。,对于MIMO系统,其中,feedin为sys1的输入向量,用来指定sys1的哪些输入与反馈环节相连接;feedout为sys1的输出向量,用来指定sys1的哪些输出端用于反馈。,【例4-7】 已知系统如图所示,利用MATLAB求出系统的状态空间表达式。,其中,sys1:,sys2:,编写m文件如下:,运行结果为:,表示该反馈系统的状态空间表达式为,4.5 系统模型的实现,根据状态空间表达形式不同,系统状态空间实现可分为:能控标准型实现,能观测标准型实现,对角线标准型实现,约旦标准型实现。,设系统的微分方程为,取状态变量为:,写成状态空间表达式形式为能控标准型:,4.5.1 能控标准型,如果系统微分方程为,写成状态空间表达式形式为能控标准型:,【例4-8】 已知系统的状态空间表达式如下,求线性变换,将其变换成能控标准形。,运行程序:,运行结果为:,判断系统的能控性,求特征方程,计算变换矩阵,输入程序:,计算结果为:,求能控标准形,计算结果为:,输入程序:,表明经过变换以后的状态方程为,4.5.2 能观测标准型,能控标准型的对偶系统就是能观标准型,4.5.3 对角线标准型,令状态变量,则,对角线标准型,4.5.4 标准型的实现,MATLAB中提供函数canon( )生成标准型状态模型,基本格式为,其中,sys表示原系统状态方程模型,字串type为标准类型选项: model 为对角标准型实现 companion为伴随标准型实现,【例4-9】 已知系统传递函数如下,用不同状态空间实现函数进行转换。,m文件如下:,运行该m文件后,对于同一传递函数的系统得出以下4种状态空间表达式,G1:,G2:,G3:,G

温馨提示

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

最新文档

评论

0/150

提交评论