matlab的一道题,已知某控制系统的运动方程为y'-查字典问答网
分类选择

来自苟阳明的问题

  matlab的一道题,已知某控制系统的运动方程为y''(t)+5y'(t)+6y(t)=u(t),其中y(t)是系统输出变量,u(t)是系统的输入变量,(1)选择一组状态变量,利用matlab建立系统的状态空间模型.(2)选择另外一组状

  matlab的一道题,

  已知某控制系统的运动方程为y''(t)+5y'(t)+6y(t)=u(t),其中y(t)是系统输出变量,u(t)是系统的输入变量,

  (1)选择一组状态变量,利用matlab建立系统的状态空间模型.

  (2)选择另外一组状态变量,建立系统的状态空间模型.

  (3)将以上两问中得到的状态空间模型转换为传递函数模型,比较结果异同.

5回答
2020-05-25 00:39
我要回答
请先登录
李新卫

  很简单吧状态变量x随意选,尽量选的好列出状态空间:x'=Ax+BU,y=Cx+Dumatlab里面状态空间建模ss_sys1=ss(A,B,C,D);转换成传递函数:tf_sys1=ss2tf(A,B,C,D)%(好久不弄,参数我忘了,不确定,自己help一下)都没分,懒得...

2020-05-25 00:41:07
苟阳明

  A,B,C,D的值是多少啊

2020-05-25 00:42:53
李新卫

  这个,看来完全不会呀,举个例子

  令x1=y,x2=y'则x1'=x2;x2'=y''=u-5*y'-6*y=u-5*x2-6*x1

  所以x'=[x1';x2']=[01;-6-5]*x+[0;1]*Uy=[10]x+0*U

  所以

  A=[01;-6-5;];B=[0;1];C=[10];D=0;

  ss_sys1=ss(A,B,C,D);%求状态空间

  [num,den]=ss2tf(A,B,C,D)%ss转换为tf的分子分母

  tf_sys1=tf(num,den)%求出传递函数

  令x1x2等于不同的东西(比如x1=y'x2=y,自己做吧),得到的状态空间就不一样,就是ABCD不一样,但是传递函数肯定都是一样的,因为都是同一个系统(过程)

2020-05-25 00:47:17
苟阳明

  所以x'=[x1';x2']=[01;-6-5]*x+[0;1]*Uy=[10]x+0*U这里看不懂。。。

2020-05-25 00:49:36
李新卫

  "^T"表示转置,";"表示换行,

  x=[x1x2]^T=[x1;x2](x就是x1x2构成的列向量)

  x'=[x1'x2']^T=[x1';x2'](相应的,x'就是表示x1'x2'构成的列向量)

  下面这两个矩阵表达式是由选取x的已知条件得到的,就是矩阵乘法而已,

  x'=[x1';x2']=[01;-6-5]*x+[0;1]*u(1)

  y=[10]x+0*U(2)

  比如(1)式乘开了就是:

  x1'=0*x1+1*x2+0*u=x2

  x2'=-6*x1+-5*x2+1*u

  你去对比下状态空间的基本形式就明白了

  实在看不懂,只能抱歉了,复习线代和状态空间去吧

2020-05-25 00:52:07

最新问答

推荐文章

猜你喜欢

附近的人在看

推荐阅读

拓展阅读

  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  •