控制系统的数学模型及其转换_第1页
控制系统的数学模型及其转换_第2页
控制系统的数学模型及其转换_第3页
控制系统的数学模型及其转换_第4页
控制系统的数学模型及其转换_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

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

文档简介

控制系统的数学模型及其转换第一页,共三十五页,2022年,8月28日

按系统性能分:线性系统和非线性系统;连续系统和离散系统;定常系统和时变系统;确定系统和不确定系统。1、线性连续系统:用线性微分方程式来描述,如果微分方程的系数为常数,则为定常系统;如果系数随时间而变化,则为时变系统。今后我们所讨论的系统主要以线性定常连续系统为主。2、线性定常离散系统:离散系统指系统的某处或多处的信号为脉冲序列或数码形式。这类系统用差分方程来描述。3、非线性系统:系统中有一个元部件的输入输出特性为非线性的系统。下面来分析各种数学模型的MATLAB表示形式3.1系统的类型第二页,共三十五页,2022年,8月28日对线性定常系统,式中s的系数均为常数,且a1不等于零,这时系统在MATLAB中可以方便地由分子和分母系数构成的两个向量唯一地确定出来,这两个向量分别用num和den表示。

num=[b1,b2,…,bm,bm+1] den=[a1,a2,…,an,an+1]

注意:它们都是按s的降幂进行排列的。3.2传递函数描述一、连续系统的传递函数模型连续系统的传递函数如下:第三页,共三十五页,2022年,8月28日(1)递函数的Maltab模型num=[b1,b2,…,bm,bm+1]den=[a1,a2,…,an,an+1]可用命令tf()建立一个传递函数模型,或将零极点增益模型或状态空间模型转变为传递函数模型。第四页,共三十五页,2022年,8月28日(2)传递函数模型命令tf()调用格式sys=tf(num,den)

sys=tf(mum,den,Ts)

%用于生成离散传体函数,Ts为采样时间。

sys=tf(M)%用于生成静态增益s传递函数,

sys=tf(‘s’)%用于生成拉普拉斯变量s的有理传递函数

tfsys=tf(sys)

sys=tf(num,den,’Property1’,Value1,……,’PropertyN’,ValueN):用于生成传递函数模型,同时定义传递函数的属性值。传递函数的属性值可用get(sys)命令来查看

例3.1

