How can I obtain the matrices A, B, C ,D of the state space for a transfer matrix using Matlab?

85 ビュー (過去 30 日間)
Suppose I have a transfer matrix:
xa.PNG
how can I obtain the matrices A, B, C ,D of the state space for this matrix using Matlab?

採用された回答

Star Strider
Star Strider 2020 年 2 月 10 日
Try this:
s = tf('s');
P = [2/(s^2+3*s+2) 2*s/(s^2+3*s+2); -2*s/(s^2+3*s+2) -2/(s^2+3*s+2)]
S = ss(P)
producing:
S =
A =
x1 x2 x3 x4
x1 -3 -2 0 0
x2 1 0 0 0
x3 0 0 -3 -2
x4 0 0 1 0
B =
u1 u2
x1 2 0
x2 0 0
x3 0 2
x4 0 0
C =
x1 x2 x3 x4
y1 0 1 1 0
y2 -1 0 0 -1
D =
u1 u2
y1 0 0
y2 0 0
Continuous-time state-space model.
  4 件のコメント
Flavio Clarizia
Flavio Clarizia 2020 年 2 月 11 日
Thank you again. I am trying to apply this to solve this problem :
I don't know if it is ok to ask here, but could you give it a check if it is not a problem? Thanks in advance.
Star Strider
Star Strider 2020 年 2 月 11 日
As always, my pleasure!
I posted an Answer to your other Question (that you referenced in your last Comment) that reproduces the anslysis at the end of that monograph. The appropriate MATLAB code is already written, so that was straightforward. (I have not done anything with Rosenbrock System Matrices since my multivariable control course in graduate school, so this was an interesting problem.)

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeClassical Control Design についてさらに検索

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by