Hi all, I have a question for Control system development specialists.
I compute controllability of linear system through MATLAB function ctrbf, and I know that system have 1 uncontrollable state. How to define which state is uncontrollable?
Unfortunately, you probably can't tell directly which state variable is uncontrollable from the information you have, only which mode/s.
Working in State-Space, if you were to convert your system into the modal form, then you will be able to *see* directly which mode is uncontrollable, because there will be a zero in the corresponding row in the B matrix. In this form, the modes are the state variables, but they are linear transformations of the original (physically meaningful state variables) that you started with.
In addition to Mathews reply where all eigenvalues are distinct, we consider repeated poles case. When the eigenvalues are repeated, then you have to use Jordan canonical form. Then the row of equivalent input matrix should not contain all zeros corresponding to the last row of the Jordan bloc. For further details you may refer to Modern Control Engineering by K. Ogata.
A NASC for controllability is that no single pole of the system is cancelled by a zero in all of the entries of the transfer function matrix (sI-A)^(-1)B. The system cannot be controlled in the direction of the cancelled mode.
I am trying matlab code for uncontrollable states. I entered 6x6 A matix and 6x1 B matrix randomly. but controllable matrix has a full rank. It should be rank deficient in order to find P column vector and and transformed A and B matrix.
What should i change to make controllable matrix rank deficient? I did make some changes in A and B matrix but still controllable matrix is of full rank.
Should i keep changing A and B matrix or Is there any other way
Kalman decomposition is a method to separate a model states into four groups: (Ob, Co), (NOb, Co), (Ob,NCo) and (NOb,NCo), where Ob is a set of the obserbale states, NOb is for non observable states. Similar for controlability. MATLAB functions are ctrbf and obsvf.
Hello, hope all doing well. My question to @Dejan P Jovanović. i have a problem understanding the outputs of the ctrbf function. Which one corresponds to which state is not clear. Am i missing something?