How can we represent this transfer function into state space representation in MATLAB?
조회 수: 31 (최근 30일)
이전 댓글 표시
How can we represent this transfer function into state space representation in MATLAB? What are the commands that are regarding state space?
답변 (2개)
Sachin
2023년 5월 11일
Hi
I understand that you want to find a state space representation of the transfer function.
Follow these steps for a workaround:
- First, find the state space form on the transfer function using the “tf2ss” function. This output will be in the form of [A, B, C, D].
- After finding the state space form use the “canon” function to find the state space form.
[A_c, B_c, C_c, D_c] = canon(A, B, C, D, 'companion') %transform linear model into the canonical realization
Refer the below MATLAB documentation for state space Realizations:
You can refer to the following MATLAB documentation page for more information about “tf2ss”
Refer to this MATLAB page for the “canon” function
댓글 수: 0
Sam Chak
2023년 5월 11일
As far as I know, there is no MATLAB command in the Control System Toolbox for directly computing the controllable canonical form. The canon() command only convert the identified state-space model to either the modal or companion canonical form.
G = tf([1 3], [1 3 2])
sys = ss(G); % convert from TF to random SS (non-unique)
You need to write a code to get the Observable Canonical form first and then transform it to Controllable Canonical form
obsys = ss(Aa, Bb, Cc, Dd) % Observable Canonical form
%% State-space in Conventional Controllable Canonical form
A = Aa';
B = Cc';
C = Bb';
D = Dd;
ctsys = ss(A, B, C, D) % Controllable Canonical form
cttf = tf(ctsys)
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Dynamic System Models에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!