线性系统结构分析与分解及标准型..docx

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

实验三十七 线性系统结构分析与分解及标准型实验类型:验证 难度系数:0.3 实验性质:必做 课内学时:0 课外学时:2 分组人数:2开课方式:在课外完成在MATLAB平台上完成实验。实验目的:掌握线性系统状态空间标准型、解及其模型转换。实验设备与软件:1、MATLAB数值分析软件实验原理:1、标准型变换、矩阵Jordan型变换阵、特征值(1)标准型变换 命令格式 csys=canon(sys,’type’)说明:type制定规范型的形式,包括两种选项:model(模态规范型)、companion(伴随规范型,友矩阵型,能控II型)。(2)矩阵的Jordan规范型 命令格式 [V J]=Jordan(A)说明:V特征向量,J是Jordan型 (3)求矩阵特征值和特征向量 命令格式 [V J]=eig(A) cv= eig(A) 说明:V特征向量,J是Jordan型;cv是特征值列向量2、状态模型的相似变换: 命令格式 sysb=ss2ss(sys,T)说明:sys是状态空间模型,T是非奇异变换阵的逆阵传递函数模型与状态空间模型之间的相互转换:命令格式 [A,B,C,D]=tf2ss(num,den)[num,den]=ss2tf(A,B,C,D,iu) 说明:tf2ss:传递函数状态空间; ss2tf状态空间传递函数; iu是第iu个输入有效zpk模型与状态空间模型之间的相互转换:命令格式:[A,B,C,D]=zp2ss(z,p,k)[z,p,k]=ss2zp(A,B,C,D,iu) 说明:zp2ss :zpk模型状态空间模型; ss2zp状态空间模型zpk模型3、线性定常系统的可控制与可观性及结构分解关于可控制与可观性及结构分解的理论内容,请看教材学习。(1)可控性和可观性----一般采用能控性/能观性矩阵类别(适用于离散或连续的情况)状态可控性和输出可控性子函数如下:function str =pdctrb(A,B)Qc=ctrb(A,B);r=rank(Qc);l=length(A);if r==l str=’系统是状态完全可控的!’else str=’系统不是状态完全可控的!’end实际上,rank(Qc)为系统的状态可控性指数,即系统中可控的状态的数目。function str=pdctrbo(A,B)%输出可控性Co=ctrb(A,B);m=size(C,1);%返回行数Qyc=[C*Co,D];Tm=rank(Qyc);if m==Tm str=’系统输出是完全可控的!’else str=’系统输出不是完全可控的!’end实际上,rank(Qyc) 为系统的输出可控性指数,即系统中可控的输出的数目。状态可观性判别子函数代码如下:function str=pdobsv(A,C)Qo=obsv (A,C);r=rank(Qo);l= size(A,1);if r==l str=’系统是状态完全可观的!’else str=’系统不是状态完全可观的!’end实际上,rank(Qo)为系统的状态可观性指数,即系统中可观测的状态的数目。有了上述子函数,在Matlab中可以直接调用这些子函数来判断可控性和可观性。(2)可控性和可观性Gram矩阵可由下面的函数求得 W=gram(sys,type)----sys是系统的状态空间模型,type可以是’c’或’o’。通过判断W的正定性判定其可控性或可观性。由于从W的数学表达式上看,Wc和Wo是对称的半正定矩阵,它们分别满足下面的Lyapunov方程(这种方程在稳定性分析中还将提到)、所以系统必须稳定才能得到Gram矩阵。Wc矩阵中的值对应于输入信号对相应状态的贡献:第i个元素越大,则说明输入信号对第i个输入状态的贡献越大。Wo矩阵中的值对应于每个状态对系统输出的贡献:第i个元素越大,则说明第i状态对系统输出的贡献越大。(3)结构分解a.在matlab中调用ctrbf()函数对系统按能控性分解[Abar,Bbar,Cbar,T,K]=ctrbf(A,B,C)[Abar,Bbar,Cbar,T,K]=ctrbf(A,B,C,TOL)说明:K是可控的状态个数,TOL为误差,这里的变换是这样令的:x=T-1xbar,所以有Abar=TAT-1,Bbar=TB,Cbar=CT-1。显然这与教材中的令法是不同的,且T的选取方式也不同,得到的分解形式也不同,要加以区别。这里的能观性分解形式为:,,b.在matlab中调用ctrbf()函数对系统按能观性分解[Abar,Bbar,Cbar,T,K]=

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档