ImageVerifierCode 换一换
格式:PPT , 页数:124 ,大小:817KB ,
资源ID:4575618      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-4575618.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(第10章 MATLAB的控制系统数学建模.ppt)为本站会员(mcady)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

第10章 MATLAB的控制系统数学建模.ppt

1、MATLAB与控制系统仿真实践, 北京航空航天大学出版社,2009.8. 在线交流,有问必答,MATLAB 与控制系统仿真实践,第10章 基于MATLAB的控制系统数学建模,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,本章主要内容,原理要点 10.1 控制系统的传递函数模型 10.1.1 系统传递函数模型简述 10.1.2 传递函数的MATLAB相关函数 10.1.3 建立传递函数模型实例 10.2 控制系统的零极点函数模型 10.2.1 零极点函数模型简述 10.2.2 零极点函数的MATLAB相关函数,赵广元.MATLAB与控制系统仿

2、真实践,北京航空航天大学出版社,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 系统模型之间转换实例,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,10.5 方框图模型的连接化简 10.5.1 方框图模型的连接化简简述 10.5.2 系统模型连接化简的MATLA

3、B相关函数 10.5.3 系统模型连接化简实例 10.6 Simulink图形化系统建模实例,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,原理要点控制系统的数学模型是 系统分析和设计的基础,控制系统的数学模型在控制系统的研究中有着相当重要的地位,要对系统进行仿真处理,首先应当知道系统的数学模型,然后才可以对系统进行模拟。同样,如果知道了系统的模型,才可以在此基础上设计一个合适的控制器,使得系统响应达到预期的效果,从而符合工程实际的需要。所以说,控制系统的数学模型是系统分析和设计的基础。,赵广元.MATLAB与控制系统仿真实践,北京航空航天

4、大学出版社,2009.8. 在线交流,有问必答,原理要点获得系统模型的2种方法,一种是从已知的物理规律出发,用数学推导的方法建立起数学模型;一种是由实验数据拟合系统的数学模型。实际应用中,两种方法各有其优势和应用场合。有了系统的数学模型,为了有效地在MATLAB下对其进行分析和设计,需要掌握用MATLAB描述数学模型的方法。在线性系统理论中,一般常用的数学模型形式有:传递函数模型(系统的外部模型)、状态,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,方程模型(系统的内部模型)、零极点增益模型和部分分式模型等。这些模型之间都有着内在的联系,可

5、以相互进行转换。,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,原理要点系统传递函数,零初始条件下,系统输出量的Laplace变换与输入量的Laplace变换。这一概念只适用于描述线性定常系统;是描述系统动态特性的一种数学表达式,只反映系统的动态特性,而不反映系统物理性能上的差异。,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,原理要点系统分类,按系统性能分:线性系统和非线性系统;连续系统和离散系统;定常系统和时变系统;确定系统和不确定系统。(1)线性连续系统:用线性微分方程式(diff

6、erential equations)来描述,如果微分方程的系数为常数,则为定常系统;如果系数随时间而变化,则为时变系统。今,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,后我们所讨论的系统主要以线性定常连续系统为主。 (2)线性定常离散系统:离散系统指系统的某处或多处的信号为脉冲序列或数码形式。这类系统用差分方程(difference equations)来描述。 (3)非线性系统:系统中有一个元部件的输入输出特性为非线性的系统。,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,原理要点

7、模型之间的转换,实际工程里,要解决自动控制问题所需用的数学模型与该问题所给定的已知数学模型往往不一致;或者要解决问题最简单而又最方便的方法所用到的数学模型与该问题所给定的已知数学模型不同,此时,就要对自控系统的数学模型进行转换。,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,结束,MATLAB与控制系统仿真实践, 北京航空航天大学出版社,2009.8. 在线交流,有问必答,10.1 控制系统的传递函数模型,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,本节主要内容,10.1.1 系统传递

8、函数模型简述 10.1.2 传递函数的MATLAB相关函数 10.1.3 建立传递函数模型实例,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,10.1.1 系统传递函数模型简述,连续动态系统一般由微分方程来描述。而线性系统又是以线性常微分方程来描述的。设系统的输入信号为u(t),且输出信号为y(t),则系统的微分方程可写成:,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,在零初始条件下,经Laplace变换后,线性系统的传递函数模型:对线性定常系统,式中s的系数均为常数,且不等于零,这时