第五页,共三十五页,2022年,8月28日(3)多输入多输出系统(MIMO)传递函数模型对多输入多输出系统,分子、分母为元胞类型向量。元胞数组:元胞数组的基本元素是元胞,元胞可以存放任何类型数据,而且同一个元胞数组的各元胞(cell)中的内容可以不同。元胞数组的定义符是{},例:A={[01],3;‘thisisbook’,[25]}。元胞数组元素内容的访问用{},如:A{1,1},结果得到[01],或者使用单下标,如A{2},结果是“thisisbook”。第六页,共三十五页,2022年,8月28日例:给定一个多入多出系统:试生成其仿真模型解:命令如下:num={11;2[12]};den={[11],[12];1,[12]};sys=tf(num,den)注意:元素sys(i,j)表示输入j对输出i的传递函数。第七页,共三十五页,2022年,8月28日(4)传递函数模型生成方法(二)利用拉普拉斯变量因子“s”直接生成传递函数模型。例:已知传递函数模型如下,利用拉普拉斯变量因子“s”直接生成传递函数模型。解:命令如下:s=tf('s');%定义拉普拉斯变量ssys=(s+1)/(s*(s^2+s+2))第八页,共三十五页,2022年,8月28日零极点模型实际上是传递函数模型的另一种表现形式,其原理是分别对原系统传递函数的分子、分母进行分解因式处理,以获得系统的零点和极点的表示形式。在MATLAB中零极点增益模型用[z,p,K]向量组表示。生成零极点增益模型的matlab函数为zpk():z=[z1,z2,…,zm]p=[p1,p2,...,pn]K=[k]二、零极点增益模型K为系统增益,zi为零点,pj为极点第九页,共三十五页,2022年,8月28日(1)零极点增益模型zpk函数调用格式sys=zpk(z,p,k)%生成零极点增益模型sys=zpk(z,p,k,Ts)sys=zpk(M)%生成静态增益s传统函数sys=zpk(s)%生成拉普拉斯因子szsys=zpk(sys)%将传递函数、状态空间模型转换为零极点增益模型第十页,共三十五页,2022年,8月28日1)例:建立下述传递函数模型的matlab表示》num=[12,24,0,20];den=[24622];sys=tf(num,den)借助多项式乘法函数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]))));sys=tf(num,den)2)第十一页,共三十五页,2022年,8月28日3)零极点增益模型:4)零极点增益模型:z=[];p=[-1,-2,-3-4j,-3+4j];k=5;sys=zpk(z,p,k)z=[-3,0];p=[-1,50,-10];k=1;sys=zpk(z,p,k)第十二页,共三十五页,2022年,8月28日例题3.5matlab表示给出零极点增益模型解:命令如下z={[];-0.5}p={0.3;[0.1-j,0.1+j]}k=[1;2]sys=zpk(z,p,k,[])第十三页,共三十五页,2022年,8月28日状态方程与输出方程的组合称为状态空间表达式,又称为动态方程,经典控制理论用传递函数将输入—输出关系表达出来,而现代控制理论则用状态方程和输出方程来表达输入—输出关系,揭示了系统内部状态对系统性能的影响。(三)状态空间模型在MATLAB中,系统状态空间用(A,B,C,D)矩阵组表示,函数为ss()。第十四页,共三十五页,2022年,8月28日(1)状态空间模型函数调用格式(1)Sys=ss(A,B,C,D)%生成状态空间模型Sys=ss(A,B,C,D,Ts)%生成离散的状态空间模型Sys_ss=ss(sys)%将其它模型转换为状态空间模型例3.7状态空间模型用matlab表示第十五页,共三十五页,2022年,8月28日例:系统为一个两输入两输出系统A=[16910;31268;47911;5121314];B=[46;24;22;10];C=[0021;8022];D=zeros(2,2);第十六页,共三十五页,2022年,8月28日模型转换的函数包括:[num,den]=ss2tf(A,B,C,D):状态空间模型转换为传递函数模型[z,p,k]=ss2zp(A,B,C,D):状态空间模型转换为零极点增益模型[A,B,C,D]=tf2ss(num,den):传递函数模型转换为状态空间模型[z,p,k]=tf2zp(num,den):传递函数模型转换为零极点增益模型[A,B,C,D]=zp2ss(z,p,k):零极点增益模型转换为状态空间模型[num,den]=zp2tf(z,p,k):零极点增益模型转换为传递函数模型3.3 模型的转换第十七页,共三十五页,2022年,8月28日传递函数、状态空间、零极点模型之间转换示意图第十八页,共三十五页,2022年,8月28日用法举例:1)已知系统状态空间模型为:A=[01;-1-2];B=[0;1];C=[1,3];D=[1];[num,den]=ss2tf(A,B,C,D,iu)[z,p,k]=ss2zp(A,B,C,D,iu)%iu用来指定第n个输入,当只有一个输入时可忽略。[num,den]=ss2tf(A,B,C,D)》num=1.00005.00002.0000den=121[z,p,k]=ss2zp(A,B,C,D)》z=-4.5616p=-1k=1-0.4384-1第十九页,共三十五页,2022年,8月28日2)已知一个单输入三输出系统的传递函数模型如下,求其状态空间模型解:num=[00-2;0-1-5;120];den=[16116];[A,B,C,D]=tf2ss(num,den)》A=-6-11-6B=1C=00-2D=010000-1-5001001200第二十页,共三十五页,2022年,8月28日3)系统的零极点增益模型如下,试求其传递函数模型及状态空间模型:解:命令如下:z=[-3];p=[-1,-2,-5];k=6;[num,den]=zp2tf(z,p,k)num=00618den=181710[a,b,c,d]=zp2ss(z,p,k)》a=-1.000000b=12.0000-7.0000-3.1623103.162300c=001.8974d=0注意:零极点的输入可以写成行向量,也可以写成列向量。第二十一页,共三十五页,2022年,8月28日3.4、系统模型的连接

