- Extract state-space data from the model using the IDSSDATA command, [A,B,C,D,K] = idssdata(SYS)
- In the Kalman filter block, check the "Use G and H matrices" checkbox.
- In the Kalman filter block, set A, B, C, D matrices. Also set Q = SYS.NoiseVariance, R = N = 0. Also set G = K and H = eye(ny), where ny = size(C,1).
Connecting a model to a Kalman filter or extended Kalman filter
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Learning
am 5 Nov. 2022
Kommentiert: Rajiv Singh
am 30 Mai 2023
Hi, how do I connect a model, e.g a polynomial model identified from system identification toolbox to a Kalman filter in Simulink? What are the statetransitionfcn and the measurementfcn? Any example? Thank you!
0 Kommentare
Akzeptierte Antwort
Rajiv Singh
am 7 Nov. 2022
Suppose your starting point is a linear model, SYS, identified using an offline identification routine such as TFEST, SSEST, ARMAX, etc. Follow these steps:
If you are using the identified linear model is an Extended Kalman Filter, Unscented Kalman Filter or a Particle Filter block:
Create a MATLAB function file that returns the state update x(t+1) as a function of the current state x(t) and input u(t) as follows:
%-------------------------------
function dx = stateFcn(x,u,A,B)
% state transition fcn
dx = A*x + B*u;
end
%-------------------------------
Similarly, write a function that returns the output as a function of the current state and input values:
%-------------------------------
function y = measurementFcn(x,u,C,D)
% measurement function
y = C*x + D*u;
end
%-------------------------------
In the block, set the state transition function to stateFcn, and the measurement function to measurementFcn. Make sure these functions are on MATLAB path.
2 Kommentare
Rajiv Singh
am 30 Mai 2023
Please see the following examples (in R2023a release of MATLAB):
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu State-Space Control Design and Estimation finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!