北理工自控实验1.docx_第1页
北理工自控实验1.docx_第2页
北理工自控实验1.docx_第3页
北理工自控实验1.docx_第4页
北理工自控实验1.docx_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

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

文档简介

实验1 控制系统的模型建立一、实验目的1. 掌握利用MATLAB 建立控制系统模型的方法。2. 掌握系统的各种模型表述及相互之间的转换关系。3. 学习和掌握系统模型连接的等效变换。二、实验原理1. 系统模型的 MATLAB描述系统的模型描述了系统的输入、输出变量以及内部各变量之间的关系,表征一个系统的模型有很多种,如微分方程、传递函数模型、状态空间模型等。这里主要介绍系统传递函数(TF)模型、零极点增益(ZPK)模型和状态空间(SS)模型的MATLAB 描述方法。1)传递函数(TF)模型传递函数是描述线性定常系统输入-输出关系的一种最常用的数学模型,其表达式一般为 在MATLAB 中,直接使用分子分母多项式的行向量表示系统,即num = bm, bm-1, b1, b0den = an, an-1, a1, a0调用tf 函数可以建立传递函数TF 对象模型,调用格式如下:Gtf = tf(num,den)tfdata 函数可以从TF 对象模型中提取分子分母多项式,调用格式如下:num,den = tfdata(Gtf) 返回cell 类型的分子分母多项式系数num,den = tfdata(Gtf,v) 返回向量形式的分子分母多项式系数2)零极点增益(ZPK)模型传递函数因式分解后可以写成 式中z1,z2,zm称为传递函数的零点;P1,P2,Pn称为传递函数的极点;k 为传递系数(系统增益)。在MATLAB 中,直接用z,p,k矢量组表示系统,其中z,p,k 分别表示系统的零极点及其增益,即:z=z1,z2,zm;p=p1,p2,pn;k=k;调用zpk 函数可以创建ZPK 对象模型,调用格式如下:Gzpk = zpk(z,p,k)同样,MATLAB 提供了zpkdata 命令用来提取系统的零极点及其增益,调用格式如下:z,p,k = zpkdata(Gzpk) 返回cell 类型的零极点及增益z,p,k = zpkdata (Gzpk,v) 返回向量形式的零极点及增益函数pzmap 用来求取系统的零极点或绘制系统得零极点图,调用格式如下:pzmap(G) 在复平面内绘出系统模型的零极点图。p,z = pzmap(G) 返回的系统零极点,不作图。3)状态空间(SS)模型由状态变量描述的系统模型称为状态空间模型,由状态方程和输出方程组成:其中:x 为n 维状态向量;u 为r 维输入向量; y 为m 维输出向量; A 为nn 方阵,称为系统矩阵; B 为nr 矩阵,称为输入矩阵或控制矩阵;C 为mn 矩阵,称为输出矩阵; D为mr 矩阵,称为直接传输矩阵。在MATLAB 中,直接用矩阵组A,B,C,D表示系统,调用ss 函数可以创建ZPK 对象模型,调用格式如下:Gss = ss(A,B,C,D)同样,MATLAB 提供了ssdata 命令用来提取系统的A、B、C、D 矩阵,调用格式如下:A,B,C,D = ssdata (Gss) 返回系统模型的A、B、C、D 矩阵4)三种模型之间的转换上述三种模型之间可以互相转换,MATLAB 实现方法如下:TF 模型ZPK 模型:zpk(SYS)或tf2zp(num,den)TF 模型SS 模型:ss(SYS)或tf2ss(num,den)ZPK 模型TF 模型:tf(SYS)或zp2tf(z,p,k)ZPK 模型SS 模型:ss(SYS)或zp2ss(z,p,k)SS 模型TF 模型:tf(SYS)或ss2tf(A,B,C,D)SS 模型ZPK 模型:zpk(SYS)或ss2zp(A,B,C,D)2. 系统模型的连接G1(s)G2(s)Y(s) U(s)在实际应用中,整个控制系统是由多个单一的模型组合而成,基本的组合方式有串联连接、并联连接和反馈连接。图1-2 分别为串联连接、并联连接和反馈连接的结构框图和等效总传递函数。U(s)G1(s)G2(s)Y(s)G(s)=G1(s)G2(s) G(s)=G1(s)+G2(s) U(s) +G(s)Y(s)H(s)(a)串联系统 (b)并联系统 (c)反馈连接在MATLAB 中可以直接使用“*”运算符实现串联连接,使用“”运算符实现并联连接。反馈系统传递函数求解可以通过命令feedback 实现,调用格式如下:T = feedback(G,H),T = feedback(G,H,sign)其中,G 为前向传递函数,H 为反馈传递函数;当sign = +1 时,GH 为正反馈系统传递函数;当sign = -1 时,GH 为负反馈系统传递函数;默认值是负反馈系统。三、实验内容1. 已知控制系统的传递函数如下试用MATLAB 建立系统的传递函数模型、零极点增益模型及系统的状态空间方程模型,并绘制系统零极点图。2. 已知控制系统的状态空间方程如下试用MATLAB 建立系统的传递函数模型、零极点增益模型及系统的状态空间方程模型,并绘制系统零极点图。3. 已知三个系统的传递函数分别为试用MATLAB 求上述三个系统串联后的总传递函数。4. 已知如图E2-1 所示的系统框图,试用MATLAB 求该系统的闭环传递函数。Y(s) U(s) + 5. 已知如图E2-2 所示的系统框图,试用MATLAB 求该系统的闭环传递函数。U(s) + Y(s) + +四、实验结果1 num=2 18 40; den=1 5 8 6; Gtf=tf(num,den)Gtf = 2 s2 + 18 s + 40 - s3 + 5 s2 + 8 s + 6 Continuous-time transfer function. Gzpk=zpk(Gtf)Gzpk = 2 (s+5) (s+4) - (s+3) (s2 + 2s + 2) Continuous-time zero/pole/gain model. Gss=ss(Gtf)Gss = a = x1 x2 x3 x1 -5 -2 -1.5 x2 4 0 0 x3 0 1 0 b = u1 x1 4 x2 0 x3 0 c = x1 x2 x3 y1 0.5 1.125 2.5 d = u1 y1 0 Continuous-time state-space model. pzmap(Gzpk); grid on2. A=0 1 0 0;0 0 1 0;0 0 0 1;-1 -2 -3 -4; B=0;0;0;1; C=10 2 0 0; D=0; Gss=ss(A,B,C,D)Gss = a = x1 x2 x3 x4 x1 0 1 0 0 x2 0 0 1 0 x3 0 0 0 1 x4 -1 -2 -3 -4 b = u1 x1 0 x2 0 x3 0 x4 1 c = x1 x2 x3 x4 y1 10 2 0 0 d = u1 y1 0 Continuous-time state-space model. Gtf=tf(Gss)Gtf = 2 s + 10 - s4 + 4 s3 + 3 s2 + 2 s + 1 Continuous-time transfer function. Gzpk=zpk(Gss)Gzpk = 2 (s+5) - (s+3.234) (s+0.6724) (s2 + 0.0936s + 0.4599) Continuous-time zero/pole/gain model. pzmap(Gzpk); grid on;3. num1=2 6 5; den1=1 4 5 2; G1=tf(num1,den1)G1 = 2 s2 + 6 s + 5 - s3 + 4 s2 + 5 s + 2 Continuous-time transfer function. num2=1 4 1; den2=1 9 8 0; G2=tf(num2,den2)G2 = s2 + 4 s + 1 - s3 + 9 s2 + 8 s Continuous-time transfer function. z3=-3 -7; p3=-1 -4 -6; k3=5; Gzpk=zpk(z3,p3,k3)Gzpk = 5 (s+3) (s+7) - (s+1) (s+4) (s+6) Continuous-time zero/pole/gain model. G3tf=tf(Gzpk)G3tf = 5 s2 + 50 s + 105 - s3 + 11 s2 + 34 s + 24 Continuous-time transfer function. G=G1*G2*G3tfG = 10 s6 + 170 s5 + 1065 s4 + 3150 s3 + 4580 s2 + 2980 s + 525 - s9 + 24 s8 + 226 s7 + 1084 s6 + 2905 s5 + 4516 s4 + 4044 s3 + 1936 s2 + 384 s Continuous-time transfer function.4 num1=1; den1=1 1; G1=tf(num1,den1)G1 = 1 - s + 1 Continuous-time transfer function. num2=1; den2=0.5 1; G2=tf(num2,den2)G2 = 1 - 0.5 s + 1 Continuous-time transfer function. num3=3; den3=1 0; G3=tf(num3,den3)G3 = 3 - s Continuous-time transfer function. G=(G1+G2)*G3G = 4.5 s + 6 - 0.5 s3 + 1.5 s2 + s Continuous-time transfer function. T=feedback(G,G2,-1)T = 2.25 s2 + 7.5 s + 6 - 0.25 s4 + 1.25 s3 + 2 s2 + 5.5 s + 6 Continuous-time transfer function.5 num1=10; den1=1 1; G1=tf(num1,den1)G1 = 10 - s + 1 Continuous-time transfer function. num2=2; den2=1 1 0; G2=tf(num2,den2)G2 = 2 - s2 + s Continuous-time transfer function. num3=1 3; den3=1 2; H1=tf(num3,den3)H1 = s + 3 - s + 2 Continuous-time transfer function. num4=5 0; den4=1 6 8; H2=tf(num4,den4)H2 = 5 s - s2 + 6 s + 8 Continuous-time transfer function. T1=feedback(G2,H1,+1)T1 = 2 s + 4 - s3 + 3 s2 - 6 Continuous-time transfer function. G=G1*T1G = 20 s + 40 - s4 + 4 s3 + 3 s2 - 6 s - 6 Continuous-time transfer function.

温馨提示

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

评论

0/150

提交评论