Académique Documents
Professionnel Documents
Culture Documents
Visitez
Université technique d'État www.DeepL.com/pro
de Moscou pour en
N.E. Bauman Université savoir plus.
technique d'État de Moscou N.E. Bauman
Département des systèmes de contrôle automatique
où
vecteur estimé , dérivé des mesures effectuées jusqu'à
et y compris ;
- estimation actualisée basée sur des mesures jusqu'à et y compris
En supposant que
Q=1 ; R=1 ;
Filtre de Kalman
u ye
kalmf
, yv
Fig.1
Pour voir comment le filtre fonctionne, vous devez générer les signaux
d'entrée et le bruit et comparer la sortie de l'objet y avec la sortie du filtre ye .
Vous pouvez générer chaque réaction séparément ou les générer ensemble.
Pour simuler des réactions séparées, utilisez la fonction lsim pour simuler
d'abord uniquement l'objet, puis la combinaison de l'objet et du filtre.
La simulation de l'articulation est expliquée dans l'organigramme (figure
2).
ye
y yv Filtre
u Objet Kalman
y
w
v P
yv
u
Filtre
Kalman ye
yv
Fig.3
sys=parallel(P,kalmf,1,1,[],[]) ;
ans =
'w'
'v'
'u'
SimModel.outputname
ans =
'y'
"y_e
Le comportement du filtre de Kalman peut maintenant être simulé.
Générons le signal d'entrée et les vecteurs de bruit w, v :
t=[0:100]' ;
u=sin(t/5) ;
n=longueur(t)
randn('seed',0)
w=sqrt(Q)*randn(longueur(t),1) ;
v=sqrt(R)*randn(longueur(t),1) ;
y=out( :,1) ;
ye=out( :,2) ;
yv=y+v ;
2
Выход
-2
-4
0 20 40 60 80 100
Количество измерений
4
2
Ошибка
-2
-4
0 20 40 60 80 100
Количество измерений
Выход
0
-2
-4
0 20 40 60 80 100
Количество измерений
4
2
Ошибка
-2
-4
0 20 40 60 80 100
Количество измерений
Fig.4
où
une estimation du vecteur x [n] obtenue à partir de mesures
jusqu'à et y comprisv [n-1] ;
estimation actualisée dérivée des mesures jusqu'à et y comprisv
[n] ;
noter que la mise à jour du vecteur d'état x [n|.] et des matrices de covariance
P [n|.] doit être effectuée à chaque étape.
randn('seed',0)
w=sqrt(Q)*randn(n, 1) ;
v=sqrt(R)*randn(n, 1) ;
sys=ss(A,B,C,0,-1) ;
y=lsim(sys,u+w) ;
yv=y+v ;
Q=1 ; R=1 ;
subplot(211),plot(t,y,'--',t,ye,'-'),
xlabel('Nombre de mesures'),ylabel('Résultat')
Выход
0
-2
-4
0 20 40 60 80 100
Количество измерений
4
2
Ошибка
-2
-4
0 20 40 60 80 100
Количество измерений
Figure 5
Le premier graphique de la figure 5 montre la sortie de l'objet (ligne
pointillée) et la sortie du filtre (ligne pleine) ; le deuxième graphique montre
l'erreur de mesure (ligne pointillée) et l'erreur d'estimation (ligne pleine).
L'algorithme du filtre de Kalman non stationnaire nous permet
également d'estimer à chaque étape l'écart type de l'erreur d'estimation
errcov :
plot(t(1:21), errcov(1:21)), ylabel('Ecart-type d'erreur'), grid on
2
Выход
-2
-4
0 20 40 60 80 100
Количество измерений
Стандартное отклонение ошибки
0.5
0.4
0.3
0.2
0.1
0 5 10 15 20
Fig.6
Il est facile de voir sur ce graphique que l'écart type en régime
permanent est atteint en cinq étapes environ, après quoi les caractéristiques
des filtres non stationnaires et stationnaires coïncident.
Estimons la valeur de l'écart-type à partir des données expérimentales :
EstErr=y-ye ;
EstErrCov=somme(EstErr.*EstErr)/longueur(EstErr)
EstErrCov= 0.2718
Cette valeur est inférieure à la valeur théorique d'errcov et est proche de
l'estimation pour le filtre stationnaire.
Enfin, notons que la dernière valeur de la matrice M[n] et la valeur
réglée de la matrice des coefficients actualisés M coïncident :
Travaux pratiques
1. d'explorer les possibilités du fichier de démonstration kalmdemo.m avec des
exemples de filtres Kalman stationnaires et non stationnaires.
2. Concevez un filtre de Kalman pour un système dont la fonction de transfert
W(s)= K/(T s22 +2xTs+1) lorsque l'entrée est soumise à une action de contrôle et à
une perturbation , si les mesures de sortie sont effectuées avec une erreur . Les
signaux aléatoires et sont des bruits "blancs" d'intensité Q et R, respectivement. Les
valeurs de K, T, x, Q et R peuvent être obtenues à partir du professeur (par exemple,
pour sys=tf(ss([-1 -6.25;16 0],[2 0;0],[0 3.125],0)) la fonction de transfert
100
W(s)= ----------------,
s^2 + s + 100
c'est-à-dire K=1, T=0,1c, =0,05, et matrices Q=1, R=0,01).
3. Tracez la valeur exacte du signal de sortie et son estimation , les tracés
d'erreur de l'estimation du vecteur d'état - , les tracés du signal du capteur et son
estimation , et les tracés d'erreur de mesure - et l'erreur d'estimation - .
4. Tirer des conclusions et démontrer les résultats à l'enseignant.
Formatage du rapport
Le rapport de laboratoire doit contenir :
1. Les équations et un schéma structurel du système en question.
2. Résultats de la simulation du dispositif d'observation.
3. Conclusions des travaux.
Questions :
1. Énoncé du problème de conception du filtre de Kalman.
2. Quels problèmes de calcul se posent lors de la résolution du problème de la
recherche d'un filtre de Kalman ?
3. Comment la précision de l'estimation peut-elle être améliorée en utilisant un
filtre de Kalman ?
4. Pourquoi un filtre exige-t-il que le système soit observable pour fonctionner ?
5. Formuler les conditions d'observabilité du système étudié.
6. Quelle fonction Matlab peut être utilisée pour générer la matrice
d'observabilité de l'objet de contrôle ?
8. Comment synthétiser un filtre de Kalman pour un objet de contrôle discret ?
9. Comment peut-on synthétiser un filtre de Kalman non stationnaire à l'aide de
Matlab ?