网站大量收购独家精品文档,联系QQ:2885784924

石油大学仿真课件 3 连续系统仿真概论2.ppt

  1. 1、本文档共31页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
石油大学仿真课件 3 连续系统仿真概论2

模型结构变换 2.2 Matlab 实现 在Matlab中没有现成的函数来进行面向结构图的模型变换,因而我们可以自己编写这样的函数。 函数原型:[P,Q]=w_bd2ss(G,W,W0) 其中,G为所有环节的参数组成的矩阵,一行表示一个环节,一行有3个元素,分别适环节的参数a,b,c; W和W0为环节之间连接方程 P,Q为生成的状态空间模型 考虑右图没有输入的微分作用的典型环节 上式适用于只有积分和惯性环节的系统。 模型结构变换 2.2 function [P,Q]=w_bd2ss(G,W,W0) if (nargin~=3) | (nargout~=2) error(输入变量个数不正确!) end; A=diag(G(:,1)); B=diag(G(:,2)); C=diag(G(:,3)); [row,col]=size(G); if row ~= rank(B) error(不能进行面向环节的模型变换,由于系统可能存在纯比例或纯微分环节!) end; P=inv(B)*(C*W-A); Q=inv(B)*C*W0; Matlab程序 模型结构变换 2.2 在Matlab中的求解过程 G=[2,1,1;0,1,3;5,1,6;0,1,1]; W=[0,0,0,0;1,0,-2,0;0,1,0,1;0,0,0,0]; W0=[1;0;0;1]; [P,Q]=w_bd2ss(G,W,W0) 最后得到的状态模型就是: P = -2 0 0 0 3 0 -6 0 0 6 -5 6 0 0 0 0 Q = 1 0 0 1 结果 作业题 已知 y,u 及其各阶导数初始值为零,试将其转换为状态空间表达式 2.1 描述系统的微分方程为 2.2 系统传递函数为 已知 y,u 及其各阶导数初始值为零,试将其转换为状态空间表达式 作业题 2.3 用伴随方程法将 转换为状态方程,并求出对应状态变量的初值。已知 2.4 写出下图所示系统的外部连接方程及连接矩阵。其中方框内的数字表示环节编号。 Matlab中数学模型其他命令 1. 传递函数有延迟环节时 系统的传递函数中可能存在延迟环节,如 num=conv([1,1],conv([1,2,6],[1,2,6])); den=conv([1,0,0],conv([1,3],[1,2,3,4])); G=tf(num,den) G.ioDelay=3 或者: set (G,’ioDelay’,3) 2.3 Matlab中数学模型其他命令 2.3 2. 传递函数的特征根及零极点图 传递函数G(s)输入之后,分别对分子和分母多项式作因式分解,则可求出系统的零极点,MATLAB提供了多项式求根函数 roots() ,其调用格式为 roots(p) 其中p为多项式 【例】 多项式 p(s)=s3+3s2+4 p=[1,3,0,4]; r=roots(p) r=-3.3533 0.1777+1.0773i 0.1777-1.0773i 结果 Matlab中数学模型其他命令 2.3 p = 1.0000 3.0000 0.0000 4.0000 反过来,若已知特征多项式的特征根,可调用MATLAB中的 poly( )函数,来求得多项式降幂排列时各项的系数 上例中 poly(r) polyval(p,a)函数用来求取给定变量值时多项式的值 【例】 求 n(s)=(3s2+2s+1)(s+4) 在s=-5 时值 p=conv([3,2,1],[1,4]); value=polyval(p,-5) value=-66 传递函数在复平面上的零极点图 [p,z]=pzmap(num,den) Matlab中数学模型其他命令 2.3 3. 控制系统方框图模型 [num,den]=series(num1,den1,num2,den2) (1)串联 [num,den]=parallel(num1,den1,num2,den2) (2)并联 Matlab中数学模型其他命令 2.3 [num,den]=feedback(numg,deng,numh,denh,sign) (3)反馈 sign为反馈极性,若为正反馈其为1,若为负反馈其为-1或缺省。 Matlab中数学模型其他命令 2.3 4. Simulink中的时域响应举例 例图的Si

文档评论(0)

wyjy + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档