Problem with kalman function for LQG
12 views (last 30 days)
Show older comments
I am trying to implement and LQG regulator, but for some reason I get an error related to the "kalman" function. A snippet of my code is as follows:
sys=ss(A_ae_control,[B_ae_control(:,1) B_ae_control(:,2)],C_ae_control,0);
Qn=0.7;
Rn=0.01*eye(size(A_ae_control,1));
kest=kalman(sys,Qn,Rn);
The variable B_ae_control has 2 columns, with the first column corresponding to the control input and the second column corresponding to the random noise input. The code seems to run when I set Qn to be a 2x2 matrix, but I don't see why this should be the case since I have only one noise input. I get the following error message when I run the above code:
The "kalman" command could not compute a convergent Kalman estimator for this plant model and
covariance data. To remedy the problem:
1. Make sure that all unstable poles of A are observable through C (use MINREAL to check)
2. Modify the weights QN and RN to make [G 0;H I]*[Qn Nn;Nn' Rn]*[G 0;H I]' positive definite (use EIG
to check positivity)
I have tried checking the observability and controllability of the system but I am not sure what else to do. Any insight would be appreciated!
11 Comments
William Alberg
on 20 May 2020
I installed matlab 2017a, and i can't make it work either.
I also tried the lqe, care and icare commands, but they all seem to hit the same problem.
Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!