9、系统在MATLAB中可以方便地由分子和分母系数构成的两个向量唯一地确定出来,这两个向量分别用num(numerator,分子)和den(denominator,分母)表示。,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,注意:它们都是按s的降幂进行排列的。则传统函数可表示为 注:其中为常数,这样的系统又称为线性时 不变系统(LTI);系统的分 母多项式称为系统的特征多项式。对物理可实现系统来说,一定要满足,这种情,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,况下称系统为正则系统。一定要

10、满足,这种 情况下称系统为正则系统。对于离散时间系统,其单输入单输出系 统的LTI系统差分方程为:对应的脉冲传递函数为:,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,直至今天,系统传递函数的描述仍是控 制理论中线性系统模型的一个主要描述方法。,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,10.1.2传递函数的MATLAB相关函数,用不同向量分别表示分子和分母多项式,就可以利用控制系统工具箱的函数表示传递函数变量G:tf函数的具体用法见表10.1。,赵广元.MATLAB与控制系统仿真实

11、践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,表10.1 tf函数的具体用法,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,此外,系统传递函数也可以由其它形式的传递函数转换而来。这在系统模型之间的转换一节中将详细介绍。,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,10.1.3 建立传递函数模型实例,例1:将传递函数模型输入到MATLAB工作空间中。 方式1 num=12

12、 15; den=1 16 64 192; G=tf(num,den)Transfer function:12 s + 15-s3 + 16 s2 + 64 s + 192,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,方式2: s=tf(s);%先定义Laplace算子%直接给出系统传递函数表达式 G=(12*s+15)/(s3+16*s2+64*s+192)Transfer function:12 s + 15-s3 + 16 s2 + 64 s + 192 分析:可以采用不同方法得到系统传递函数。第一种方式需先求出分子分母多项式,再将

13、其作为tf函数的参数使用。第二种方式需先定义Laplace算子,将传递函数直接赋值给对象G。,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,例2:已知传递函数模型 将其输入到MATLAB工作空间中。 方式1: num=conv(10,2,1); %计算分子多项式 den=conv(1 0 0,1 7 13); %计算分母多项式 G=tf(num,den) %求系统传递函数,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,Transfer function:20 s + 10 - s4 +

14、7 s3 + 13 s2 方式2: s=tf(s) %定义Laplace算子 Transfer function:s G=10*(2*s+1)/s2/(s2+7*s+13) %直接给出系统传递函数表达式 Transfer function:20 s + 10 s4 + 7 s3 + 13 s2 - s4 + 7 s3 + 13 s2,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,分析:当传递函数不是以标准形式给出时,在应用SYS = TF(NUM,DEN)前,需将传递函数分子分母转化成多项式。为此可以手工将多项式展开或借助conv函数完成多

15、个多项式相乘后,再使用tf函数。第2种方式对多项式形式不做要求。这样在得到Laplace算子后,可以直接按照原格式输入传递函数,从而得到系统函数的MATLAB表示。可见第2种方式在处理非标准格式的传递函数时更方便。,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,例3:设置传递函数模型 时间延迟常数为,即系统模型为, 在已有MATLAB模型基础上,设置时间延迟 常数。 接例2所得系统G。 方式1: set(G,ioDelay,4) %为传递函数设置时间延迟 G %显示传递函数,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2

16、009.8. 在线交流,有问必答,Transfer function:20 s + 10 exp(-4*s) * -s4 + 7 s3 + 13 s2 方式2: G.ioDelay=4 %设置G的延时 Transfer function:20 s + 10 exp(-4*s) * -s4 + 7 s3 + 13 s2 分析:在得到系统的传递函数之后,可以进一步对其参数进行设置。可通过set函数设定属性值,也可直接给属性赋值。,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,例4:已知系统传递函数模型为提取系统的分子和分母多项式。 s=tf(s

17、); %定义Laplace算子 G=(s2+2*s+3)/(s3+3*s+4)/(s+2) %直接给出系统传递函数表达式 Transfer function:s2 + 2 s + 3 - s4 + 2 s3 + 3 s2 + 10 s + 8,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答, num1,den1=tfdata(G,v) %得到系统的分子和分母多项式 num1 =0 0 1 2 3 den1 =1 2 3 10 8 get(G) %查看所得系统的所有参数num: 0 0 1 2 3 den: 1 2 3 10 8ioDelay:

18、 0 Variable: s Ts: 0 InputDelay: 0 OutputDelay: 0,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,InputName: OutputName: InputGroup: 1x1 struct OutputGroup: 1x1 struct Name: Notes: UserData: num2=G.num1,1 %取出G中具体单元值 num2 =0 0 1 2 3 den2=G.den1,1 %取出G中具体单元值 den2 =1 2 3 10 8 G.num %num是以单元数组表示的, 这种方

