Filter löschen
Filter löschen

state-space controlability

3 Ansichten (letzte 30 Tage)
sverre Kvist
sverre Kvist am 24 Feb. 2022
Kommentiert: Star Strider am 24 Feb. 2022
hello.
i'm fairly new to MatLab and im trying calculate whether a state-space system is controllable or not and then display it in writing. the question i have is: am i doing it correclty? i've googled a bit trying to figure it out on my own, but since i have little no no experience using the software i'm not getting a definite answer.
my goal is simply to write out whether the system is controlable or not, and im unsure if i've got the syntax correct.
thanks in advance :)
System controlability.
clc, clear, close all;
A=[1 1;-4 -2;]; B=[1 -1;1 -1];
system=ss(A,B,[],[]);
co=ctrb(system)
dimensjon=isequal(A,co);
if(dimensjon==0)
disp('system is not controlable')
else
disp('system is controlable')
end
edit:
i've since updated the code:
  • think it's better, but original question still stands.
System controlability.
clc, clear, close all;
A=[1 1;4 -2]; B=[1 -1;1 -1];
system=ss(A,B,[],[]);
co=ctrb(system);
unco= length(A)-rank(co);
if(unco==0)
disp('system is controlable')
else
disp('system is not controlable')
end

Akzeptierte Antwort

Star Strider
Star Strider am 24 Feb. 2022
The example in the documentation section on Check System Controllability is the same test I usually use. It would be appropriate in your application as well.
  4 Kommentare
sverre Kvist
sverre Kvist am 24 Feb. 2022
alright. thank you very much for your assistance.
i think i've arrived at a code that works.
for Reference:
clc, clear, close all;
A=[1 1;4 -2]; B=[1 -1;1 -1];
system=ss(A,B,[],[]);
controlabilityMatrix=ctrb(A,B); %Mc=[B, AB]
unco= length(A)-rank(controlabilityMatrix);
if(unco==0)
disp('system is controlable')
else
disp('system is not controlable')
end
Star Strider
Star Strider am 24 Feb. 2022
My pleasure!
The code appears to be correct, at least wirh respect to my understanding.
If my Answer helped you solve your problem, please Accept it!
.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by