




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答MATLAB
与控制系统仿真实践第10章基于MATLAB的控制系统数学建模1赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答本章主要内容原理要点10.1控制系统的传递函数模型
10.1.1系统传递函数模型简述10.1.2传递函数的MATLAB相关函数10.1.3建立传递函数模型实例10.2控制系统的零极点函数模型10.2.1零极点函数模型简述10.2.2零极点函数的MATLAB相关函数2赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答10.2.3建立零极点函数模型实例10.3控制系统的状态空间函数模型10.3.1状态空间函数模型简述10.3.2状态空间函数的MATLAB相关函数10.3.3建立状态空间函数模型实例10.4系统模型之间的转换10.4.1系统模型转换的MATLAB相关函数10.4.2系统模型之间转换实例3赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答10.5方框图模型的连接化简10.5.1方框图模型的连接化简简述10.5.2系统模型连接化简的MATLAB相关函数10.5.3系统模型连接化简实例10.6Simulink图形化系统建模实例4赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答原理要点——控制系统的数学模型是
系统分析和设计的基础
控制系统的数学模型在控制系统的研究中有着相当重要的地位,要对系统进行仿真处理,首先应当知道系统的数学模型,然后才可以对系统进行模拟。同样,如果知道了系统的模型,才可以在此基础上设计一个合适的控制器,使得系统响应达到预期的效果,从而符合工程实际的需要。所以说,控制系统的数学模型是系统分析和设计的基础。5赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答原理要点——获得系统模型的2种方法
一种是从已知的物理规律出发,用数学推导的方法建立起数学模型;一种是由实验数据拟合系统的数学模型。实际应用中,两种方法各有其优势和应用场合。有了系统的数学模型,为了有效地在MATLAB下对其进行分析和设计,需要掌握用MATLAB描述数学模型的方法。在线性系统理论中,一般常用的数学模型形式有:传递函数模型(系统的外部模型)、状态6赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答
方程模型(系统的内部模型)、零极点增益模型和部分分式模型等。这些模型之间都有着内在的联系,可以相互进行转换。7赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答原理要点——系统传递函数
零初始条件下,系统输出量的Laplace变换与输入量的Laplace变换。这一概念只适用于描述线性定常系统;是描述系统动态特性的一种数学表达式,只反映系统的动态特性,而不反映系统物理性能上的差异。8赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答原理要点——系统分类
按系统性能分:线性系统和非线性系统;连续系统和离散系统;定常系统和时变系统;确定系统和不确定系统。(1)线性连续系统:用线性微分方程式(differentialequations)来描述,如果微分方程的系数为常数,则为定常系统;如果系数随时间而变化,则为时变系统。今9赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答
后我们所讨论的系统主要以线性定常连续系统为主。(2)线性定常离散系统:离散系统指系统的某处或多处的信号为脉冲序列或数码形式。这类系统用差分方程(differenceequations)来描述。(3)非线性系统:系统中有一个元部件的输入输出特性为非线性的系统。10赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答原理要点——模型之间的转换
实际工程里,要解决自动控制问题所需用的数学模型与该问题所给定的已知数学模型往往不一致;或者要解决问题最简单而又最方便的方法所用到的数学模型与该问题所给定的已知数学模型不同,此时,就要对自控系统的数学模型进行转换。11赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答结束12MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答控制系统的传递函数模型
13赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答本节主要内容系统传递函数模型简述传递函数的MATLAB相关函数10.1.3建立传递函数模型实例14赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答系统传递函数模型简述
连续动态系统一般由微分方程来描述。而线性系统又是以线性常微分方程来描述的。设系统的输入信号为u(t),且输出信号为y(t),则系统的微分方程可写成:
15赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答
在零初始条件下,经Laplace变换后,线性系统的传递函数模型:对线性定常系统,式中s的系数均为常数,且不等于零,这时系统在MATLAB中可以方便地由分子和分母系数构成的两个向量唯一地确定出来,这两个向量分别用num(numerator,分子)和den(denominator,分母)表示。16赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答
注意:它们都是按s的降幂进行排列的。则传统函数可表示为注:其中为常数,这样的系统又称为线性时不变系统(LTI);系统的分母多项式称为系统的特征多项式。对物理可实现系统来说,一定要满足,这种情17赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答况下称系统为正则系统。一定要满足,这种情况下称系统为正则系统。对于离散时间系统,其单输入单输出系统的LTI系统差分方程为:对应的脉冲传递函数为:
18赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答
直至今天,系统传递函数的描述仍是控制理论中线性系统模型的一个主要描述方法。19赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答传递函数的MATLAB相关函数
用不同向量分别表示分子和分母多项式,就可以利用控制系统工具箱的函数表示传递函数变量G:
tf函数的具体用法见表。20赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答
表10.1tf函数的具体用法
SYS=TF(NUM,DEN)返回变量SYS为连续系统传递函数模型SYS=TF(NUM,DEN,TS)返回变量SYS为离散系统传递函数模型。TS为采样周期,当TS=-1或者TS=[]时,表示系统采样周期未定义S=TF('s')
定义Laplace变换算子(Laplacevariable),以原形式输入传递函数Z=TF('z',TS)定义Z变换算子及采样时间TS,以原形式输入传递函数21赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答PRINTSYS(NUM,DEN,'s')将系统传递函数以分式的形式打印出来,'s'表示传递函数变量PRINTSYS(NUM,DEN,'z')将系统传递函数以分式的形式打印出来,'z'表示传递函数变量GET(sys)可获得传递函数模型对象sys的所有信息SET(sys,'Property',Value,...)为系统不同属性设定值[NUM,DEN]=TFDATA(SYS,'v')以行向量的形式返回传递函数分子分母多项式C=CONV(A,B)多项式A,B以系数行向量表示,进行相乘。结果C仍以系数行向量表示22赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答此外,系统传递函数也可以由其它形式的传递函数转换而来。这在系统模型之间的转换一节中将详细介绍。23赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答建立传递函数模型实例
例1:将传递函数模型输入到MATLAB工作空间中。方式1
>>
num=[1215];>>den=[11664192];>>G=tf(num,den)Transferfunction:12s+15------------------------s^3+16s^2+64s+19224赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答方式2:>>s=tf(‘s’);%先定义Laplace算子%直接给出系统传递函数表达式>>G=(12*s+15)/(s^3+16*s^2+64*s+192)
Transferfunction:12s+15-------------------------s^3+16s^2+64s+192分析:可以采用不同方法得到系统传递函数。第一种方式需先求出分子分母多项式,再将其作为tf函数的参数使用。第二种方式需先定义Laplace算子,将传递函数直接赋值给对象G。25赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答例2:已知传递函数模型将其输入到MATLAB工作空间中。方式1:>>num=conv(10,[2,1]);
%计算分子多项式>>den=conv([100],[1713]);
%计算分母多项式>>G=tf(num,den)
%求系统传递函数26赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答Transferfunction:20s+10--------------------s^4+7s^3+13s^2方式2:>>s=tf(‘s’)
%定义Laplace算子
Transferfunction:s>>G=10*(2*s+1)/s^2/(s^2+7*s+13)
%直接给出系统传递函数表达式
Transferfunction:20s+10s^4+7s^3+13s^2--------------------s^4+7s^3+13s^227赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答
分析:
当传递函数不是以标准形式给出时,在应用SYS=TF(NUM,DEN)前,需将传递函数分子分母转化成多项式。为此可以手工将多项式展开或借助conv函数完成多个多项式相乘后,再使用tf函数。第2种方式对多项式形式不做要求。这样在得到Laplace算子后,可以直接按照原格式输入传递函数,从而得到系统函数的MATLAB表示。可见第2种方式在处理非标准格式的传递函数时更方便。28赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答例3:设置传递函数模型时间延迟常数为,即系统模型为,在已有MATLAB模型基础上,设置时间延迟常数。接例2所得系统G。方式1:>>set(G,‘ioDelay’,4)
%为传递函数设置时间延迟>>G
%显示传递函数29赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答Transferfunction:
20s+10exp(-4*s)*--------------------
s^4+7s^3+13s^2方式2:>>G.ioDelay=4
%设置G的延时Transferfunction:
20s+10exp(-4*s)*--------------------
s^4+7s^3+13s^2分析:在得到系统的传递函数之后,可以进一步对其参数进行设置。可通过set函数设定属性值,也可直接给属性赋值。30赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答例4:已知系统传递函数模型为提取系统的分子和分母多项式。>>s=tf('s');
%定义Laplace算子>>G=(s^2+2*s+3)/(s^3+3*s+4)/(s+2)
%直接给出系统传递函数表达式
Transferfunction:s^2+2s+3------------------------------s^4+2s^3+3s^2+10s+8
31赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答>>[num1,den1]=tfdata(G,‘v’)
%得到系统的分子和分母多项式num1=00123den1=123108>>get(G)
%查看所得系统的所有参数num:{[00123]}den:{[123108]}ioDelay:0Variable:'s'Ts:0InputDelay:0OutputDelay:032赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答InputName:{''}OutputName:{''}InputGroup:[1x1struct]OutputGroup:[1x1struct]Name:''Notes:{}UserData:[]>>num2=G.num{1,1}
%取出G中具体单元值num2=00123>>den2=G.den{1,1}
%取出G中具体单元值den2=123108
%num是以单元数组表示的,这种方式只能看到其结构33赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答ans=[1x5double]分析:可以利用tfdata函数取出传递函数的分子分母向量,注意参数'v'表示以行向量的形式表示。也可通过操作传递函数对象G的参数来获取分子分母向量,此时要注意分子分母在G结构体中是以单元数组的形式存在的,需以操作单元数组的方式获取。34赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答
结束35MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答
控制系统的零极点函数模型
36赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答本节主要内容零极点函数模型简述零极点函数的MATLAB相关函数建立零极点函数模型实例37赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答
零极点函数模型简述
零极点模型实际上是传递函数模型的另一种表现形式,其原理是分别对原系统传递函数的分子、分母进行分解因式处理,以获得系统的零点和极点的表示形式。38赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答K为系统增益,zi为零点,pj为极点。显然,对实系数的传递函数模型来说,系统的零极点或者为实数,或者以共轭复数的形式出现。离散系统的传递函数也可表示为零极点模式:39赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答
零极点函数的MATLAB相关函数
在MATLAB中零极点增益模型用[z,p,K]矢量组表示。即:然后调用zpk(
)函数就可以输入这个零极点模型了。zpk函数的具体用法见表。40赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答表10.3zpk函数的具体用法sys=zpk(z,p,k)得到连续系统的零极点增益模型sys=zpk(z,p,k,Ts)得到连续系统的零极点增益模型,采样时间为Tss=zpk('s')得到Laplace算子,按原格式输入系统,得到系统zpk模型z=zpk('z',Ts)得到Z变换算子和采样时间Ts,按原格式输入系统,得到系统zpk模型41赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答与零极点增益模型相关的函数见表。[Z,P,K]=ZPKDATA(SYS,'v')得到系统的零极点和增益,参数'v'表示以向量形式表示[p,z]=pzmap(sys)返回系统零极点pzmap(sys)得到系统零极点分布图42赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答
建立零极点函数模型实例
例5:将零极点模型输入MATLAB工作空间方式1:>>z1=[-5;-5];>>p1=[-1;-2;-2-2*j;-2+2*j];>>k=4;>>G1=zpk(z1,p1,k)43赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答Zero/pole/gain:4(s+5)^2---------------------------(s+1)(s+2)(s^2+4s+8)方式2:>>s=zpk('s');>>G2=4*(s+5)^2/(s+1)/(s+2)/(s+2+2*j)/(s+2-2*j)Warning:Notallcomplexrootscomeinconjugatepairs(transferfunctionhascomplexcoefficients).…Zero/pole/gain:4(s+5)^2--------------------------(s+1)(s+2)(s^2+4s+8)44赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答分析:
和传递函数的表示一样,可以用不同方法得到系统零极点模型。一种是直接将零极点向量和增益值赋给zpk函数,一种是先定义零极点形式的Laplace算子,再输入零极点模型。另外在MATLAB的零极点模型显示中,如果存在复数零极点,则用二阶多项式来表示这两个因式,而不直接展开成一阶复数因式。例中第二种方式求零极点传递函数时的警告提示了这一点。45赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答例6:已知一系统的传递函数求取其零极点向量和增益值,并得到系统的零极点增益模型。>>Gtf=tf([728],[41242])
%得到系统传递函数
Transferfunction:7s^2+2s+8------------------------4s^3+12s^2+4s+2>>[z,p,k]=zpkdata(Gtf,'v')
%得到系统零极点向量和增益值z=46赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答p=-2.6980k=>>Gzpk=zpk(z,p,k)
%求系统零极点增益模型Zero/pole/gain:1.75(s^2+0.2857s+1.143)----------------------------------(s+2.698)(s^2+0.302s+0.1853)47赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答>>[p1,z1]=pzmap(Gtf)
%求取系统零极点p1=-2.6980z1=
分析:系统零极点可以由不同方式求取。zpkdata函数需指定参数'v',否则得到的是单元数组形式的零极点。pzmap函数带返回值使用时只返回系统的零极点向量,而不绘制零极点分布图。48赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答例7:已知一系统的传递函数求其零极点及增益,并绘制系统零极点分布图。>>num=[1411];>>den=conv([163],[120]);>>G=tf(num,den)
%得到系统传递函数
Transferfunction:s^2+4s+11--------------------------s^4+8s^3+15s^2+6s49赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答>>[z,p,k]=zpkdata(G,'v')
%得到系统零极点向量和增益值z=p=0k=1>>pzmap(G)
%得到系统零极点分布图例7得到的系统零极点分布图见图。50赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答分析:由MATLAB既可以求得系统的零极点向量,也可以由图形的方式显示其分布状态。pzmap函数不带返回值使用时,显示系统零极点分布图。当在图上点击各点时,将显示该点的各属性及其值。51赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答图10.1例7系统零极点分布图52赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答
结束53MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答
控制系统的状态空间函数模型
54赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答本节主要内容状态空间函数模型简述状态空间函数的MATLAB相关函数建立状态空间函数模型实例55赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答
状态空间函数模型简述
系统动态信息的集合称为状态,在表征系统信息的所有变量中,能够全部描述系统运行的最少数目的一组独立变量称为系统的状态变量,其选取不是惟一的。以n维状态变量为基所构成的n维空间称为n维状态空间。系统在任意时刻的状态是状态空间中的一个点。描述系统状态的一组向量可以看成一个列向量,称为状态向量,其中每个状态变量是状态向量的分量,状态向量在状态空间中随时间t变化的轨迹称为状态轨迹。由状态向量所表征的模型便是56赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答
系统的状态空间模型。这种方式是基于系统的内部的状态变量的,所以又往往称为系统的内部描述方法。和传递函数模型不同,状态方程可以描述更广的一类控制系统模型,包括非线性系统。具有n个状态、m个输入和p个输出的线性时不变系统,用矩阵符号表示的状态空间模型是:57赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答
其中状态向量x(t)是n维,输入向量u(t)是m维,输出向量y(t)是p维;状态矩阵A是n*n维,输入矩阵B是n*m维,输出矩阵C是p*n维,前馈矩阵D是p*m维;对于一个时不变系统,A,B,C,D都是常数矩阵。58赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答状态空间函数的MATLAB相关函数
MATLAB中求系统状态方程的函数具体用法见表。59赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答表ss函数具体用法sys=ss(A,B,C,D)由A,B,C,D矩阵直接得到连续系统状态空间模型sys=ss(A,B,C,D,Ts)由A,B,C,D矩阵和采样时间Ts直接得到离散系统状态空间模型同样,也可以通过ssdata()函数来获得状态方程对象参数。其使用方法见表10.660赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答表10.6ssdata函数的用法[A,B,C,D]=ssdata(sys)得到连续系统参数[A,B,C,D,Ts]=ssdata(sys)得到离散系统参数61赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答建立状态空间函数模型实例
例8:将以下系统的状态方程模型输入
MATLAB工作空间中。>>A=[654;100;010];>>B=[100]';>>C=[067];>>D=[0];>>G=ss(A,B,C,D)
%输入并显示系统状态空间模型62赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答a=x1x2x3
x1654x2100x3010b=u1x11x20x30c=x1x2x3
y1067
63赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答d=u1y10Continuous-timemodel.分析:系统状态方程模型可将A,B,C,D作为参数直接获得。不过需要注意的是,在构造状态方程对象时给出的各个矩阵维数不兼容,则ss()对象将给出明确的错误提示信息并中断程序运行。64赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答
例9:已知系统求系统参数。>>A=[01;-3-4];>>B=[01]';>>C=[52];>>D=1;>>Gss=ss(A,B,C,D)
%得到系统状态空间模型65赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答a=x1x2x101x2-3-4
b=u1x10x21
c=x1x2y152
66赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答d=u1y11Continuous-timemodel.>>[aa,bb,cc,dd]=ssdata(Gss)
%得到系统模型参数aa=01-3-4bb=01cc=52dd=167赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答>>get(Gss)
%得到对象Gss所有参数列表
a:[2x2double]b:[2x1double]
c:[52]d:1e:[]StateName:{2x1cell}
InternalDelay:[0x1double]Ts:0InputDelay:0OutputDelay:0InputName:{''}OutputName:{''}InputGroup:[1x1struct]OutputGroup:[1x1struct]Name:''Notes:{}UserData:[]68赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答
%求取一个系统模型参数ans=01-3-4
分析:系统状态空间模型参数可由不同方式得到。与tf模型和zpk模型相比不同的一点是,状态空间模型参数A,B,
C,D是矩阵形式,可直接由的方式,此时无需按照单元数组格式获得其参数。69赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答结束70MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答
系统模型之间的转换
71赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答引言
系统模型间有着内在的联系,可以相互进行转换。MATLAB提供了系统不同模型之间相互转换的相关函数。72赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答本节主要内容系统模型转换的MATLAB相关函数系统模型之间转换实例73赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答系统模型转换的
MATLAB相关函数
系统的线性时不变(LTI)模型有传递函数(tf)模型、零极点增益(zpk)模型和状态空间(ss)模型,它们之间可以相互转换。转换形式如图所示。74赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答
模型之间的转换函数可分成2类:第一类是把其它类型的模型转换为函数表示的模型自身
见表。
表10.7第一类函数(把其它类型的模型转换为函数表示的模型自身)tfsys=tf(sys)将其它类型的模型转换为多项式传递函数模型zsys=zpk(sys)将其它类型的模型转换为zpk模型sys_ss=ss(sys)将其它类型的模型转换为ss模型75赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答表10.8第二类函数(将本类型传递函数参数转换为其它类型传递函数参数)[A,B,C,D]=tf2ss(num,den)tf模型参数转换为ss模型参数[num,den]=ss2tf(A,B,C,D,iu)ss模型参数转换为tf模型参数,iu表示对应第i路传递函数[num,den]=ss2tf(A,B,C,D,iu)[z,p,k]=tf2zp(num,den)tf模型参数转换为zpk模型参数[num,den]=zp2tf(z,p,k)zpk模型参数转换为tf模型参数[A,B,C,D]=zp2ss(z,p,k)zpk模型参数转换为ss模型参数[z,p,k]=ss2zp(A,B,C,D,i)ss模型参数转换为zpk模型参数,iu表示对应第i路传递函数76赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答系统模型之间转换实例
例10:已知系统传递函数模型试求其零极点模型及状态空间模型。>>clear>>num=[5];>>den=conv([12],[121]);>>Gtf=tf(num,den)
%得到系统多项式传递函数表示77赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答Transferfunction:5---------------------s^3+4s^2+5s+2>>Gzpk=zpk(Gtf)
%将多项式传递函数模型转换为zpk模型
Zero/pole/gain:5-------------(s+2)(s+1)^2>>Gss=ss(Gtf)
%将多项式传递函数模型转换为ss模型78赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答a=x1x2x3x1-4-2.5-1x2200x3010b=u1x12x20x30c=x1x2x3d=u1y10Continuous-timemodel.79赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答分析:采用第一类函数进行传递函数类型的转换,可直接得到转换后的函数表示。例11:已知一系统的零极点模型求其tf模型及状态空间模型。>>z=[-2-4]';>>p=[-1-3]';>>k=5;>>Gzpk=zpk(z,p,k)
%得到系统zpk模型80赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答Zero/pole/gain:5(s+2)(s+4)-------------(s+1)(s+3)>>[a,b,c,d]=zp2ss(z,p,k)
%由系统zpk模型转换得到ss模型参数a=1.73210b=10c=d=581赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答>>[num,den]=zp2tf(z,p,k)
%得到tf模型分子分母参数num=53040den=143>>[num,den]=zp2tf(Gzpk)%错误调用,注意应传递参数z,p,k???Inputargument"p"isundefined.Errorin==>zp2tfat24den=real(poly(p(:)));>>Gtf=zp2tf(z,p,k)
%错误调用,注意应返回分子分母两个参数Gtf=5304082赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答分析:采取第二类函数进行传递函数类型,只得到转换后的系统参数。这一点与第一类函数调用有很大差别。此外,在第二类函数的调用中要特别注意传入参数和返回参数的使用,否则会报错或得到错误结果。例12:将双输入单输出的系统模型转换为多项式传递函数模型。83赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答>>clear>>a=[01;-2-3];>>b=[10;01];>>c=[10];>>d=[00];>>[num,den]=ss2tf(a,b,c,d,1)
%得到第1路输入对应的传递函数参数num=den=132>>[num2,den2]=ss2tf(a,b,c,d,2)
%得到第2路输入对应的传递函数参数num2=84赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答den2=132>>Gss=ss(a,b,c,d);
>>Gtf=tf(Gss)
%直接得到各路传递函数
Transferfunctionfrominput1tooutput:s+3-------------s^2+3s+2
Transferfunctionfrominput2tooutput:
1-------------s^2+3s+285赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答分析:系统传递函数矩阵为对以上双输入单输出的系统模型,在使用ss2tf函数时需要使用参数iu来指定输入输出对应关系。从例题结果知,对于输入1和输入2(考虑输入1时,设输入2为0。反之亦然),传递函数分别为:86赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答例13:系统传递函数为将其转换为状态空间模型。
87赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答>>num=[12];>>den=[112];>>[a,b,c,d]=tf2ss(num,den)
%转换方式1a=-1-210b=10c=12d=088赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答>>Gss=ss(tf(num,den))
%转换方式2a=
x1x2x1-1-2x210
b=u1x12x20c=x1x2y10.51d=u1y1089赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答Continuous-timemodel.分析:使用不同方法得到系统的不同状态空间模型。这也表明具有同一传递函数的系统具有不同的状态空间模型。事实上,状态空间模型是无穷多的。90赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答结束91MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答
方框图模型的连接化简
92赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答本节主要内容方框图模型的连接化简简述系统模型连接化简的MATLAB相关函数系统模型连接化简实例93赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答
方框图模型的连接化简简述
在实际应用中,整个控制系统由受控对象和控制装置组成的,有多个环节。由多个单一的模型组合而成。每个单一的模型都可以用一组微分方程或传递函数来描述。基于模型不同的连接和互连信息,合成后的模型有不同的结果。模型间连接主要有串联连接、并联连接、串并联连接和反馈连接等。对系统的不同连接情况,我们可以进行模型的化简。94赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答方框图模型的连接化简简述
——串联连接的化简
图是一般情况下模型串联连接的结构框图。注意这种形式与多个电阻串联形式一样,但不能与多个电阻的结果混为一谈。若无负载效应,系统总的传递函数等于两个子系统传递函数的乘积,即95赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答注意:对单变量系统而言,是可以互换的,对多变量系统而言,一般不具备这样的关系。96赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答
10.5.1方框图模型的连接化简简述
—并联连接的化简
图是一般情况下模型并联连接的结构框图。单输入单输出(SISO)系统Gl(s)和G2(s)并联连接时,合成系统G:G(s)=Gl(s)+G2(s)
图10.4并联连接结构框图
97赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答
10.5.1方框图模型的连接化简简述
—反馈连接的化简
(a)正反馈连接结构框图(b)负反馈连接结构构图98赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答对于如图的正反馈连接负反馈连接99赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答
10.5.1方框图模型的连接化简简述
—方框图的其它变换化简
此外,方框图的基本变换还有相加点的前移与后移,分支点的前移与后移。它们的化简规则如图。
(a)相加点后移等效变换
100赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答(b)相加点前移等效变换(c)分支点后移等效变换101赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答
(d)分支点前移等效变换图10.6方框图不同等效变换化简102赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答MATLAB提供了系统模型连接化简的不同函数,其中主要函数及功能说明见表。103赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答
表10.9系统模型连接化简函数
系统模型连接化简函数功能说明sys=parallel(sys1,sys2)sys=parallel(sys1,sys2,inp1,inp2,out1,out2)并联两个系统,等效于sys=sys1+sys2对MIMO系统,表示sys1的输入inp1与sys2的输入inp2相连,sys1的输出out1与sys2的输出out2相连sys=series(sys1,sys2)串联两个系统,等效于sys=sys2*sys1104赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答sys=series(sys1,sys2,outputs1,inputs2)对MIMO系统,表示sys1的输出outputs1与sys2的输入inputs2相连sys=feedback(sys1,sys2)两系统负反馈连接,默认格式sys=feedback(sys1,sys2,sign)sign=-1表示负反馈,sign=1表示正反馈。等效于sys=sys1/(1±sys1*sys2)sys=feedback(sys1,sys2,feedin,feedout,sign)对MIMO系统,部分反馈连接。sys1的指定输出feedout连接到sys2的输入,而sys2的输出连接到sys1的指定输入feedin,以此构成闭环系统。sign标识正负反馈,意义同上105赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答系统模型连接化简实例
例13:已知系统
求G1(s)和G2(s)分别进行串联、并联和反馈连接后的系统模型。
106赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答>>clear>>num1=1;>>den1=[1523];>>num2=1;>>den2=[14];>>G1=tf(num1,den1);%得到G1>>G2=tf(num2,den2);%得到G2>>Gs=G2*G1%进行串联,串联方式1Transferfunction:1-----------------------s^3+9s^2+43s+92
107赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答>>Gs1=series(G1,G2)%进行串联,串联方式2,结果与串联方式1相同
Transferfunction:1-----------------------s^3+9s^2+43s+92>>Gp=G1+G2%进行并联,方式1Transferfunction:s^2+6s+27-----------------------s^3+9s^2+43s+92>>Gp1=parallel(G1,G2)%进行并联,并联方式2,结果与并联方式1相同
108赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答Transferfunction:s^2+6s+27-----------------------s^3+9s^2+43s+92>>Gf=feedback(G1,G2)%进行负反馈化简,反馈方式1Transferfunction:s+4-----------------------s^3+9s^2+43s+93>>Gf1=G1/(1+G1*G2)%进行负反馈化简,反馈方式
2,模型阶次高于实际阶次Transferfunction:s^3+9s^2+43s+92------------------------------------------------s^5+14s^4+111s^3+515s^2+1454s+2139109赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.在线交流,有问必答>>Gf2=minreal(Gf1)%获得系统的最小实现模型,结果与反馈方式1相同Transferfunction:s+4-----------------------s^3+9s^2+43s+93分析:1.系统串联、并联和反馈连接化简可由不同方式完成。2.注意在串联实现方面,如果传递函数是状态空间形式,与显然是不相同的。而对于非SISO系统,不一定存在,即使存在也极有可能得
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 心脑血管课件知识
- 2025年高效酸雾净化器项目发展计划
- 心理战基础知识课件
- 出户协议书范本
- 出轨丈夫离婚协议书范本
- 酬劳协议书范本模板
- 心理卫生健康课件
- 婚前出资购房协议书范本
- 房产遗产协议书范本
- 海鲜期货合同协议书范本
- 无人机光谱监测农田面源污染-洞察阐释
- 国际压力性损伤-溃疡预防和治疗临床指南(2025年版)解读课件
- 《电力建设土建工程施工技术检验规范》
- 四年级【语文(统编版)】牛和鹅(第一课时)课件
- DL-T 2589-2023 垃圾发电厂智能点巡检系统技术规范
- “中医五行学说课件”
- 床垫项目融资计划书
- 2022年肇庆高要区中小学教师招聘考试真题
- 刘绍棠:从“荷花淀”走进“乡土”
- 片石混凝土施工工艺
- 事故车辆买卖合同(2篇)
评论
0/150
提交评论