Adaptative high-gain extended Kalman filter and applications
Adaptative high-gain extended Kalman filter and applications
Adaptative high-gain extended Kalman filter and applications
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
tel-00559107, version 1 - 24 Jan 2011<br />
4.2 Simulation<br />
− the innovation, Id, is defined by the formula:<br />
� t<br />
Id(t) = �y(s) − ˆyt−d(s)� 2 ds (4.6)<br />
where<br />
t−d<br />
– y(s) is the output of the DC machine (the current),<br />
– ˆyt−d(s) =x1 (t − d, z(t − d),s) with x (t − d, z(t − d),s) is the solution of the normal<br />
form equations (4.2), (4.3), (4.4) over the time window [t − d, t], with the<br />
initial condition that x(t − d) =z(t − d), is the estimated state at time t − d.<br />
4.2.2 Implementation Considerations<br />
z(t<br />
dz/dt=<br />
dS/dt=<br />
d!/dt=<br />
u(t<br />
d delay<br />
Innovation<br />
Figure 4.2: Observer Structure.<br />
The simulation of the DC motor is straightforward. Thus, here we only comment on<br />
the implementation of the observer. The computation of a solution for the algorithm above<br />
is decomposed in two main parts (see Figure 4.2):<br />
1. the computation of the innovation, Id(t),<br />
2. the update of the estimated state, the elements of Riccati matrix <strong>and</strong> the variable θ.<br />
The latter part is common to all continuous time <strong>Kalman</strong> style observers. It presents no<br />
particular difficulties 3 , <strong>and</strong> is illustrated in Figure 4.3.<br />
In order to compute the innovation (refer to Figure 4.4) we need to:<br />
3 From theory, we know that the Riccati matrix is symmetric. Therefore we can solve the equation for only<br />
either the upper triangular part or the lower triangular part of the matrix.The introduction of this artifice has<br />
two advantages:<br />
− it saves computational time (the solution of n(n+1)<br />
equations are needed instead of n 2<br />
2 ),<br />
− because of tiny machine inaccuracies, the situation may arise when the coefficients, which are supposed<br />
to be equal, are determined to be unequal. This situation violates the symmetric requirement of the<br />
matrix <strong>and</strong> algorithm breaks down.<br />
To solve the matrix equations, the implementation of the observer requires the use of a small utility that<br />
transforms (n × n) square matrices into vectors, <strong>and</strong> vice-versa.<br />
Another device, which can be used when considering discrete-time systems, is to work directly with the square<br />
root of the Riccati matrix. This method is detailed in [43], Chapter 7.2.<br />
61<br />
y(t