Mémoire Pid
Mémoire Pid
Mémoire Pid
POPULAIRE
MINISTERE DE L’ENSEIGNEMENT SUPERIEUR ET DE LA
RECHERCHE SCIENTIFIQUE
UNIVERSITE SAAD DAHLEB BLIDA 1
Thème
Contribution au développement d’un estimateur d’état d’un
vecteur aérien avec application sur la commande d’un système
Quadrotor
IAES
2021 - 2022
I
Résumé
Le travail présenté s’inscrit dans le cadre de la navigation inertielle et la commande
des systèmes volants. En effet, il s’agit de concevoir un estimateur d’état d’un
vecteur aérien (les angles d’Euler et les coordonnées cartésiennes) en utilisant les
données issues des capteurs disponibles (Gyromètres, accéléromètres,
magnétomètres et récepteur GPS). L’estimation de l’état est faite en s’appuyant sur
la technique de fusion des données utilisant le Filtre complémentaire. Ce travail est
divisé deux parties, une partie de simulation sous Matlab-Simulink de l’estimateur
d’état et de la commande d’un Quadrotor, suivie par une partie expérimentale, i.e.,
implémentation sous la carte Arduino-UNO en utilisant des capteurs physiques
(MPU6050, HMC5883).
ملخص
يتضمن هذا العمل القيام،يندرج العمل المقدم في هذه الوثيقة ضمن إطار المالحة بالقصور الذاتي والتحكم في أنظمة الطيران
المستشعرات.بتصميم محاكاة وتنفيذ تجريبي لخوارزمية مستشعر لحالة نظام الطيران بتمثيل زوايا أولر واالحداثيات الجغرافية
ثالثة مقاييس للسرعة الزاوية وثالثة مقاييس للحقل المغناطيسي ومستقبل نظام،المستخدمة لتنفيذ الع مل هي ثالثة مقاييس تسارع
.GPS تحديد المواقع العالمي
هذا العمل ينقسم الى محاكاة المستشعر ونظام.)تقدير الحالة لنظام الطيران قيد الدراسة يعتمد على تقنية دمج البيانات (مرشح إضافي
Arduino متبوع بتنفيذ تجريبي للمستشعر المدروس خالل هذه الوثيقة على لوحةSimulink R2020a التحكم على برنامج
.(MPU6050, HMC5883). باستعمال المستشعرات الفيزيائية المتوفرةUno
Abstract
The present work falls within the framework of inertial navigation and the control of
flying systems. Indeed, it is a question of designing a state estimator of an aerial
vector (the Euler angles and the Cartesian coordinates) by using the data resulting
from the available sensors (Gyrometers, accelerometers, magnetometers and GPS
receiver). The estimation of the state is made based on the data fusion technique
using the Complementary filter. This work is divided into two parts, a simulation part
under Matlab-Simulink of the state estimator and the state control of a Qudarotor,
followed by an experimental implementation part, i.e., under the Arduino-UNO board
using the physical sensors (MPU6050, HMC5883).
II
V. Annexe 01 : .................................................................................................... 67
Définition : ............................................................................................................. 67
Caractéristiques du WGN : ................................................................................... 67
Conclusion ............................................................................................................ 68
Bibliographie ............................................................................................................ 69
V
g : l’accélération gravitationnelle
𝑉 : vitesse linéaire
z𝑑 : L’altitude désirée.
𝜑 : Angle de roulis.
𝜃 : Angle de tangage
𝜓 : Angle de lacet
Introduction Générale
2
Chapitre01 : Généralité sur la navigation
Introduction générale
La navigation n’est pas réservée qu’aux avions mais aussi aux drones qui
sont mise au sien des autopilotes, qui se caractérise par plusieurs boucles
notant : boucles de navigation, de guidage et de stabilisation. Ces dernières
sont appelées les modes de contrôle.
On définit le plan de vol d’un robot aérien par la description de ces tâches
aux points de passage afin de réaliser le suivi de trajectoire en fonction des
états instantanés du système : position, altitude et cap.
Avec:
𝑞1 2 + 𝑞2 2 + 𝑞3 ² + 𝑞4 ² = 1 I-3
7
Chapitre01 : Généralité sur la navigation
Avec 𝑞0 , 𝑞1 , 𝑞2 , 𝑒𝑡 𝑞3 son des nombre réels et 𝑖, 𝑗, 𝑘 son des coefficients imaginaires
satisfaisant les conditions :
𝑖 2 = 𝑗 2 = 𝑘 2 = −1 I-4
𝑖𝑗 = −𝑗𝑖 = 𝑘 I-5
𝑖𝑘 = −𝑘𝑖 = 𝑗 I-6
𝑘𝑗 = −𝑗𝑘 = 𝑖 I-7
𝑅1 Une rotation ∈ [−π , π] se fait autour de l’axe 𝑍𝑁 par angle de lacet (Yaw
angle).
𝜋 𝜋
𝑅2 Une rotation ∈ [− 2 , 2 ] se fait autour du nouvel l’axe 𝑌𝑁 (après avoir effectué la
rotation autour de 𝑍𝑁 ) par angle de tangage (Pitch angle).
La matrice de
rotation ne
comporte pas de
fonctions
trigonométriques. Six paramètres
Absence de redondants.
Matrice de
𝑅𝑎𝑏 singularité Neuf paramètres à
rotation
géométrique. estimer.
L’équation associée
à la matrice de
rotation est linéaire.
Quatre paramètres
Les angles d’Euler
à estimer.
ne sont pas
Pas de fonctions
directement
trigonométriques.
disponibles.
Absence de
La matrice de
Quaternions q singularité
transformation n’est
géométrique.
pas directement
Un seul paramètre
disponible.
redondant.
9
Chapitre01 : Généralité sur la navigation
Le positionnement d’un robot(UAV) est basé sur les informations issues des
nombreux capteurs des systèmes embarqués, on note :
a. Les accéléromètres :
L’accéléromètre est un capteur qui mesure l’accélération linéaire en un point
donnée. La mesure d’accélération est effectué à l’aide d’une masse d’épreuve « m »
lié au boitier du capteur [6]. Ce capteur mesure l’effort massique non gravitationnel,
le calcul du déplacement élémentaire s’effectue par double intégration de ces
informations; mais elle conduite à une accumulation d’erreur.
c. Gyromètre
Mesurent l’orientation du robot mobile, cette mesure est intégrer pour calculer la
position. Ces aident à diminuer l’imprécision sur l’orientation dans le cas de fusion
de données.
e. Magnétomètre
Ce capteur n’est pas considérer comme capteur inertielle, mais les centrales
inertielles (IMU) à faible coût (IMU MEMES) en plus d’une triade d’accéléromètre et
une triade de gyroscope on trouve une triade de magnétomètre ; cette architecture
facilite la détermination d’attitude d’une centrale inertielle à faible coût. Les
magnétomètres permettent de mesurer le champ magnétique local qui est composé
du champ magnétique terrestre et perturbation local (perturbation lié au capteurs ou
bien lié à l’environnement extérieur).
f. La centrale inertielle :
Le capteur inertiel est un dispositif équipé par trois accéléromètres, trois
gyroscopes et un calculateur de temps réel. Ce capteur donne l’ ’information sur la
vitesse ou sur l’accélération, l’intégration de l’un des deux peut nous conduire au
calcul de la distance. Son principe est que les informations issues des
accéléromètres de chaque axe ainsi que les informations d’attitude issues des
gyroscopes (tangage, roulis et lacet) sont traitées dans l’unité de mesure inertielle,
les systèmes qui déterminent la pose de robot à partir des accéléromètres et des
gyromètres sont appelés système de navigation inertielle. Les capteurs inertiels sont
utilisés pour former des systèmes munis d'un calculateur et d'une électronique de
mise en œuvre capables de délivrer des informations utiles à la navigation et au
pilotage. Parmi ces systèmes, on cite : les INS (Inertial Navigation System), les
INS/GPS, les IRS (Inertial Reference System), les AHRS (Attitude and Heading
Reference System). Les AHRS sont des combinaisons d’instruments capables de
donner une estimation précise de roulis, de tangage et de lacet d’un véhicule en
mouvement [8].
Ces capteurs sont utilisés pour collecter les informations sur l’environnement
d’évolution du système mobile. Ils représentent le complément indispensable des
capteurs intrinsèques présenté précédemment.
a. Récepteur GPS
GPS abréviation de Global Positioning System, est utilisé pour le positionnement
universel en exploitant les ondes électromagnétiques pour la localisation immédiate
à l’aide de 32 satellites (24 satellite en service à chaque instant), dispatché sur six
orbites terrestre géostationnaires avec une précision de 5 à 10m au plus.
Un récepteur GPS conventionnel est constitué de deux parties :
b. Les télémètres
Les télémètres sont des outils de mesure de distance, les plus utilisés actuellement
sont les télémètres à bailliage laser, ils sont équipés par un faisceau laser tournant
sur un plan pour but de mesurer la distance des objets coupent ce plan. Il existe trois
types des télémètres :
Les ultrasons : ils utilisent des ondes sonores pour calculer la distance entre
capteur et obstacle (mur, montagne, porte,…)
13
Chapitre01 : Généralité sur la navigation
Les télémètres infrarouges : ils utilisent la lumière infrarouge pour la détection
au lieu de l’onde sonore.
Les télémètres laser 3D : scanner en pivotant sur un axe vertical ou sur deux
axes avec deux scanners perpendiculaires.
Conclusion :
Au cours de ce chapitre, nous avons abordé les notions et les outils relatifs à la
navigation et la navigation inertielle. Ensuite, nous avons présenté les systèmes
de coordonnées ainsi que les différentes méthodes de représentation d’attitude
d’un UAV en précisant les avantages et les inconvénients de chaque méthode.
Après, nous avons cité les capteurs utilisés pour la prédiction de la pose d’un
UAV dans un espace tridimensionnel.
II.1 Introduction :
Enfin, nous allons définir l’estimateur qu’on va réaliser dans le chapitre suivant ainsi
que la simulation qui se fait sur Simulink R2021a en décrivant les méthodes de
fusion de données utilisés pour avoir des estimations précise et plus proche au
réalité.
En variant la puissance des quatre rotors d’une façon astucieuse on peut faire
monter/descendre, incliner à gauche/droite par mouvement de roulis ou bien en
avant/arrière par mouvement de tangage ou encore faire pivoter sur lui-même
par un mouvement de lacet.
En variant la vitesse de chaque rotor ou bien couple de rotor (deux rotors situé
en opposition sur la crois) on aura un mouvement différent de notre système, le
quadrotor incline vers la direction du rotor le plus lent. Comme à un hélicoptère
classique, les mouvements sont couplés, qui signifit que le quadrotor ne peut pas
réaliser une translation sans faire un mouvement de roulis ou tangage ça
implique qu’un mouvement du système affecte au moins sur trois degré de
liberté.
Pour but de l’application d’un couple autour de l’axe 𝑧, nous allons appliquer une
différence de vitesse entre les 4 rotors couplés 1,3 et 2,4. Ce mouvement est le
résultat des couples réactifs résultants de la rotation des rotors ainsi que la
poussé produit par les propulseurs. La figure ci-jointe montre comment ce fait le
mouvement de lacet :
Hypothèse de la modélisation :
Afin de déterminer le modèle dynamique certaines hypothèses simplifiant ont
été utilisées :
La structure du quadrotor est supposée rigide.
La structure est parfaitement symétrique, alors, la matrice d’inertie sera
supposée diagonale.
L’origine du repère mobile lié à la structure du système est confondue avec
son centre de masse.
Les hélices sont supposées rigides pour négliger l’effet de leur déformation.
Les forces de portance et de traîné sont proportionnel aux carré de la vitesse
de rotation des rotors.
Pour décrire la position et l’orientation du quadrotor, deux repères sont utilisés :
Le passage du repère fixe 𝑅𝑁 au repère mobile 𝑅𝐵 est subi en utilisant les angles
d’Euler et les matrices de rotation.
𝑝 𝑝 𝜑̇ 0 0
̇
𝜔 = [𝑞 ] = [𝑞 ] [ 0 ] + 𝑅𝑜𝑡𝑥 (𝜑) [𝜃] + 𝑅𝑜𝑡𝑦 (𝜃)𝑅𝑜𝑡𝑥 (𝜑) [ 0 ] II-1
𝑟 𝑟 0 0 𝜓̇
𝑝 1 𝑡𝑎𝑛𝜃𝑐𝑜𝑠𝜑 −𝑠𝑖𝑛𝜃 𝜑̇
[𝑞 ] = [0 𝑐𝑜𝑠𝜑 𝑠𝑖𝑛𝜑𝑐𝑜𝑠𝜃 ] [ 𝜃̇ ] II-2
𝑟 0 −𝑠𝑖𝑛𝜑 𝑐𝑜𝑠𝜑𝑐𝑜𝑠𝜃 𝜓̇
Ces forces sont générer par la rotation des hélices, elles sont proportionnelles au
carré des vitesses de rotation des rotors et perpendiculaire au plan des hélices.
Données par l’équation suivante :
𝐹𝑡 = ∑ 𝑏. 𝛺² II-5
𝑖=1
22
Chapitre02 : Conception de l’estimation d’état d’un UAV
𝑏 : Coefficient de portance
Cette force est le couplage entre les forces de pression et les frottements
visqueux, on distingue deux force de trainé l’une des hélices est négligeable
afin de facilité la modélisation du corps et l’autre selon les axes est exprimé
par :
𝐹𝑓 = 𝐾𝑓𝑡 . 𝑉 II-6
𝑉 : vitesse linéaire
𝑚𝜉̈ = 𝐹𝑔 + 𝐹𝑡 + 𝐹𝑓 II-7
𝑢2 = 𝑑(𝐹4 − 𝐹2 ) II-8
Avec 𝐹𝑖 = 𝑏. Ω𝑖 ²
𝑑 : La distance entre l’axe de rotation du rotor et le centre de la croix du
Quadrotor
𝑏 : Coefficient de portance
Ω𝑖 : vitesse de rotation du rotor
La rotation selon 𝑦 (Pitch) : moment des rotors 1 et 3 donnée par :
𝑢3 = 𝑑(𝐹3 − 𝐹1 ) II-9
𝑀𝑔𝑚 = Ω ∧ 𝐽Ω II-12
𝜉̇ = 𝑉
𝑚𝜉̈ = 𝐹𝑓 + 𝐹𝑡 + 𝐹𝑔
II-13
𝑅̇ = 𝑅. 𝑆(𝛺)
{𝐽𝛺̇ = −𝛺 ∧ 𝐽𝛺 + 𝑀𝑓 − 𝑀𝑎 − 𝑀𝑔ℎ
Avec : 𝜉 = [𝑥 𝑦 𝑧]𝑇
−𝐾𝑓𝑡𝑥 0 0
𝐹𝑓 = [ 0 −𝐾𝑓𝑡𝑦 0 ].𝑉 II-14
0 0 −𝐾𝑓𝑡𝑧
0
𝐹𝑔 = 𝑚. [ 0 ] II-15
−𝑔
L’accélération gravitationnelle g est prise négative dans notre cas car on utilise le
repère ENU (North East UP).
0 −Ω1 Ω2
𝑆(Ω) = [ Ω3 0 −Ω3 ] II-16
−Ω2 Ω1 0
24
Chapitre02 : Conception de l’estimation d’état d’un UAV
𝐼𝑥 0 0
𝐽 = [0 𝐼𝑦 0] II-17
0 0 𝐼𝑧
𝑑(𝐹4 − 𝐹2 )
𝑀𝑓 = [ 𝑑(𝐹3 − 𝐹1 ) ] II-18
2 2 2 2
𝑑(𝜔1 − 𝜔2 + 𝜔3 − 𝜔4 )
𝐾𝑓𝑎𝑥 𝜑²̇
𝑀𝑎 = 𝐾𝑓𝑎𝑦 𝜃²̇ II-19
[𝐾 𝜓²̇]
𝑓𝑎𝑧
𝐼𝑥 − 𝐼𝑦 𝐾𝑓𝑎𝑧 2 𝑑
𝑟̇ = 𝑝𝑞 − 𝑟 + 𝑢4
𝐼𝑧 𝐼𝑧 𝐼𝑧
̇ϕ = 𝑝 + tan𝜃(𝑞𝑠𝑖𝑛𝜑 + 𝑟𝑐𝑜𝑠𝜃)
𝜃̇ = 𝑞𝑐𝑜𝑠𝜑 − 𝑟𝑠𝑖𝑛𝜑 II-21
1
𝜓̇ = (𝑞𝑠𝑖𝑛𝜑 + 𝑟𝑐𝑜𝑠𝜑)
𝑐𝑜𝑠𝜃
𝑈̇ 𝑝 𝑈 𝑥̈
( 𝑉̇ ) = − (𝑞 ) ∧ ( 𝑉 ) + [𝑦̈ ] II-22
𝑊̇ 𝑟 𝑊 𝑧̈
0 𝐾𝑓𝑎𝑥 𝑈
𝑥̈ 1 0 1
[𝑦̈ ] = − [ 0 ] + 𝑅𝑁𝐵 [ 0 ] − [ 𝐾𝑓𝑎𝑦 𝑉 ] II-23
𝑚 𝑢 −𝑔 𝑚
𝑧̈ 1 𝐾𝑓𝑎𝑧 𝑊
𝑎𝑥 0 0 𝐾 𝑈
𝑥̈
𝐵
1 0 𝐵
1 𝑓𝑎𝑥
[𝑎𝑦 ] = [𝑦̈ ] + 𝑅𝑁 [ 0 ] = − [ 0 ] + 2𝑅𝑁 [ 0 ] − [ 𝐾𝑓𝑎𝑦 𝑉 ] II-24
𝑎𝑧 𝑧̈ −𝑔 𝑚 𝑢 −𝑔 𝑚
1 𝐾𝑓𝑎𝑧 𝑊
25
Chapitre02 : Conception de l’estimation d’état d’un UAV
𝑈̇ 𝑎𝑥 + 𝑉𝑟 − 𝑊𝑞 + 𝑔𝑠𝑖𝑛𝜃
[ 𝑉̇ ] = [𝑎𝑦 − 𝑈𝑟 + 𝑊𝑝 − 𝑔𝑐𝑜𝑠𝜃𝑠𝑖𝑛𝜑 ] II-26
𝑊̇ 𝑎𝑧 + 𝑈𝑞 − 𝑉𝑝 − 𝑔𝑐𝑜𝑠𝜃𝑐𝑜𝑠𝜑
𝜑̇ 1 𝑠𝑖𝑛𝜑𝑡𝑎𝑛𝜃 𝑐𝑜𝑠𝜑𝑡𝑎𝑛𝜃 𝑝
̇
[ 𝜃 ] = [0 𝑐𝑜𝑠𝜑 −𝑠𝑖𝑛𝜑 ] [𝑞 ] II-27
𝜓̇ 0 𝑠𝑖𝑛𝜑𝑠𝑒𝑐𝜃 𝑐𝑜𝑠𝜑𝑠𝑒𝑐𝜃 𝑟
1
Avec 𝑠𝑒𝑐𝜃 = 𝑐𝑜𝑠𝜃
26
Chapitre02 : Conception de l’estimation d’état d’un UAV
Le block IMU en vert c’est une unité de mesure inertielle (Inertial Measerment Unit)
se trouve dans le Toolbox de Simulink, il effectue les mêmes calculs qu’une centrale
inertielle avec trois accéléromètres et trois gyroscopes.
La figure II-11 illustre le schéma d’un régulateur PID en montrant les gains 𝐾𝑝 , 𝐾𝑖 et
𝐾𝑑 :
Le contrôleur PID est utilisé dans l’industrie car il est simple et efficace à réduire les
erreurs pour la plupart des systèmes.
Un régulateur PID est développée pour contrôler l’altitude d’un système quadrotor
par générer un signal d’entrée 𝑈1 définie par :
z𝑑 : L’altitude désirée.
𝜑 : Angle de roulis.²²
L’implémentation du régulateur :
Contrôle de tangage :
𝜃 : Angle de tangage
Implémentation du correcteur :
Contrôle de lacet :
𝜓 : Angle de lacet
Après avoir acquis des contrôleurs stables pour l’attitude et l’altitude du quad rotor,
un régulateur PID est développé pour contrôler les accélérations désirées 𝑥̈ 𝑑 et𝑦̈ 𝑑 , la
loi de contrôle vaut :
Ces mesures nous permettent de prédire les angles d’Euler à travers le modèle
mathématique de chaque capteur :
Le modèle gyroscopique est donné par les équations suivantes :
ϕ̇ = 𝑝 + tan𝜃(𝑞𝑠𝑖𝑛𝜑 + 𝑟𝑐𝑜𝑠𝜃)
𝜃̇ = 𝑞𝑐𝑜𝑠𝜑 − 𝑟𝑠𝑖𝑛𝜑 II-34
1
𝜓̇ = (𝑞𝑐𝑜𝑠𝜑 + 𝑟𝑠𝑖𝑛𝜑)
𝑐𝑜𝑠𝜃
Ces équations permettent en premiers d’obtenir les dérivés des angles d’Euler,
après une simple intégration dans le temps on peut obtenir les angles visés :
𝜑̇ 1 𝑠𝑖𝑛𝜑𝑡𝑎𝑛𝜃 𝑐𝑜𝑠𝜑𝑡𝑎𝑛𝜃 𝑝
̇
[ 𝜃 ] = [0 𝑐𝑜𝑠𝜑 −𝑠𝑖𝑛𝜑 ] [𝑞 ] II-35
𝜓̇ 0 𝑠𝑖𝑛𝜑𝑠𝑒𝑐𝜃 𝑐𝑜𝑠𝜑𝑠𝑒𝑐𝜃 𝑟
𝜑 𝜑̇
[ 𝜃 ] = ∫ [ 𝜃̇ ] 𝑑𝑡 II-36
𝜓 𝜓̇
On peut aussi calculer les angles de roulis (𝜑) et de tangage (𝜃) à partir des
mesures des accéléromètres par les équations suivantes :
𝑎𝑦
𝜑𝑎𝑐𝑐 = 𝑎𝑟𝑐𝑡𝑎𝑛 ( ) II-37
√𝑎𝑥 ² + 𝑎𝑧2
−𝑎𝑥
𝜃𝑎𝑐𝑐 = 𝑎𝑟𝑐𝑡𝑎𝑛 ( ) II-38
√𝑎𝑦2 + 𝑎𝑧2
𝜓 = 𝑎𝑡𝑎𝑛2(𝑋, 𝑌) II-41
Avec :
𝜆: La longitude du point {a b}
𝐿 : La latitude du point {a b}
Le capteur magnétomètre subit un bruit sur les axes x et y, c’est-à-dire lors une
rotation de roulis ou de tangage on v avoir un changement sur le lacet, pour cela, le
modèle mathématique du capteur magnétomètre vaut :
𝜓 = 𝑎𝑡𝑎𝑛2(𝑚𝑥, 𝑚𝑦) II-44
Avec :
𝑚𝑥 = 𝑍𝑠𝑖𝑛(𝜑) − 𝑌𝑐𝑜𝑠(𝜑) II-45
𝑚𝑦 = 𝑋𝑐𝑜𝑠(𝜃) + 𝑌𝑠𝑖𝑛(𝜃) 𝑠𝑖𝑛(𝜑) + 𝑍𝑠𝑖𝑛(𝜃)𝑐𝑜𝑠(𝜑) II-46
[ 𝜑, 𝜃, 𝜓].
Les mesures de l’angle de roulis 𝜑 converge vers la valeur désiré sauf que la
mesure de l’accéléromètre (phi_acc) possède une divergence dans un premier
temps après converge vers la valeur désiré, l’angle de tangage 𝜃 converge vers la
valeur désiré sauf que la mesure de l’accéléromètre diverge. L’angle de lacet 𝜓
converge vers la valeur désiré.
II.8 Conclusion :
Au cours de ce chapitre on a présenté les concepts les plus importants d'un UAV
(quadrirotor), ainsi que leur principe de fonctionnement et sa modélisation
mathématique. Les modèles cinématique et dynamique du quadrotor sont été
implémenté sous Simulink R2020a, les méthodes de perdition des angles d’Euler
s’appuyant sur les accéléromètres et les gyromètres ont été présentés. Les résultats
de simulation ont permis d’une part de valider les modèles implémentés, et d’autre
part de monter l’intérêt et l’avantage de la fusion des estimées obtenues par
accéléromètres et gyromètres afin d’obtenir une meilleure et une plus précise
estimation possible des angles d’Euler.
III. Chapitre III : Mise en œuvre
de l’estimateur
47
Chapitre03 : Mise en œuvre de l’estimateur
III.1 Introduction
Dans les deux chapitres précédents on a parlé de l’estimation de la position et
l’attitude d’un appareil volant, spécifiant cet appareil par un Quadrotor.
L’objectif de l’étude est la mise en œuvre d’un estimateur d’état de cet appareil
durant son mouvement dans un espace d’évolution bien définie. Dans ce chapitre
on va réaliser cet estimateur à l’aide des capteurs inertiels et un microcontrôleur en
visualisant les résultats sur un afficheur LCD.
Microprocesseur ATMega328
Dimensions 74 x 53 x 15 mm
Cadencement 16MHz
Le module MPU6050 est très utilisé dans les projets Arduino et c’est ce qu’on va
utiliser dans la partie de test et mesure. Il fonctionne sur un bus I2C pour assurer le
transfert des données entre MPU6050 et la carte Arduino Uno.
Tableau III-2- Caractéristiques générales du capteur MPU6050
Tolérance ±3%
Tolérance ±3%
Interface I2C
Alimentation 3-5V
Dimension 3×3×0.9mm
LCD est l'abréviation du terme anglais "Liquid Crystal Display" qui signifie en
français "Écran à cristaux liquides". D’où afficheur LCD. C’est une technique
d'affichage où des cristaux liquides sensibles et soumis à un courant électrique
fournissent l'image désirée. Des montres aux ordinateurs portables, en passant par
les écrans plats, de nombreux appareils utilisent cette technologie.
Un cristal liquide est emprisonné entre deux plaques de verres polarisées par des
électrodes. L'image se forme par les déplacements du cristal, mais l'écran doit
forcément être retro-éclairé par l'adjonction de sources lumineuses (souvent de fins
tubes éclairants fixés sur les côtés de l'écran), qui consomment parfois d’avantage
d'énergie que l'écran lui-même.
52
Chapitre03 : Mise en œuvre de l’estimateur
Le bus I2C (Inter Integrated Circuit Bus) est le bus historique, développé par Philips
pour les applications de domotique et d'électronique domestique au début des
années 80, notamment pour permettre de relier facilement à un microprocesseur les
différents circuits d'un téléviseur moderne [13].
Le bus I2C est constitué de deux câbles, un pour les données nommé SDA (Serial
Data) et l’autre pour l’horloge nommé SCL (Serial CLock) avec un signal de
référence « la masse » et un Vcc (5V). [14]
III.4.1 Expérience 1
Figure III-13: les allures des vitesses angulaires p(t), q(t) et r(t).
57
Chapitre03 : Mise en œuvre de l’estimateur
4. Estimation des angles (boucle répétitive) Pour pouvoir estimer les angles mesurés
par le capteur MPU6050, on va procéder aux étapes suivantes :
- Acquisition (lecture) des mesures données par le MPU6050.
- Soustraire l’offset de mesures obtenues en haut.
- Calcul des angles utilisant seulement les mesures des gyroscopes on faisant
l’intégrale des vitesses angulaires données par le gyroscope et on les multiple par
un coefficient pour normaliser les valeurs des angles obtenus.
- Calcul des angles utilisant seulement les mesures des accéléromètres.
- Estimation des angles (fusion de données) par filtrage complémentaire.
- Affichage sur le moniteur PC.
III.6.2 Expérience 2
Dans la deuxième expérience, on va procéder à l’acquisition des angles mesurés
par le MPU6050 en mouvement qui sont les deux angles tangage et roulis) données
par les trois modèles, le modelé d’accélération, le modèle de prédiction, ainsi le
modèle d’estimation pour montrer la superposition de la trajectoire réel avec la
trajectoire indiqué par notre modèles. Pour cela en va utiliser l’équerre pour former
un angle de (-45°) (trajectoire réel) et on va visualiser les trajectoires données par
notre estimation, tel que dt=10ms.
Pour 𝜃 = 45° :
60
Chapitre03 : Mise en œuvre de l’estimateur
Pour 𝜑 = 45° :
Pour 𝜑 = −45° :
Pour 𝜃 = −45° :
III.7 Conclusion
Dans ce chapitre on a pu construire l’estimateur de la posture avec visualisation sur
le moniteur série du PC. Cet estimateur nous permet d’estimer les angles d’Euler
(Roulis et tangage) à travers le capteur MPU6050 et les visualiser sur un afficheur
LCD lié avec la carte Arduino. Enfin, on a utilisé les résultats obtenus pour monter
expérimentalement l’intérêt et l’avantage de la fusion des estimées obtenues par
accéléromètres et gyromètres afin d’obtenir une meilleure et une plus précise
estimation possible des angles d’Euler.
64
Conclusion Générale
65
Conclusion Générale
Le travail réalisé dans ce document s’inscrit dans le cadre de la localisation
robotique et la navigation inertielle. La problématique abordée était de donner une
meilleure estimation de la posture d’un vecteur aérien, à partir de l’acquisition et
prétraitement des données brutes d’une centrale inertielle se composant de trois
gyromètres, trois accéléromètres et trois magnétomètres.
Dans un premier temps, nous avons présenté des notions et les outils utilisés dans
la conception et l’implémentation expérimentale de notre algorithme d’estimation de
la posture qui sont tout ce qui concerne la navigation inertielle, les différentes
représentations de l’attitude d’un système volant en montrant les avantages et les
inconvénients, les systèmes de coordonnées et les capteurs utilisé (gyromètre et
accéléromètre). Ensuite, nous avons procédé à l’étape de modélisation pour décrire
mathématiquement le comportement du système aérien (Quadrotor) et conclure ses
équations dynamiques et cinématique afin de synthétiser sa commande linéaire de
type PID. Par la suite, nous avons présenté le modèle mathématique des capteurs
utilisés afin d’obtenir l’état de posture de Quadrotor. Ces modèles sont utilisés dans
la phase de l’estimation d’état de posture en s’appuyant sur la technique de fusion
de données utilisant le Filtre Complémentaire afin d’obtenir une meilleure et une
précise estimation des angles d’Euler.
Nous avons simulé notre estimateur d’état et la commande PID du Quadrotor sous
Simulink (Matlab) en utilisant la technique de fusion des données (filtre
complémentaire). Les Résultats de simulation sous Matlab ont montré la fiabilité de
notre modèle d’estimation qui suit la trajectoire réelle d’un vecteur aérien. Les
résultats de l’estimation de l’état de posture par le filtre complémentaire sont révélés
plus précis et plus stable comparant avec ceux obtenus par prédiction seule pour
diminuer les effets des différents bruits.
Suite aux résultats d’analyse et de simulation obtenus, on est passé par la suite à
concevoir et réaliser l’estimateur de la posture. Ce dernier permet d’estimer les
angles d’Euler en utilisant les capteurs physiques disponibles, et de les visualiser
dans une interface liée avec la carte Arduino. Enfin, une validation expérimentale sur
une trajectoire désirée (trajectoire repos, trajectoire mobile) est faite montrant de
bons résultats d’utilisation du filtre complémentaire compte tenu les paramètres
identifiés par l’estimateur réalisé via une liaison série (USB).
Comme perspectives, nous projetons d’étendre ce travail à l’utilisation de la
représentation basée Quaternion vu ses avantages qui permet de surmonter le
problème des singularités. Nous visons non-plus d’investir les nouveaux filtres de
fusion existants tels que le Filtre Madgwick et le Filtre robuste Smooth Variable
Structure Filter SVSF à travers une étude comparative. D’autre part, nous
prévoyons d’introduire le récepteur GPS et le capteur barométrique pour pouvoir
estimer la position et l’altitude d’un vecteur aérien avec précision.
66
Annexes
67
Annexe 01 :
Caractéristiques du WGN :
Le bruit blanc gaussien (WGN) est caractérisé par plusieurs équations et propriétés
mathématiques. Certaines de celles-ci incluent :
Fonction de densité de probabilité (PDF) : La PDF du WGN est donnée par :
1 𝑥²
−
𝑓(𝑥) = 𝑒 2𝜎²
√2𝜋𝜎 2
où σ est la déviation standard du bruit et x est une variable aléatoire représentant le
bruit.
Moyenne : La valeur moyenne du WGN est nulle, c'est-à-dire E(x) = 0.
Variance : La variance du WGN est égale au carré de sa déviation standard,
c'est-à-dire Var(x) = σ².
Autocorrélation : L'autocorrélation du WGN est donnée par :
𝑅(𝑡) = 𝐸[𝑥(𝑡)𝑥(𝑡 − 𝜏)] = 𝜎² ∗ 𝛿(𝑡 − 𝜏)
où x(t) et x(t-τ) sont deux échantillons du bruit à des moments t et t-τ respectivement,
δ(t-τ) est la fonction delta de Dirac, et E[x(t)x(t-τ)] représente la valeur attendue du
produit des deux échantillons.
Densité spectrale de puissance (PSD) : La PSD du WGN est donnée par :
𝑆(𝑓) = 𝜎²
où S(f) est la densité spectrale de puissance et f est la fréquence.
Ces équations et propriétés aident à décrire la nature statistique du WGN, et elles
sont importantes pour comprendre son comportement dans diverses applications et
systèmes.
68
Conclusion
En conclusion, le bruit blanc gaussien (WGN) est un type largement utilisé de bruit
aléatoire qui se caractérise par sa distribution normale, son moyenne nulle et sa
densité spectrale plate. Ses propriétés mathématiques, telles que sa fonction de
densité de probabilité, sa moyenne, sa variance, son autocorrélation et sa densité
spectrale de puissance, permettent une caractérisation précise de son
comportement. Le WGN est fréquemment présent dans de nombreux systèmes
physiques et capteurs et peut affecter la précision des mesures. Pour atténuer ses
effets, diverses techniques telles que le filtrage, l'étalonnage et la correction d'erreur
peuvent être employées. La compréhension des propriétés et du comportement du
WGN est importante pour la conception et l'analyse de nombreux systèmes dans
divers domaines, notamment les télécommunications, le traitement du signal et la
technologie des capteurs.
69
Bibliographie
[1] Jay A. Farrel, Matthew Barth. The global positioning system and inertial
navigation (Hardback) 1998.
[2] David Titterton John. Strapdown inertial navigation technology, 2ème edition,
Institution of Engineering and Technology, London and the American institute of
Aeronautics, Reston, 2004.
[5] Jay A. Farrell. Aided Navigation - GPS with High Rate Sensors. The McGraw-Hill
Companies, 2008.
[10] H.KHEBBACHE, " Tolérance aux defaults vue à la méthode backstepping des
systèmes non linéaire, application : système UAV de type quadrotoré " mémoire
magister en automatique, Faculté de technologie, Setif, 2012
[11] BELHADRI Kheira, " Contrôle Robuste d’un Quadrotor " thèse doctorat, faculté
Génie électrique, option automatique, Université Oran USTO, 2021
[12] https://wikimemoires.net/2021/02/domaines-application-mouvements-du-
quadrotor/
[13] https://www.technologuepro.com
[14] Paret "Le bus I2C principes et mise en oeuvre ",2ème edition, 1999.