19、式只能看到其结构,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,ans = 1x5 double 分析:可以利用tfdata函数取出传递函数的分子分母向量,注意参数v表示以行向量的形式表示。也可通过操作传递函数对象G的参数来获取分子分母向量,此时要注意分子分母在G结构体中是以单元数组的形式存在的,需以操作单元数组的方式获取。,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,结束,MATLAB与控制系统仿真实践, 北京航空航天大学出版社,2009.8. 在线交流,有问必答,10.2 控制系统

20、的零极点函数模型,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,本节主要内容,10.2.1 零极点函数模型简述 10.2.2 零极点函数的MATLAB相关函数 10.2.3 建立零极点函数模型实例,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,10.2.1 零极点函数模型简述,零极点模型实际上是传递函数模型的另一种表现形式,其原理是分别对原系统传递函数的分子、分母进行分解因式处理,以获得系统的零点和极点的表示形式。,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009

21、.8. 在线交流,有问必答,K为系统增益,zi为零点,pj为极点。显然,对实系数的传递函数模型来说,系统的零极点或者为实数,或者以共轭复数的形式出现。离散系统的传递函数也可表示为零极点模式:,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,10.2.2零极点函数的MATLAB相关函数,在MATLAB中零极点增益模型用z,p,K矢量组表示。即:然后调用zpk( )函数就可以输入这个零极点模型了。 zpk函数的具体用法见表10.3。,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,表10.3 z

22、pk函数的具体用法,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,与零极点增益模型相关的函数见表10.4。,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,10.2.3 建立零极点函数模型实例,例5:将零极点模型输入MATLAB工作空间 方式1: z1=-5;-5; p1=-1;-2;-2-2*j;-2+2*j; k=4; G1=zpk(z1,p1,k),赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,Zero/pole/gain:4 (

23、s+5)2 - (s+1) (s+2) (s2 + 4s + 8) 方式2: s=zpk(s); G2=4*(s+5)2/(s+1)/(s+2)/(s+2+2*j)/(s+2-2*j) Warning: Not all complex roots come in conjugate pairs (transfer function has complex coefficients). Zero/pole/gain:4 (s+5)2-(s+1) (s+2) (s2 + 4s + 8),赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,分析:和传递

24、函数的表示一样,可以用不同方法得到系统零极点模型。一种是直接将零极点向量和增益值赋给zpk函数,一种是先定义零极点形式的Laplace算子,再输入零极点模型。另外在MATLAB的零极点模型显示中,如果存在复数零极点,则用二阶多项式来表示这两个因式,而不直接展开成一阶复数因式。例中第二种方式求零极点传递函数时的警告提示了这一点。,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,例6:已知一系统的传递函数 求取其零极点向量和增益值,并得到系统的零极点增益模型。 Gtf=tf(7 2 8,4 12 4 2) %得到系统传递函数Transfer fu

25、nction:7 s2 + 2 s + 8 - 4 s3 + 12 s2 + 4 s + 2 z,p,k=zpkdata(Gtf,v) %得到系统零极点向量和增益值 z =,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,-0.1429 + 1.0595i-0.1429 - 1.0595i p =-2.6980 -0.1510 + 0.4031i-0.1510 - 0.4031i k = 1.7500 Gzpk=zpk(z,p,k) %求系统零极点增益模型 Zero/pole/gain:1.75 (s2 + 0.2857s + 1.143)

26、- (s+2.698) (s2 + 0.302s + 0.1853),赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答, p1,z1 = pzmap(Gtf) %求取系统零极点 p1 =-2.6980 -0.1510 + 0.4031i-0.1510 - 0.4031i z1 =-0.1429 + 1.0595i-0.1429 - 1.0595i分析:系统零极点可以由不同方式求取。zpkdata函数需指定参数v,否则得到的是单元数组形式的零极点。pzmap函数带返回值使用时只返回系统的零极点向量,而不绘制零极点分布图。,赵广元.MATLAB与控

27、制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,例7:已知一系统的传递函数 求其零极点及增益,并绘制系统零极点分布图。 num=1 4 11; den=conv(1 6 3,1 2 0); G=tf(num,den) %得到系统传递函数Transfer function:s2 + 4 s + 11 - s4 + 8 s3 + 15 s2 + 6 s,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答, z,p,k=zpkdata(G,v) %得到系统零极点向量和增益值 z =-2.0000 + 2.6458i-2.00

