第4章线性控制系统的数学模型1选读.ppt

  1. 1、本文档共96页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第四章 线性控制系统的数学模型 4.1.1 线性系统的传递函数模型 练习:零极点模型 4.5.2 时间延迟模型的Padé近似 后续内容可自学 并联连接 ? ? 并联系统的传递函数总模型为 若两个模块G1(s) = (A1,B1,C1,D1)和G2(s) = (A2,B2,C2,D2),则并联总系统的数学模型可以由下式求出 在MATLAB下,若已知两个子系统模型G1 和G2,则并联结构总的系统模型可以统一由G=G1+G2 求出。 ? 反馈连接 ? ? 若两个模块G1(s) = (A1,B1,C1,D1)和G2(s) = (A2,B2,C2,D2),则负反馈连接总系统的数学模型可以由下式求出 若D1 =D2 =0,则Z=I,这时整个系统模型的状态方程可以简化成 ? ? 在MATLAB环境中直接能使用G=G1/(1 +G2*G1)这样的语句求取总系统模型,但这样得出的模型阶次可能高于实际的阶次,需要用minreal()函数求取得出模型的最小实现形式。 还可以使用MATLAB控制系统工具箱中提供的feedback()函数求取总模型,该函数的调用格式如下: ? MATLAB提供的feedback()函数只能用于G1 和G2 为具体参数给定的模型,通过适当的扩展,就可以编写一个能够处理符号运算的feedback()函数 function H=feedback(G1,G2,key) if nargin==2; key=-1; end, H=G1/(sym(1)-key*G1*G2); H=simple(H); 若将其放置在MATLAB路径下某个目录的@sym子目录下,例如在当前工作目录下建立一个@sym子目录,将该文件置于子目录下,则可以直接处理符号模型的化简问题,而不影响原来数值型feedback()函数的正常调用。 例4-17 考虑如图4-4所示的典型反馈控制系统框图,假设各个子传递函数模型为 则可以通过下面的语句将总模型用MATLAB求出 s=tf(s); Gc=(5*s+3)/s; H=1000/(s+1000); G=(12*s^3+24*s^2+12*s+20)/(2*s^4+4*s^3+6*s^2+2*s+2); GG=feedback(G*Gc,H) % 求取并显示负反馈系统的传递函数模型 例4-18 考虑图4-4中给出的反馈系统,假设受控对象模型为多变量状态方程模型 A=[-12,-17.2,-16.8,-11.9; 6,8.6,8.4,6; 6,8.7,8.4,6; -5.9,-8.6,-8.3,-6]; B=[1.5,0.2; 1,0.3; 2,1; 0,0.5]; C=[2,0.5,0,0.8; 0.3,0.3,0.2,1]; D=zeros(2,2); G=ss(A,B,C,D); s=tf(s); g11=(2*s+1)/s; g22=(5*s+2)/s; Gc=[g11,0; 0 g22]; H=eye(2); GG=feedback(G*Gc,H) % 得出总模型 控制器为传递函数矩阵,为对角矩阵,其子传递函数为g11(s) = (2s+ 1)/s、g22(s) =(5s+ 2)/s,反馈环节为单位矩阵,这样用MATLAB的串联、反馈语句仍然能直接求出总系统模型 例4-19 考虑如图4-5所示的多变量反馈控制系统框图,受控对象由例4-7给出 控制器模型为 整个系统由单位负反馈结构构成。 g11=tf(0.1134,[1.78 4.48 1],ioDelay,0.72); g12=tf(0.924,[2.07 1]); g21=tf(0.3378,[0.361 1.09 1],ioDelay,0.3); g22=tf(-0.318,[2.93 1],ioDelay,1.29); G=[g11, g12; g21, g22]; s=tf(s); Kp=[-0.4136,2.6537; 1.133,-0.3257]; Kd=[3.8582+1.0640/s, 0; 0, 1.1487+0.8133/s]; H=eye(2); G1=feedback(G*Kp*Kd,H) 由下面的语句可以直接计算闭环系统状态方程模型 值得指出的是,由于该开环环节含有延迟,早期版本中feedback()函数直接使用不能正确处理这样的模型,将给出错误信息。所以早期版本处理此问题时需要事先将受控对象模型手工转换成带有内部延迟的状态方程模型,然后再求闭环模型 P=ss(G); G2=feedback(P*Gp*Kd,H) % 或G2=feedback(ss(G)*Gp*Kd,H) 假设某典

文档评论(0)

希望之星 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档