Kalman Filter Design

Nov 03 2020

Sono nuovo nel design del filtro Kalman e sto lottando per capire come applicare la metodologia del filtro Kalman al mio problema. Ho letto un documento di ricerca che sembra descrivere quello che sto cercando di farehttps://journals.sagepub.com/doi/pdf/10.5772/57516. L'articolo descrive esperimenti in cui i dati raccolti consistono in una misurazione rumorosa abbinata a una misurazione della verità. Nel documento le matrici dei filtri di Kalman sono designate come segue:

$$\boldsymbol{X}=\begin{bmatrix} b_{x} &P_{11} &P_{12} &P_{13} \end{bmatrix}^{T}$$

$$\boldsymbol{H}=\begin{bmatrix} 1 &r &0 &0\\ 1 &-r &0 &0\\ 1 &r/\sqrt{2} &r/\sqrt{2} &0\\ 1 &r/\sqrt{2} &0 &r/\sqrt{2}\\ \end{bmatrix}$$

$$\boldsymbol{\Phi} = \boldsymbol{I}_{4\times4}$$

Il vettore di stato descrive bias e stati del fattore di scala. Anche se non sono del tutto sicuro di come sia stata derivata la matrice H, non riesco a capire come il filtro verrebbe utilizzato con dati reali, ovvero la misurazione osservata sostituisce gli elementi r nella matrice H, ma la verità fondamentale che deve essere calibrata o confrontato con è un singolo valore, cioè conosciamo la velocità reale o la vera accelerazione, non conosciamo il vero bias e gli stati del fattore di scala. In che modo il filtro include questa verità fondamentale che presumo usi per aggiornare la sua stima dei termini di bias e fattore di scala. Qualcuno potrebbe far luce su come è disposto il filtro di Kalman per consentire alla stima di utilizzare questa coppia di misurazione e verità di base?

Risposte

2 Chuck Nov 03 2020 at 22:42

Le misurazioni non vengono inserite in $H$. Il$H$matrice è la "matrice di misurazione" o "matrice di output" tale da ottenere una stima dell'output quando si moltiplica$H$ dalla stima del vettore di stato $\hat{X}$. Puoi vederlo nell'equazione (23) nel documento che hai collegato, a pagina 7 del documento:

Il modello può essere espresso come segue:

$$ X_{i+1} = \Phi X_i + w_i \\ Z_{i+1} = HX_{i+1} + \epsilon_{i+1} \\ $$

L'azione del filtro di Kalman si verifica nell'equazione (25), quando il guadagno di Kalman $K_i$viene applicato all'errore di misurazione o "residuo". L'errore di misurazione è la differenza tra ciò che hai effettivamente visto, il vettore di misurazione$Z_i$e quello che ti aspettavi di vedere, ovvero la matrice di output $H_i$ volte lo stato previsto $\hat{X}_{i|i-1}$.

Il filtro di Kalman prende quel residuo modificato e lo aggiunge allo stato previsto per ottenere lo stato "corretto" o filtrato. Succede tutto come un'equazione in (25):

$$ \hat{X}_i = \hat{X}_{i|i-1} + K_i\left(Z_i - H_i\hat{X}_{i|i-1}\right) \\ $$

Dove ancora una volta il $\hat{X}_{i|i-1}$ termine significa "dato il mio stato precedente $i-1$, in che cosa dice il modello il mio stato $i$ dovrebbe essere? "Riscrivendolo dall'equazione precedente:

$$ X_{i+1} = \Phi X_i + w_i \\ $$

o

$$ X_{i|i-1} = \Phi X_{i-1} \\ $$

o

$$ X_{i|i-1} = (I + A\Delta t)X_{i-1} + B\Delta t u \\ $$

che è solo un'integrazione numerica di

$$ \dot{x} = Ax + Bu \\ $$

tale che

$$ x_i = x_{i-1} + \dot{x} \Delta t\\ x_i = x_{i-1} + (Ax_{i-1} + Bu)\Delta t \\ x_i = x_{i-1} + A\Delta t x_{i-1} + B \Delta t u\\ x_i = (I + A\Delta t) x_{i-1} + B\Delta t u \\ $$

Spero che questo abbia più senso!