Borrar filtros
Borrar filtros

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

2 visualizaciones (últimos 30 días)
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

Respuestas (0)

Categorías

Más información sobre Predictive Maintenance Toolbox en Help Center y File Exchange.

Productos


Versión

R2015a

Community Treasure Hunt

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

Start Hunting!

Translated by