Controllable and observable canonical form
164 views (last 30 days)
Show older comments
M. M. Farhad
on 21 Feb 2017
Commented: Star Strider
on 12 Jun 2022
Hi, I want to convert a transfer function to controllable and observable canonical form. Tried with tf2ss but it did not work. I am sharing a part of my code. Is there any way to get those A,B,C,D matrices by any Matlab functions??
My code:
clc; clear all;
Den=[0 1 1]; Num=[1 5 6];
s=tf(Den,Num)
[A B C D]=tf2ss(s)
0 Comments
Accepted Answer
Star Strider
on 21 Feb 2017
Edited: Star Strider
on 21 Feb 2017
The tf2ss function wants a transfer function as input, not a system object.
Try this:
[A B C D]=tf2ss(Den,Num)
A =
-5 -6
1 0
B =
1
0
C =
1 1
D =
0
EDIT —
To get the state space representation from a system object, just use the ss funciton:
[A B C D] = ss(s);
5 Comments
Shady Hassan
on 31 Mar 2018
its the other way around, controllability and observability matrices are reversed in zour explanation above..
More Answers (1)
Mackyle Naidoo
on 11 Jun 2022
i would like to obtain the state space repsentation for controllable , observable and diagonal canonical form
using the following transfer function of the 𝑌𝑌(𝑠𝑠) 𝑈𝑈(𝑠𝑠) = 𝑠 + 4 /𝑠^2 + 13s + 42. Using matlab code to get the desired outcome can anyone help?
5 Comments
Mackyle Naidoo
on 12 Jun 2022
@Sam Chak transfer function in matlab is as follows
g = tf ([1,4],[1^2 13 42])
@star strider how do i post this as a new question ?
See Also
Categories
Find more on Pulsed Waveforms in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!