LQR design: state space feedback
60 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Declan
il 13 Feb 2012
Commentato: nadin geies ahmed geies
il 11 Dic 2017
Hi everyone,
I'm trying to design an lqr controller for a linear state space model. I have found my feedback gain matrix k: my problem is how to get the states 'x' from the state space model output for the equation:
u=-kx
I have read the matlab help on State Estimator Design but could not apply this to my problem. I found 'L' and created a second state-space model like in the help file with equations:
[x.] = [A-BK BK][x] [e.] = [0 A_LC][e]
e=x-estimatedX
Does this output not show the difference between the actual state 'x' and the estimated state?
When entering this into simulink, an error occurred saying invalid parameter for C... When B was changed, C would be accepted as 0.
I also read about the function augstate but do not understand how to retrieve the 'x' states from this new system either.
Any help on how to obtain the states 'x' from the state space model output would be greatly appreciated!
Thanks, Declan
0 Commenti
Risposta accettata
Arkadiy Turevskiy
il 13 Feb 2012
Modificato: Arkadiy Turevskiy
il 11 Giu 2014
If I understand correctly, you are trying to simulate your LQR controller in Simulink. LQR controller uses full state vector x for feedback, so to get x, use state-space block, and set C to be a unity matrx and D to be zero.
If you already have your A matrix defined in a variable a, you can do this like that:
>>c=eye(size(a));
>>d=zeros(size(a))
Now if you use State-Space block in Simulink and specify a,b,c,d (where c and d are created as shown above), the output of this block is your state x.
In real-life implementation LQR assumes that you are actually measuring x and using it in feedback control. If you cannot measure x, but can only measure some outputs (y), then you need to design an estimator and use LQG control.
This doc page might help:
HTH.
Arkadiy
2 Commenti
Più risposte (1)
Vedere anche
Prodotti
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!