28、00 - 2.6458i p =0-5.4495-2.0000-0.5505 k =1 pzmap(G) %得到系统零极点分布图 例7得到的系统零极点分布图见图10.1。,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,分析:由MATLAB既可以求得系统的零极点向量,也可以由图形的方式显示其分布状态。pzmap函数不带返回值使用时,显示系统零极点分布图。当在图上点击各点时,将显示该点的各属性及其值。,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,图10.1 例7系统零极点分布图,赵广元.M

29、ATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,结束,MATLAB与控制系统仿真实践, 北京航空航天大学出版社,2009.8. 在线交流,有问必答,10.3控制系统的状态空间函数模型,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,本节主要内容,10.3.1 状态空间函数模型简述 10.3.2 状态空间函数的MATLAB相关函数 10.3.3 建立状态空间函数模型实例,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,10.3.1 状态空间函数模型简述

30、,系统动态信息的集合称为状态,在表征系统信息的所有变量中,能够全部描述系统运行的最少数目的一组独立变量称为系统的状态变量,其选取不是惟一的。以n维状态变量为基所构成的n维空间称为n维状态空间。系统在任意时刻的状态是状态空间中的一个点。描述系统状态的一组向量可以看成一个列向量,称为状态向量,其中每个状态变量是状态向量的分量,状态向量在状态空间中随时间t变化的轨迹称为状态轨迹。由状态向量所表征的模型便是,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,系统的状态空间模型。这种方式是基于系统的内部的状态变量的,所以又往往称为系统的内部描述方法。和传

31、递函数模型不同,状态方程可以描述更广的一类控制系统模型,包括非线性系统。具有n个状态、m个输入和p个输出的线性时不变系统,用矩阵符号表示的状态空间模型是:,赵广元.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都是常数矩阵。,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,10.3.2 状态空间函数的

32、MATLAB相关函数,MATLAB中求系统状态方程的函数具体用法见表10.5。,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,表10.5 ss函数具体用法,同样,也可以通过ssdata( )函数来获得状态方程对象参数。其使用方法见表10.6,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,表10.6 ssdata函数的用法,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,10.3.3 建立状态空间函数模型实例,例8:将以下系统的状态方程模

33、型输入 MATLAB工作空间中。 A=6 5 4;1 0 0;0 1 0; B=1 0 0; C=0 6 7; D=0; G=ss(A,B,C,D) %输入并显示系统状态空间模型,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,a = x1 x2 x3x1 6 5 4x2 1 0 0x3 0 1 0b = u1x1 1x2 0x3 0c = x1 x2 x3y1 0 6 7,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,d = u1y1 0Continuous-time model. 分析

34、:系统状态方程模型可将A,B,C,D作为参数直接获得。不过需要注意的是,在构造状态方程对象时给出的各个矩阵维数不兼容,则ss( )对象将给出明确的错误提示信息并中断程序运行。,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,例9:已知系统求系统参数。 A=0 1;-3 -4; B=0 1; C=5 2; D=1; Gss=ss(A,B,C,D) %得到系统状态空间模型,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,a = x1 x2x1 0 1x2 -3 -4b = u1x1 0x2 1c

35、 = x1 x2y1 5 2,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,d = u1y1 1Continuous-time model. aa,bb,cc,dd=ssdata(Gss) %得到系统模型参数 aa =0 1-3 -4 bb =01 cc =5 2 dd =1,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答, get(Gss) %得到对象Gss所有参数列表a: 2x2 doubleb: 2x1 doublec: 5 2 d: 1 e: StateName: 2x1 cell

36、 InternalDelay: 0x1 doubleTs: 0 InputDelay: 0 OutputDelay: 0 InputName: OutputName: InputGroup: 1x1 structOutputGroup: 1x1 structName: Notes: UserData: ,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答, Gss.a %求取一个系统模型参数 ans =0 1 -3 -4分析:系统状态空间模型参数可由不同方式得到。与tf模型和zpk模型相比不同的一点是,状态空间模型参数A,B,C,D是矩阵形式,可

37、直接由Gss.a的方式,此时无需按照单元数组格式获得其参数。,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,结束,MATLAB与控制系统仿真实践, 北京航空航天大学出版社,2009.8. 在线交流,有问必答,10.4系统模型之间的转换,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,引言,系统模型间有着内在的联系,可以相互进行转换。MATLAB提供了系统不同模型之间相互转换的相关函数。,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,本节

