J.

METGE

LAMUGUE Fanny MILON Laurent

Telecom 3A ISNC 18 Janvier 2011

ENSEIRB TP Systèmes de Drones J. Lamugue & L. Un drone est ainsi un système autonome. connecté à d’autre systèmes tels que des relais tactiques (stations sols. deux repères couramment utilisés en aéronautique vont être introduits : F. l'Est et vers le centre de la terre. Pour cette étude. L’objectif de ce TP est d’estimer l’attitude (orientation dans l’espace) d’une inertielle « low-cost » à partir des mesures de ces différents équipements. roulis. permettant au système d’estimer son orientation. de surface. notés !! . l’ajout des accéléromètres et des magnétomètres permet de borner cette dérive. de type accéléromètres. centrale ce sous attention ce type I. lacet) et éventuellement leur position. autres aéronefs pilotés.2a.Système de Drone UAS L’un des points sensible des systèmes de drone aérien. gyromètres ou encore magnétomètres. on trouve les capteurs inertiels. sous-marin ou encore aérien et le système de mise en œuvre qui lui est associé. I. !! et !! sont dirigés respectivement vers le Nord. et certaines hypothèses concernant les accélérations subies par la centrale. Les UAV son ainsi équipés de nombreux capteurs leur permettant de se géo-localiser et de déterminer avec exactitude leur position dans l’espace. On parle ainsi de UAV (Unmanned Aircraft Vehicule) et de plus en plus de UAS (Unmanned Aircraft System) dans le cas particulier des drones aériens. Pour un drone UAS. il existe de nombreux opérateurs et équipements mis en service. ce repère a été placé par rapport au repère géocentrique sur la Fig. Une particulière sera portée aux problèmes de dérive temporelle. point critique de d’équipement de mesures. Pour faciliter sa visualisation. l’utilisation d’un filtre de Kalman étendu (Extended Kalman Filter) [1] est proposée. Milon 2 . Metge On désigne par système de drone un véhicule ou robot terrestre. Parmi ceux-ci. Sous l’hypothèse de très faibles accélérations. c’est la localisation du vecteur aérien et sa capacité à évoluer de façon autonome dans son environnement. Repère local centré sur un point de la terre (ici la position de la centrale inertielle) et ses axes. Le biais des gyromètres entraine une lente dérive des angles estimés.…). Contexte Tous les aéronefs équipés de fonction d’autopilotage embarquent également des capteurs permettant d’estimer leur attitude (tangage. Figure 1 . satellites.1 • Repères de référence Repère de navigation N. Ce repère est souvent appelé repère NED (Nord East Down). Ces différentes mesures étant liées non-linéairement aux paramètres à estimer.

à le tangage (pitch) θ qui correspond à une rotation autour du nouvel axe y. Lamugue & L. à le roulis (roll) φ qui correspond à une rotation autour du nouvel axe x. les accéléromètres fournissent la mesure d'un second vecteur de référence g (en complément du vecteur magnétique m) qui apporte une information sur l'orientation de la centrale. Le passage du repère de navigation au repère du mobile est repéré en aéronautique par les angles de Tait-Bryan ou angles de Cardan (cf. ψ λ φ h θ ϕ Figure 2 . qui correspond à une rotation autour de !! . Pour cette étude. des enregistrements de courtes durées (quelques minutes) seront utilisés et le repère de navigation sera considéré comme repère inertiel. Ce capteur est suffisamment sensible pour mesurer le vecteur magnétique terrestre m.1 Mise en équation Mesures inertielles !" !" Dans le cadre de l’estimation d’attitude. On ajoute parfois aux centrales inertielles un capteur magnétique trois axes (magnétomètres). ainsi que leurs dérivées ! = ! . les paramètres à estimer à chaque instant sont les angles aéronautiques φ. II. L'ensemble des mesures F. Hypothèses. et de trois gyroscopes mesurant les vitesses angulaires. m B II. θ et ψ. Milon 3 . qui ne dérive pas au cours du temps. Metge • Repère du mobile B. != !" !" et ψ = !! !" . Ce sont les angles φ. Pour cette étude.ENSEIRB TP Systèmes de Drones J.Repères de références utilisés I. ce sont donc ces grandeurs que l'on va chercher à estimer. Ces paramètres forment le vecteur d'état ! = [!  !  ψ  !  !  ψ  ] . Ces capteurs sont disposés de manière à former un trièdre orienté selon les axes du repère du mobile B. il sera considérer que les accélérations subies par la centrale sont faibles par rapport au vecteur gravité et. Ainsi il est possible de considérer que les accéléromètres donnent une mesure de l'accélération de la gravité g bruité par le bruit des capteurs et les faibles accélérations subies par la centrale.2 La centrale inertielle La centrale inertielle est composée de trois accéléromètres. mesurant les accélérations par rapport au repère inertiel. Sous ces conditions.2b) : à le lacet (yaw) ψ. θ et ψ qui caractérisent l'orientation de la centrale dans l'espace (son attitude). Il donne alors une information sur l'orientation de la centrale qui ne dérive pas au cours du temps. de moyenne nulle. Fig. Repère lié à la structure de l'aéronef.

Gy.mat contient un enregistrement de la centrale inertielle effectué à la fréquence !! = 100  !". 5. Pour les exploiter et les afficher dans une unité compréhensible. Ces dernières ont été réalisées dans l'ordre suivant : 1. soit !! et !! . Les mesures mises à l'échelle ! sont données par la relation : ! = (!! − !! )!! [5] F. Gx. Az. 4. Mx.ENSEIRB TP Systèmes de Drones J. ! ∙ !" ! !! [4] II. 2. !! et !! sont reliées aux vitesse angulaire !. Φ ≃  θ ≃  0 et ψ ≃  −0. ! ∙ !! + !! !! [1] [2] Les vitesse angulaires mesurées par les gyromètres autour des axes !! . seul des mouvements de rotation ont été effectués. il est nécessaire de leur appliquer une transformation linéaire en utilisant les neutres et les gains trouvés lors d'une étape de calibration pour chaque capteur. 3. Sous les hypothèses simplificatrices que les accéléromètres mesurent le vecteur gravité bruité. Mz]⊤. Gz. L'ensemble des mesures est regroupé dans un vecteur !! taille 9×N. la centrale inertielle étant considérée fixe. !. Metge disponibles sont regroupées dans le vecteur de mesure z = [Ax Ay Az Gx Gy Gz Mx My Mz]⊤.53rad 3 mouvements sur le roll (φ) et retour à 0 3 mouvements sur le pitch (θ) et retour à 0 3 mouvements sur le yaw (ψ) et retour à la position initiale Mouvement sur le pitch à environ 45° puis 3 mouvements selon le yaw (ψ) et retour du pitch à 0. Les mesures sont dans l'ordre suivant : !! : . ! ∙ !! + !! !! = ! !. Soit R la matrice de rotation permettant de passer d'un vecteur exprimé dans la base N au même vecteur exprimé dans la base B. ψ)  ∙   !! .2 Informations fournies Le fichier measure. !. L'enregistrement a été effectué en laboratoire. D'autre part. Ainsi le vecteur !!  exprimé dans la base de la centrale B vaut R(φ. Lamugue & L. nous pouvons relier les mesures accélérométriques et magnétiques au vecteur d'état par les relations : !! !! !! !! !! !! !! !! = ! !. Position initiale. Ay. les vecteurs magnétiques et gravité exprimés dans le repère de navigation N (ou le repère de la centrale lorsque φ = θ = ψ = 0). ! = 0 0 0 !"#$ −!"#$ −!"#$ !"#$%&!' !"#$!"#% [3] Les mesures des gyromètres sont donc liées au vecteur d'état par la relation : !! !! !! ! !! ! ! + !! = ! !. Milon 4 . ! = [Ax. Ces mesures brutes des capteurs ne sont pas à la bonne échelle (!!"#$%&'( ). Soit !! et !! les vecteurs regroupant les gains et neutres de chaque capteurs. Toutes ces mesures sont considérées bruitées par un bruit gaussien. !  !"  ψ   via la matrice Q : 1 ! !. θ. My.

Il fournit une estimation optimale au sens où elle minimise l'erreur quadratique moyenne. ! !! pour les accélérations. • L'équation de mesure ou d'observation : ! ! = ℎ(! ! . !(!) Avec ! ! le vecteur de mesure à l'instant !. Il est donc proposé d'utiliser ici un filtre de Kalman étendu. et !(!) le bruit de mesure. les matrices de transition et d'observations doivent être calculées à chaque itération afin de linéariser le problème. Les vecteurs de référence !! et !! à utiliser sont : 0 0. • L'équation d'état (utilisée pour la prédiction) : ! ! + 1 =  !(! ! .81 [8][9] II.131 0. Le problème peut être formulé mathématiquement par deux équations. le modèle de mesure est non-linéaire.! F.071 !! = ∙ 10!! [6][7] Les mesures obtenues sont alors en !. ! !! pour les vitesses angulaires et en ! (Tesla) pour la mesure du champ magnétique. Metge Les vecteurs de neutres et de gains trouvés lors de la calibration sont : 43 −412 −737 19 −105        !"        !! = 615 −28 20 1 2477 2444 2486 230 230 230 0. Milon 5 . Il s'agit des matrices Jacobiennes des deux fonctions ! et ℎ : != != !" !" ! ! ! . en !"#.! [11] [12] [13] !ℎ !" ! !!! ! . Lamugue & L.3 Filtre de Kalman étendu (EKF) Le filtre de Kalman est notamment utilisé pour estimer un ensemble de paramètres inconnus à partir d'un jeu d'observations bruitées et d'un modèle d'évolution du système. Ce dernier implique de linéariser les modèles d'état et de mesure autour de l'état courant.43095 9. or pour cette étude. !(!) [10] Avec !(!) le vecteur d'état à l'instant ! (vecteur des paramètres à estimer).108 0.ENSEIRB TP Systèmes de Drones J. Les fonctions ! et ℎ étant non-linéaires. Le filtre de Kalman se base sur un modèle d'état et un modèle de mesure linéaire.25354 !! =          !"          !! = 0 0 0. et !(!) le bruit d'état (de prédiction).

contenues dans le fichier measures. on note que toutes les rotations sont parfaitement identifiables. III. Ce changement de repère est exprimé par la matrice de rotation !. gyromètres. On remarque notamment les accélérations induites par les rotations autour des axes Y et X. permettant de passer d’un vecteur exprimé dans la base ! à un vecteur exprimé dans la base !. vont être exploitées afin de retrouver les mouvements appliqués. Metge Les matrices de covariance ! et ! associées respectivement aux bruits ! et ! seront également nécessaires. Cette matrice de rotation peut être exprimée à partir des matrices de rotation élémentaires autour des axes !! . Les mesures mises à l’échelle sont présentées en Fig. Pour la suite du TP. Application Maintenant qu’une partie du contexte et de la théorie ont été détaillées. III. magnétomètres) mises à échelle Il est alors possible d’observer les différentes accélérations qui ont été appliquées à la centrale. Milon 6 . Figure 3 . les données issues de la centrale inertielle « low-cost ».ENSEIRB TP Systèmes de Drones J. correspondant respectivement aux mouvements sur le roll et sur le picth.3. Du point de vue des gyromètres maintenant.Mesures inertielles (accéléromètres. rappelées ci-dessous : 1 !! = 0 0 0 !"#$ !"#$ 0 !"#! −!"#$        !! = 0 !"#$ −!"#$ 0 1 0 !"#$ !"#$ 0        !! = !"#$ !"#$ 0 −!"#$ !"#$ 0 0 0 1 [14] F.1 Données Les données brutes contenues dans le fichier n’étant pas à la bonne échelle. les différents mouvements sont visibles sur les mesures issues des magnétomètres. On constate également que le mouvement sur le yaw n’est quasiment pas perceptible.mat. !! et !! . la transformation linéaire [5] a été appliquée. Changement de repère. De même. il est nécessaire de pouvoir exprimer le changement de repère entre le repère de navigation ! et le repère du mobile !. Le mouvement de lacet n’induit en effet aucune accélération. Lamugue & L.

L’équation d’observation est la suivante : ! = ℎ ! ! . vphi. Milon 7 .w_av. !! = ! ∙ !! + !! !!!! = !! + !! ∙ !! + !! !!!! = !! + !! ∙ !! + !! !!!! = !! + !! ∙ !! + !! !!!! = !! + !! !!!! = !! + !! !!!! = !! + !! [16] [17] L’équation [16] est valable dans le cas d’un filtre de Kalman classique.. Cette fonction prend en effet en paramètre des variables non-linéaires.. on considèrera ici que l’accélération angulaire est nulle. . x=F*x_av+w_av.. Metge La matrice de rotation ! s’exprime de la façon suivante : ! = !! ∙ !! ∙ !! [15] III. l’approche est différente. teta. On a donc la matrice de transition F : 1 0 0 !! 0 0 0 1 0 0 !! 0 0 0 1 0 0 !! !=                 [18] 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 Le code Matlab ci-dessous donne l’implémentation de la fonction !  : f.. !! = ! ∙ ! ! + !! [19] F. 0 0 1 0 0 Te. Fonction d’état !. vteta. 0 1 0 0 Te 0. il est possible de caractériser les paramètres du vecteur d’état à l’instant ! + 1 de la façon suivante : !!!! = ! !! .. ..m function [x. Il est donc nécessaire. Compte-tenu de cette hypothèse. % x=[phi.ENSEIRB TP Systèmes de Drones J. de calculer la matrice d’observation H à chaque itération au travers de la matrice Jacobienne de ℎ. Ainsi. l’implémentation a proprement parlé du filtre de Kalman étendu peut-être réalisée. end Fonction d’observation !.2 Filtre de Kalman étendu (EKF) Les différentes données du problème étant à présent en place.3. psi. 0 0 0 0 0 1]. . vpsi] F=[1 0 0 Te 0 0. les angles évoluent à la vitesse angulaire estimée. Dans le cas de la fonction ℎ. .. 0 0 0 1 0 0.. 0 0 0 0 1 0.. fe) Te=1/fe. comme détaillé en partie II.F]=f(x_av. Cette équation reste valable ici car la fonction f est linéaire. . Lamugue & L. Pour l’évolution du vecteur d’état..

deriveeR.ENSEIRB TP Systèmes de Drones J. Cela donne : !ℎ(1) !" !ℎ(2) !" ⋮ ⋮ !ℎ(5) !" !ℎ(6) !" !ℎ(1) !" !ℎ(1) !" ⋯           !ℎ(1) !! ⋯ !ℎ(1) !! !ℎ(1) !! !ℎ(2) !! ⋮         ⋮ !ℎ(5) !ℎ(6) !! !! !ℎ(6) !! [22] != ⋯ !ℎ(6) !" !ℎ(6) !"           ⋯ !ℎ(6) !! Afin de calculer cette matrice Jacobienne. -cos(-angle) sin(-angle) 0. Metge != !! !! !! !! !! !! !! !! !! =    ! ∙ !! + !(1: 3) ! = ! ! + !(4: 6) ! =  ! ∙ !! + !(7: 9) [20] Avec : 1 != 0 0 0 !"#$ −!"#$ −!"#$ !"#$%&!'         !"#$!"#% [21] On cherche maintenant à calculer la matrice Jacobienne de ℎ.'y')==1) if (strcmp(type_angle. else dR=zeros(3.'teta')==1) dR=[sin(-angle) 0 -cos(-angle).'phi')==1) dR=[0 0 0.type_angle.3). La matrice Jacobienne est la matrice des dérivées partielles du premier ordre de ℎ. else dR=zeros(3.'psi')==1) dR=[sin(-angle) cos(-angle) 0. Elle prend en paramètre un axe et un angle et retourne la dérivée de la matrice de rotation associée : !! . 0 0 0.3).m function [dR]=deriveeR(axe. angle) if (strcmp(axe. end else if (strcmp(type_angle. cos(-angle) 0 sin(-angle)]. 0 0 0].0 sin(-angle) cos(-angle). 0 -cos(-angle) sin(-angle)]. !! ou  !! . Lamugue & L.'x')==1) if (strcmp(type_angle. Milon 8 . end end F. une fonction deriveeR a été implémentée. else dR=zeros(3.3). end elseif (strcmp(axe.

ENSEIRB TP Systèmes de Drones J. psi=x_av(3). !! celle des mesures du gyromètre et !! celle des mesures du magnétomètre.1). 1.psi).1) . 0 0 -sin(phi)*sin(teta). 0 -sin(phi) cos(phi)*cos(teta). En parallèle de ces opérations de calcul de la matrice H.'psi'. accelero) %----% parametres phi=x_av(1). Rx=[1 0 0. dQphi=[0 0 0. F.1). 0].teta). dQteta*x_av(4:6). 0 -cos(phi) -sin(phi)*cos(teta)]. Q*[0.H]=h(x_av. Le code cidessous réalise les différentes opérations détaillées jusqu’ici. v_av. R=Rx*Ry*Rz.'teta'. end Hg=[dQphi*x_av(4:6). zeros(3. else Ha=[]. des gyromètres et des magnétomètres. dRy=deriveeR('y'. 0 sin(-phi) cos(-phi)]. Q=[1 0 -sin(teta). -sin(-teta) 0 cos(-teta)]. 1]]. m0. On obtient ainsi la matrice d’observation H : !! ! = !!         [26] !! On a bien une matrice de taille 9x6. Metge Il est à présent possible de calculer la matrice d’observation H.phi). zeros(3. %----% derivées dRx=deriveeR('x'. !!   On effectue encore une fois cette étape de façon matricielle : !! = ! ∙ !! + !! (1: 3) !! = ! ∙ !! (4: 6) + !! (4: 6) !! = ! ∙ !! + !! (7: 9) [27] [28] [29] [30] De la même façon que pour la matrice H. Q*[0. dQteta=[0 0 -cos(teta). 0 1 0. sin(-psi) cos(-psi) 0. teta=x_av(2). Rz=[cos(-psi) -sin(-psi) 0. les trois éléments précédemment calculés correspondent aux mesures des accéléromètres.1)]. g0. 0]. 0 0 -cos(phi)*sin(teta)]. 0 0 1]. Rx*Ry*dRz*g0. dRz=deriveeR('z'. 0 cos(phi) sin(phi)*cos(teta). 0 -sin(phi) cos(phi)*cos(teta)]. Lamugue & L. on obtient bien le vecteur de mesure !!!! .magneto. 0 cos(-phi) -sin(-phi). Rx*dRy*Rz*g0. Q*[1.m function [z. zeros(3. Milon 9 .'phi'. 0. elle s’exprime de la façon suivante : 0 !! ∙ !! ∙ !"! ∙ !!          0 0 0 1 0 0 !" !" !! = ∙ !! (4: 6) ∙ !! (4: 6) 0          ! ∙ 0 ! ∙ 1 ! ∙ 0 !" !" 0 0 0 1 0 !! = !!! ∙ !! ∙ !! ∙ !! !! ∙ !"! ∙ !! ∙ !! !! ∙ !! ∙ !"! ∙ !!          0 0 !! = !!! ∙ !! ∙ !! ∙ !! !! ∙ !"! ∙ !! ∙ !! 0 0 0         0 0 0 0 0         0 0 0         0 [23] [24] [25] Avec !! la matrice Jacobienne correspondant aux mesures issues de l’accéléromètre. il est également nécessaire de calculer le résultat de la relation [16] : ! = ℎ !! . En concaténant ces trois résultats. %----% calcul de H if accelero==1 Ha=[dRx*Ry*Rz*g0. zeros(3. h. 0. Ry=[cos(-teta) 0 sin(-teta). Matriciellement.

Cette fonctionnalité sera utilisée par la suite afin d’observer l’impact des différents jeux de mesures. gyromètres et magnétomètres.4. Si les variables accelero et magneto valent 1.zg. else za=[]. Metge if magneto==1 Hm=[dRx*Ry*Rz*m0. Lamugue & L. end H=[Ha.1)]. [19] [19] [19] [19] [19] [19] [19] ! ! + 1 = ! ! + 1 − ℎ(!(! + 1 !). Toutes les données nécessaires à l’implémentation du filtre de Kalman étendu sont donc maintenant disponibles. alors le capteur en question est pris en compte dans les mesures.1). zeros(3. end z=[za.0) ! ! + 1 ! = ! ! ∙ ! ! ! ∙ !! ! + ! Innovation. Le gyromètre est pour sa part toujours utilisé.3 Mise en œuvre du filtre EKF L’algorithme du Kalman étendu peut maintenant être mis en place.ENSEIRB TP Systèmes de Drones J. après initialisation des paramètres !(0) et !(0). Rx*Ry*dRz*m0. Dans le cas contraires. Il s’applique de manière récursive. ! ! = ! ! ∙ ! ! + 1 ! ∙ !! ! + ! ! ! + 1 = ! ! + 1 ! ∙ ! ! ! ∙ ! !! (!) ! ! + 1 ! + 1 = ! ! + 1 ! + !(! + 1) ∙ ! ! + 1 ! !+1 !+1 = !−! !+1 ∙! ! ∙! !+1 ! Filtrage. zeros(3. !(! + 1 !) = !(!(! !). else Hm=[]. else zm=[]. Hg. zeros(3. Ce filtre de Kalman étendu permet donc d’estimer les angles !. !  !"  ψ  . end zg=Q*x_av(4:6). Les estimations obtenues après applications du filtre de Kalman étendu sont présentées en Fig.0) Calcul du gain.zm]. end A noter que cette fonction h prend en paramètres différentes valeurs telles que pour l’accéléromètre ou le magnétomètre. Milon 10 . via les étapes suivantes : Prédiction.1). F. !  !"  ψ   ainsi que les vitesses angulaires associées !. Rx*dRy*Rz*m0. if magneto==1 zm=R*m0+v_av(7:9). le filtre de Kalman n’est appliqué que sur un ou deux des trois capteurs disponibles. %-----% calcul de h if accelero==1 za=R*g0+v_av(1:3). Hm]. III. Accéléromètres.

A présent. En premier. Les différents mouvements appliqués à la centrale inertielle sont parfaitement reconnaissables.5 sont les mêmes que précédemment. on a les trois mouvements sur le roll (angle !). on constate que les mesures concernant le yaw sont à présent erronées. Metge Figure 4 . Gyromètres et Magnétomètres On constate que l’on retrouve bien les différents mouvements qui ont été appliqués à la centrale inertielle. qui elle ne change F. on ne perd pas d’information sur le cap car ce dernier est recalé grâce à la gravité. pendant lesquelles trois mouvements sur le yaw ont été appliqués.Angles et vitesses angulaires estimés par le filtre EKF : Accéléromètres. Seules les mesures des accéléromètres et des gyromètres seront utilisées par le filtre de Kalman étendu pour l’estimation des angles. Le résultat est le suivant : Figure 5 . avec chacune trois périodes de rotation. Elles sont en effet décalées. Lamugue & L. Les mesures des vitesses angulaires permettent de vérifier ces mouvements. Milon 11 . Accéléromètres et gyromètres. Si l’on enlève les mesures magnétiques. ensuite les trois sur le pitch (angle !) puis ceux sur le yaw (angle !) et enfin un mouvement constant sur le pitch de plusieurs secondes.Angles et vitesses angulaires estimées par le filtre EKF : Accéléromètres et Gyromètres Les observations faites à partir des résultats de la Fig. Toutefois.ENSEIRB TP Systèmes de Drones J. les données issues des magnétomètres ne seront pas prises en compte.

il l’est en revanche pour le gyromètre et le magnétomètre.6. l’utilisation du filtre de Kalman n’est plus justifiée car il s’agit simplement d’un problème de calibration des gyromètres. Cela se retrouve au niveau des dérivées avec des vitesses angulaires estimées erronées. Etant donné que la seule conséquence est un écart. Il en ressort que l’augmentation de l’un ou l’autre de ces deux bruits peut avoir des conséquences sur les estimations du filtre. une augmentation du bruit d’état W au niveau des angles entraine une importante oscillation de l’estimateur (Fig. bien qu’il y ait d’importants écarts à l’origine. Milon 12 . Figure 6 .7b). Ainsi. Modification des bruits d’état et de mesure. la dérive sera légèrement contenue au départ mais reste inévitable. seuls les gyromètres vont être utilisés. précédemment).Angles et vitesses angulaires estimées par le filtre EKF : Uniquement Gyromètres Dans ce dernier cas (Fig. la dérive devient très importante et toutes les estimations sont faussées. Si ces derniers sont correctement calibrés. Pour cette dernière expérience. Ainsi. Les premiers mouvements sont relativement bien estimés. une augmentation du bruit de mesure des gyromètres peut perturber les estimations (Fig. F. Le résultat des estimations angulaires et de leurs dérivées dans ce cas est présenté en Fig. Après avoir constaté l’influence des différents capteurs sur les estimations. Gyromètres. on observe une dérive totale de la plupart des mesures. En ce qui concerne le bruit de mesure. ce qui est le rôle des magnétomètres. Lamugue & L. Dans ce dernier cas. les écart-types associés aux différents bruits ont été modifiés afin de voir leur influence sur l’efficacité du filtre de Kalman. Metge jamais. On constate également que les mesures des vitesses angulaires ne sont pas affectées par l’absence des magnétomètres. L’impact sur les vitesses angulaires est plus modéré. à partir du troisième mouvement.6). A noter également qu’un trop fort bruit sur les magnétomètres rend les mesures inutilisables et les résultats sont alors les mêmes qu’en l’absence de magnétomètres (cf. cela n’a effectivement pas d’impact sur la dérivée des angles.7a). L’axe Z dérive cependant car elle n’est pas correctement recalée. Tous les angles vont lentement dériver car ils ne seront plus recalés par des mesures annexes telles que celles des accéléromètres ou des magnétomètres. si son impact sur l’accéléromètre n’est pas très visible.ENSEIRB TP Systèmes de Drones J. En revanche.

malgré un recalage constant des différents capteurs entre eux. F. Références [1] Welch G. 2006. Il nous a également était possible de constater l’apport des deux autres catégories de capteurs : les accéléromètres et les magnétomètres. L’ajout des informations provenant de systèmes de positionnement par satellites permet de régulièrement recalé l’ensemble des capteurs de la centrale inertielle en cas de dérive trop importante. les systèmes de navigation inertiels (INS) sont couplés à des systèmes GPS (Global Positioning System). et selon l’utilisation souhaitée du système inertiel. une centrale inertielle est donc capable. il ressort que le biais des gyromètres entraine une lente mais importante dérive des angles estimés. L’utilisation de ce seul capteur s’avère donc insuffisante au sein d’une centrale inertielle supposée estimer avec précision une trajectoire.ENSEIRB TP Systèmes de Drones J. Il apparaît ainsi que le bon fonctionnement d’une centrale inertielle repose sur un calibrage précis des différents capteurs inertiels et également sur une minimisation des bruits de mesures. une légère dérive de l’ensemble du système reste inévitable dans le cadre d’utilisation longue durée. Ces derniers permettent en effet de recaler en permanence les mesures issues des gyromètres et ainsi de grandement améliorer la précision de la centrale inertielle. « An introduction to the Kalman Filter ». C’est pourquoi. A l’issue de ces manipulations. de part l’estimation des données à l’aide d’un filtre de Kalman étendu. Milon 13 . V. d’estimer avec plus ou moins de précision la trajectoire suivie par un objet en mouvement. l’utilisateur peut-être amené à prendre en compte davantage une catégorie de capteur (gyromètres) par rapport aux autres. Bishop G. Ainsi équipée. Conclusion L’objectif de ce TP était de se confronter à des problématiques d’estimation de données issues d’une centrale inertielle « low-cost » par filtrage de Kalman étendu. Toutefois. Dans la mesure où ces bruits sont inévitables. L’importance du bon calibrage des différents capteurs ainsi que des bruit d’état et de mesure ont également été observés.Angles et vitesses angulaires estimées par le filtre EKF : (a) bruits d'état et (b) de mesures accentués IV. Lamugue & L. lorsque cela est nécessaire et/ou possible. Metge Figure 7 .

Sign up to vote on this title
UsefulNot useful