Effacer les filtres
Effacer les filtres

how can i properly place the poles of the observer. I recieved the following error.The "place" command could not place the poles at the specified locations. Probable causes in

1 vue (au cours des 30 derniers jours)
I am working on an Unknown input Observer to estimate the states and the faults of my system, I faced a problem with pole placement, i tried separating the poles since it said they might be too close ,but, it did not work.
if rank(D_aug)~=rank(C_aug*D_aug) %check the first condition of existance
disp('the UIO does not exist')
else
disp('the UIO exists')
H_e = D_aug*inv((C_aug*D_aug)'*(C_aug*D_aug))*(C_aug*D_aug)' %calculate the matrix H
T_e = eye(7)-H_e*C_aug %Calculate the matrix T
A1_e = T_e*A_aug %calculate the matrix A1
rank(obsv(A1_e,C_aug)) %check the second condition of existance
disp('the matrix is obeservable')
K1_e = place(A_aug',C_aug',[-0.03+0.03j, -0.03-0.03j,-1 , -1,-3,-3,-5])' %chose the position of poles
F_obs_e = A1_e-K1_e*C_aug %calculate the matrix F
K_e = K1_e + F_obs_e*H_e %calculate the matrix K
end
xe0 = [0.3 0.1 0.2 0 0 0 0]*1e-2; %chose the initial condition

Réponses (0)

Catégories

En savoir plus sur Predictive Maintenance Toolbox dans Help Center et File Exchange

Produits


Version

R2015a

Community Treasure Hunt

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

Start Hunting!

Translated by