38、主要内容,10.4.1 系统模型转换的MATLAB相关函数 10.4.2 系统模型之间转换实例,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,10.4.1 系统模型转换的 MATLAB相关函数,系统的线性时不变(LTI)模型有传递函数(tf)模型、零极点增益(zpk)模型和状态空间(ss)模型,它们之间可以相互转换。转换形式如图10.2所示。,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,模型之间的转换函数可分成2类:第一类是把其它类型的模型转换为函数表示的模型自身 见表10.7。,表1

39、0.7 第一类函数(把其它类型的模型转换为函数表示的模型自身),赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,表10.8 第二类函数(将本类型传递函数参数转换为其它类型传递函数参数),赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,10.4.2 系统模型之间转换实例,例10:已知系统传递函数模型 试求其零极点模型及状态空间模型。 clear num=5; den=conv(1 2,1 2 1); Gtf=tf(num,den) %得到系统多项式传递函数表示,赵广元.MATLAB与控制系统仿

40、真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,Transfer function:5 - s3 + 4 s2 + 5 s + 2 Gzpk=zpk(Gtf) %将多项式传递函数模型转换为zpk模型Zero/pole/gain:5 - (s+2) (s+1)2 Gss=ss(Gtf) %将多项式传递函数模型转换为ss模型,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,a = x1 x2 x3x1 -4 -2.5 -1x2 2 0 0x3 0 1 0b = u1x1 2x2 0x3 0c = x1 x2 x3y1 0 0

41、1.25 d = u1y1 0 Continuous-time model.,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,分析:采用第一类函数进行传递函数类型的转换,可直接得到转换后的函数表示。 例11:已知一系统的零极点模型 求其tf模型及状态空间模型。 z=-2 -4; p=-1 -3; k=5; Gzpk=zpk(z,p,k) %得到系统zpk模型,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,Zero/pole/gain: 5 (s+2) (s+4) -(s+1) (s+3)

42、a,b,c,d=zp2ss(z,p,k) %由系统zpk模型转换得到ss模型参数 a =-4.0000 -1.73211.7321 0b =10 c =10.0000 14.4338 d =5,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答, num,den=zp2tf(z,p,k) %得到tf模型分子分母参数 num =5 30 40 den =1 4 3 num,den=zp2tf(Gzpk)%错误调用,注意应传递参数z,p,k ? Input argument “p“ is undefined. Error in = zp2tf at

43、24 den = real(poly(p(:); Gtf=zp2tf(z,p,k) %错误调用,注意应返回分子分母两个参数 Gtf =5 30 40,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,分析:采取第二类函数进行传递函数类型,只得到转换后的系统参数。这一点与第一类函数调用有很大差别。此外,在第二类函数的调用中要特别注意传入参数和返回参数的使用,否则会报错或得到错误结果。 例12:将双输入单输出的系统模型转换为多项式传递函数模型。,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答, c

44、lear a=0 1;-2 -3; b=1 0;0 1; c=1 0; d=0 0; num,den=ss2tf(a,b,c,d,1) %得到第1路输入对应的传递函数参数 num =0 1.0000 3.0000 den =1 3 2 num2,den2=ss2tf(a,b,c,d,2) %得到第2路输入对应的传递函数参数 num2 =0 0.0000 1.0000,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,den2 =1 3 2 Gss=ss(a,b,c,d); Gtf=tf(Gss) %直接得到各路传递函数Transfer func

45、tion from input 1 to output:s + 3 - s2 + 3 s + 2Transfer function from input 2 to output:1 - s2 + 3 s + 2,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,分析:系统传递函数矩阵为 对以上双输入单输出的系统模型,在使用ss2tf函数时需要使用参数iu来指定输入输出对应关系。从例题结果知,对于输入1和输入2(考虑输入1时,设输入2为0。反之亦然),传递函数分别为:,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8.

46、 在线交流,有问必答,例13:系统传递函数为将其转换为状态空间模型。,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答, num=1 2; den=1 1 2; a,b,c,d=tf2ss(num,den) %转换方式1 a =-1 -21 0 b =10 c =1 2 d =0,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答, Gss=ss(tf(num,den) %转换方式2a = x1 x2x1 -1 -2x2 1 0b = u1x1 2x2 0c = x1 x2y1 0.5 1d = u1y1 0,赵广元.MATLAB与控制系统仿真实践,北京航空航天大学出版社,2009.8. 在线交流,有问必答,Continuous-time model. 分析:使用不同方法得到系统的不同状态空间模型。这也表明具有同一传递函数的系统具有不同的状态空间模型。事实上,状态空间模型是无穷多的。,

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报