系统模型之间的并联分SISO系统模型的并联和MIMO系统模型的并联1、并联:parallel第二十二页,共三十五页,2022年,8月28日sys=parallel(sys1,sys2):两个SISO系统模型的并联sys=parallel(sys1,sys2,in1,in2,out1,out2):生成两个MIMO系统的并联模型,并联输入端口由向量in1和in2定义,并联的输出端口由向量out1和out2定义。in1和out1对应sys1用于并联的输入、输出端口向量,in2和out2对应sys2用于并联的输入、输出端口向量。MALTAB提供了求取子系统模型并联的函数parallel(),其调用格式如下:第二十三页,共三十五页,2022年,8月28日【例】在上图所示的SISO系统并联模型结构中,已知sys1、sys2的传递函数分别为:

s=tf('s');%定义拉普拉斯变量ssys1=(s+1)/(s*(s^2+s+2));%定义SISO系统sys1的传递函数模型sys2=5/(5*s+1);%定义SISO系统的sys2的传递函数模型disp('并联系统模型为')sys=parallel(sys1,sys2)%生成sys1与sys2的并联模型执行上述命令后在CommandWindows得如下结果:并联系统模型为Transferfunction:5s^3+10s^2+16s+1----------------------------5s^4+6s^3+11s^2+2s第二十四页,共三十五页,2022年,8月28日2、串联:series子系统之间的串连分SISO系统模型的串连和MIMO系统模型的串连第二十五页,共三十五页,2022年,8月28日函数调用格式:sys=series(sys1,sys2):求SISO系统sys1和sys2的串连模型sys=series(sys1,sys2,outputs1,inputs2):求MIMO系统的串连,其中outputs1为sys1的输出端口数,inputs2为sys2的输入端口数。若MIMO系统有多个连接,在outputs1和inputs2为同维数向量。2、串联:series第二十六页,共三十五页,2022年,8月28日在上图所示的SISO系统并联模型结构中,已知sys1、sys2的传递函数分别为:G1=tf([11],[112]);G2=tf(5,[21])Sys=series(G1,G2)Transferfunction:5s+5-----------------------2s^3+3s^2+5s+2结果如下:第二十七页,共三十五页,2022年,8月28日3、反馈:feedback

系统模型的反馈连接分SISO系统模型反馈连接和MIMO系统模型反馈连接第二十八页,共三十五页,2022年,8月28日sys=feedback(sys1,sys2,sign):生SISO系统sys1与sys2构成的反馈系统传递函数模型,sys2为反馈通道传递函数模型,反馈类型由sign指定,当sign=1为正反馈,当sign=-1为负反馈,此时sign可省略。sys=feedback(sys1,sys2,feedin,feedout,sign):生成MIMO系统的部分反馈模型,feedin指定sys1中连入反馈回路的输入端口向量。Feedout指定sys1中连入反恐回路中的输出端口向量。feedback()调用格式第二十九页,共三十五页,2022年,8月28日注意:(1)在很多书籍中依然提到用cloop命令来生成闭环系统模型,在MATLAB7.0以后的版本中,已经废除cloop命令,其功能完全可以由feedback命令来代替。(2)有关模型混合连接,建议采用Simulink仿真。第三十页,共三十五页,2022年,8月28日*3.5模型实现(本节课后自习)Matlab提供的状态空间模型实现函数有:sysT=ss2ss(sys,T)——相似变换[csys,T]=canon(sys,’type’)——状态空间的正则变换[Abar,Bbar,Cbar,T,k]=ctrbf(A,B,C)——可控阶梯形函数[Abar,Bbar,Cbar,T,k]=obsvf(A,B,C)——可观阶梯形函数Csys=canon(sys,’t

温馨提示

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

评论

0/150

提交评论