Modélisation et contrôle d'un mini-quadrirotor : sustentation, dynamique du drone, asservissements d'altitude et de cap
Afficher ou masquer la section
Le sujet étudie la modélisation et le pilotage automatique d'un mini-drone à quatre hélices (quadrirotor). Il vérifie d'abord la faisabilité d'un vol stationnaire par deux modèles de poussée des hélices (disques sustentateurs et action locale sur les pales) et par un bilan énergétique avec la batterie. Il établit ensuite le modèle mécanique et électro-mécanique complet du drone (équations de la dynamique, matrices d'inertie, modèle des moteurs), qu'il linéarise autour du vol stationnaire pour obtenir des sous-systèmes découplés (vertical, longitudinal, latéral, cap).
1Partie 2 : faisabilité d'un vol stationnaireÉtablir la puissance nécessaire au vol stationnaire par le modèle des disques sustentateurs puis par un modèle local d'action de l'air sur les pales, et vérifier la compatibilité avec l'autonomie de la batterie.
2Partie 3 : modélisation du quadrirotorÉtablir les équations de la dynamique du drone (résultante et moment dynamiques), le modèle électro-mécanique des moteurs, puis linéariser l'ensemble autour du vol stationnaire pour obtenir des sous-systèmes vertical, longitudinal, latéral et de cap découplés.
3Partie 4 : contrôle de l'altitude du quadrirotorModéliser le sous-système vertical par une fonction de transfert, décrire la mesure d'altitude par sonar, puis concevoir et valider un correcteur assurant la stabilité et la précision de l'asservissement d'altitude.
4Partie 5 : contrôle du cap du quadrirotorModéliser le sous-système de cap par une fonction de transfert, puis étudier le principe d'un magnétomètre magnéto-inductif mono-axe puis tri-axe permettant de mesurer l'angle de cap du drone.
Ces sujets peuvent vous intéresser
Pas encore de corrigé pour ce sujet : voici des sujets proches corrigés.
Banque commune École Polytechnique - ENS de Cachan
PSI
Session 2013
Épreuve de Modélisation
Durée: 5 heures
Aucun document n'est autorisé
Aucune calculatrice n'est autorisée
Si, au cours de l'épreuve, un candidat repère ce qui lui semble être une erreur d'énoncé, il le signale sur sa copie et poursuit sa composition en expliquant les raisons des initiatives qu'il est amené à prendre.
Modélisation et contrôle d'un mini-quadrirotor
Modélisation et contrôle d'un mini-quadrirotor
1 Présentation de l'étude
Les mini-drones sont des véhicules aériens de petite taille, sans pilote humain à bord de l'appareil. Ils furent initialement développés pour des besoins militaires afin d'accomplir des missions de surveillance, de renseignement ou de combat, avant d'être ensuite utilisés pour des applications civiles telles que la surveillance de mouvement de foule ou de trafic routier. Il existe plusieurs variétés de mini-drones, mais presque tous ont les points communs suivants :
ils sont petits (< 1 m), légers (< 2 kg) et peu onéreux;
ils peuvent accomplir de nombreuses tâches de manière autonome (effectuer un vol stationnaire, suivre une trajectoire prédéfinie, etc.);
un pilote non-spécialiste peut les contrôler à travers des ordres de haut niveau (aller vers la gauche, monter d'une hauteur de 1 mètre, atterrir, faire demi-tour, etc.) ;
ils doivent être capables de voler dans différents environnements : à l'intérieur ou à l'extérieur, en présence de vent, d'obstacles, etc.
Une configuration de mini-drone en particulier a connu un succès grandissant depuis plus de 10 ans. Il s'agit d'un drone possédant 4 hélices, d'où son nom de "quadrotor" ou "quadrirotor". Ce type de mini-drone est étudié dans de nombreuses universités ou écoles d'ingénieurs (figure 1) et est même vendu au grand public comme un jeu pour l'extérieur ou l'intérieur (un exemple est donné sur la figure 2). On considère dans la suite ce type de mini-drone qui a comme avantage, parmi d'autres, de pouvoir être modélisé et contrôlé automatiquement de manière relativement simple.
Figure 1 - Prototype étudié dans ce sujet
Figure 2 - AR.Drone de Parrot
1.1 Description architecturale
Un quadrirotor est constitué d'un corps principal mis en mouvement par 4 hélices entraînées chacune par un moteur électrique. Tous les composants électroniques du drone, dont les 4 moteurs, sont alimentés par une batterie Lithium Polymère. La carte électronique embarquée à bord du quadrirotor traite les informations des différents capteurs et élabore la commande des 4 variateurs des moteurs en fonction de la consigne à suivre, définie par l'utilisateur et transmise au drone par liaison Wi-Fi.
Le drone est équipé de plusieurs capteurs, à fonctionnalités bien différentes : un capteur à ultrasons situé sous le drone et pointant vers le sol, un accéléromètre tri-axe (mesurant suivant trois directions orthogonales de l'espace), un gyromètre tri-axe, une antenne GPS, un magnétomètre tri-axe et deux caméras pointant l'une vers l'avant du drone et l'autre vers le sol.
Q1. Compléter les chaînes d'énergies et d'informations représentées sur le document réponse en renseignant les informations mesurées par les capteurs, les noms des composants et les fonctions qui manquent (9 cases).
1.2 Objectif de l'étude
L'objectif de l'étude est d'établir l'algorithme à implémenter sur le microcontrôleur de la carte électronique afin de pouvoir atteindre de manière automatique une altitude, un cap (direction de l'avant du drone par
rapport au Nord) et une assiette (angle de roulis et angle de tangage) de référence en respectant le cahier des charges partiel défini sur la figure 3 et dans le tableau 1 et s'y maintenir.
Figure 3 - Diagramme partiel des inter-acteurs
Pour ce faire, il est essentiel de modéliser le système étudié selon la démarche décrite ci-après et illustrée sur la figure 4.
Figure 4 - Présentation de la démarche de modélisation
La démarche de modélisation suivie dans cette étude se compose symboliquement de deux domaines : le domaine physique où l'on fait des mesures sur un système réel, et le domaine virtuel où l'on réalise des simulations sur un système virtuel (analytique, numérique,...) censé représenter le comportement du système réel. Le domaine physique est nécessaire car il est indispensable de s'appuyer sur l'observation des phénomènes réels pour proposer et valider un modèle de comportement et une modélisation du système et du milieu extérieur. Le solveur est un outil qui permet de résoudre les équations et qui donne le résultat de la simulation. La modélisation est pertinente si l'écart entre les réponses expérimentales et les résultats issus de la simulation est faible. Le domaine virtuel permet de tester le bon fonctionnement de l'algorithme en simulation avant de l'implémenter et de le tester sur le véritable système. L'étude présentée ici s'intéresse principalement au domaine virtuel de simulation.
Le sujet est composé de 5 parties :
faisabilité d'un vol stationnaire;
modélisation du quadrirotor;
contrôle de l'altitude du quadrirotor;
contrôle du cap du quadrirotor;
contrôle de l'assiette du quadrirotor.
Une synthèse conclura l'étude. Même si certaines parties peuvent être traitées séparément, il est préférable de suivre le questionnement proposé.
L'annexe regroupe l'ensemble des données nécessaires pour réaliser les applications numériques demandées. La plupart des grandeurs utilisées dans tout le document est définie dans la partie 3.
Fonctions de service
Critères
Niveaux
FS1 : permettre au pilote d'explorer une zone de manière autonome ou non
Vol stationnaire
Drone maintenu à l'horizontal, à altitude et cap constants
Altitude de référence
- Erreur statique
- Dépassement
- Temps de réponse à 5%
- Aucune
- < 10%
- < 0, 8 s
Cap de référence
- Erreur statique
- Dépassement
- Temps de réponse à 5%
- Aucune
- < 15%
- < 1 s
Angles de roulis et de tangage de référence
< 10^∘
Position géographique de référence
Non spécifiée dans cette étude
FS2 : permettre au pilote d'interagir avec le quadrirotor
Envoi de commandes de référence
Transmission au drone d'un cap, d'une altitude, d'une assiette de référence
Réception d'informations
- données de vol
- image et vidéo de l'environnement
FS3 : résister à l'environnement
Perturbations magnétiques
Possibles
FS4 : être alimenté en énergie électrique
Durée de vol
Temps de charge de la batterie
10 minutes
90 minutes
Table 1 - Définition des fonctions de service et cahier des charges
2 Faisabilité d'un vol stationnaire
Dans cette partie, on cherche à vérifier à l'aide de modèles simples qu'un vol stationnaire est possible, compte tenu du poids du drone, des caractéristiques de la batterie et du cahier des charges à respecter.
2.1 Détermination de la puissance nécessaire pour un vol stationnaire
2.1.1 Modèle des disques sustentateurs
Le premier modèle utilisé est global (souvent appelé "théorie des disques sustentateurs"). Sachant qu'une hélice tourne très vite (quelques milliers de tours par minute), le modèle consiste à considérer que l'hélice est équivalente à un disque D à travers lequel le fluide supposé incompressible se déplace à la vitesse v⃗_1 = − V_1 z⃗ uniforme sur la section du disque D. Une différence de pression apparaît entre l'amont et l'aval du disque. Comme indiqué sur la figure 5, la pression au dessus du disque est notée p, celle en dessous est notée p + Δp. On note F la résultante normale au disque de l'action mécanique de l'air sur l'hélice.
On considère le tube de courant s'appuyant sur la surface décrite par l'hélice en rotation. La modification de vitesse de l'écoulement induit un élargissement ou rétrécissement du tube de courant. La pression à l'infini en amont et en aval est égale à la pression statique de l'écoulement, p_0. On note v⃗_2 = − V_2 z⃗ la vitesse supposée uniforme en sortie du tube de courant en-dessous du disque et v⃗_0 = − V_0 z⃗ celle au-dessus (qui est
l'opposée de la vitesse d'ascension du drone). On néglige les tourbillons, ce qui revient à considérer qu'il n'y a pas d'écoulement hors de la veine de fluide. Le débit massique est noté Q = ρS_1 V_1 avec S_1 la section du disque D et ρ la masse volumique de l'air. L'action de la pesanteur est négligée. On note P_(air) la puissance fournie par l'air à l'hélice.
Figure 5 - Paramétrage du tube de courant considéré
Q2. Par application du théorème d'Euler à la veine de fluide, établir une relation entre F, Q, V_0 et V_2. Justifier l'allure de la veine de fluide (rapport S_0 sur S_2 ) pour obtenir une force F positive.
Q3. A partir d'un bilan d'énergie cinétique sur la veine fluide, déterminer une deuxième équation reliant P_(air), Q, V_2 et V_0.
Q4. En exprimant une relation entre P_(air), F et V_1 et en utilisant les deux équations précédentes, déterminer V_1 en fonction de V_2 et V_0.
Q5. On pose V_f = V_1 − V_0 (cette vitesse est appelée vitesse de Froude). En déduire l'expression de F en fonction de V_f, V_0, ρ, et S_1.
Q6. Montrer dans le cas d'un vol stationnaire que P_(air) = KF^(3/2), où l'on précisera l'expression de K en fonction de ρ et S_1.
2.1.2 Modèle local d'action mécanique
Afin de confirmer l'expression de la puissance P_(air) en fonction de F, on considère une deuxième approche possible. Cette approche utilise un modèle local d'action mécanique de l'air sur une pale.
L'hélice de centre de gravité G_i est composée de 2 pales symétriques par rapport à l'axe ( G_i, z⃗ ) (voir figure 6). Celle-ci possède un pas à gauche ou à droite, par analogie avec le pas d'une vis. On note α l'angle d'incidence entre la direction de la vitesse et la corde de l'hélice pour une section donnée. Cet angle est positif pour une hélice de pas à droite. L'hélice, montée sur le drone, est en rotation d'axe ( G_i, z⃗ ) par rapport au corps du quadrirotor. Les vecteurs x⃗ et y⃗ sont liés au drone, tandis que les vecteurs x_i→ et y_i→ sont liés à l'hélice. Par définition, z⃗ et z_i→ sont confondus. L'angle formé par x⃗ et x_i→ est noté θ_i = (x⃗, x_i→). On note ω_i = |(dθ_i)/(dt)| la norme de la vitesse angulaire de l'hélice par rapport au corps du drone.
On définit pour une section de pale, deux vecteurs infinitésimaux dP^(→−) et dT^(→−) qui représentent respectivement la portance et la traînée issues de la décomposition de la résultante de l'action mécanique de l'air sur la section
droite d'une pale au niveau du centre de poussée C de celle-ci. Les conditions aérodynamiques permettent d'écrire les équation suivantes :
V⃗ = Vy_i→ est le vecteur vitesse du point C centre de poussée de la section droite par rapport à l'air tel que G_i C^(→−) = λx_i→ avec r_1 < λ < r_2, r_1 et r_2 étant respectivement les distances minimale et maximale du point C de la pale par rapport à G_i;
sgn(.à)estlafonction′signe′, c^′ est − à − direquesgn(α) = 1 si α ⩾ 0 et sgn(α) = − 1 si α < 0;
C_z(λ) et C_y(λ) sont les coefficients positifs de portance et traînée qui dépendent de la section (et donc de la valeur de λ ) car la corde et l'incidence d'une section varient en fonction de la position de celle-ci.
On note {T_(air → helice)} = {F⃗; M⃗}_(G_i) le torseur d'action mécanique globale de l'air sur l'hélice au centre de gravité G_i de celle-ci.
L'hypothèse est faite que la valeur de la vitesse V ( V > 0 ou V < 0 suivant le sens de rotation de l'hélice) est uniquement due à la vitesse de rotation de l'hélice, c'est-à-dire que |V| = λω_i. Cette approximation se justifie par le fait que la vitesse de rotation des hélices est très élevée.
Figure 6 - Illustration d'une hélice et zoom sur une section de pale
Q7. Montrer que F⃗ = Fz⃗ = sgn(α)sgn(V)aω_i^2 z⃗ et M⃗ = Mz⃗ = − sgn(V)bω_i^2 z⃗, où l'on donnera les expressions des coefficients positifs de proportionnalité a et b, chacun sous la forme d'une intégrale simple, sans chercher à les calculer.
Q8. Indiquer, pour le cas de l'hélice de la figure 6, quel est le pas considéré (à droite ou à gauche) et indiquer, en justifiant succinctement, le sens de rotation (horaire ou antihoraire) permettant d'obtenir les portances et traînées dessinées sur la figure 6.
Q9. Dans le cas d'une hélice de pas inversé par rapport à l'hélice précédente, indiquer ce qui doit être modifié pour pour obtenir une poussée verticale ascendante.
Q10. Sachant que les 4 hélices du drone (de pas à droite ou à gauche) contribuent à le maintenir en vol stationnaire, donner l'expression du torseur d'action mécanique global de l'air sur une hélice en fonction de a, b, ω_i et ε_i, où ε_i = 1 (resp. -1) si l'hélice tourne dans le sens horaire (resp. antihoraire).
Q11. Déterminer l'expression de P_(air) puissance de l'air sur une hélice en vol stationnaire en fonction de F et des coefficients a et b puis comparer ce modèle avec celui des disques sustentateurs.
2.2 Pertinence du choix de la batterie
La batterie utilisée est au Lithium Polymère (LiPo). Elle possède une capacité massique C_(mass) et une masse m^′. La partie précédente a permis de montrer que la puissance due à l'action de l'air sur une hélice en rotation s'écrit sous la forme P_(air) = KF^(3/2) = (F/(K^′))^(3/2) où F est la poussée exercée par l'air sur l'hélice et K^′ une constante qui peut être déterminée expérimentalement. La valeur de K^′, tenant compte des pertes, est donnée en annexe.
La masse du drone intégralement équipé (moteurs, hélices, carte électronique, capteurs, batterie, etc) est notée M. L'accélération de la pesanteur est notée g.
Q12. En supposant que le drone est maintenu en vol stationnaire pendant toute la durée du vol et que toute la puissance fournie par la batterie est utilisée pour générer la portance, déterminer la durée du vol. Conclure quant au respect ou non du cahier des charges.
3 Modélisation du quadrirotor
L'objectif de cette partie est de modéliser le quadrirotor en exploitant les équations de dynamique du drone et les équations électro-mécaniques des 4 moteurs. Ce modèle est indispensable pour concevoir les algorithmes de pilotage de haut niveau qui seront développés dans les parties suivantes.
3.1 Modèle mécanique du drone
Un schéma simplifié du quadrirotor est donné sur la figure 7. Les différents paramètres nécessaires pour la modélisation mécanique du drone sont décrits ci-après.
Figure 7 - Schéma simplifié du quadrirotor
Paramètres géométriques
On associe :
le repère R_0 = (O_0, x_0^(→−), y_0^(→−), z_0^(→−)) au sol noté S_0 supposé être un référentiel galiléen;
le repère R = (O, x⃗, y⃗, z⃗) au corps du drone noté S, de centre d'inertie G_s. Les axes x⃗ et y⃗ sont dirigés selon les bras du drone orthogonaux, l'axe x⃗ étant dirigé vers l'avant du drone;
le repère R_i = (G_i, x_i→, y_i→, z⃗) à chaque hélice notée S_i, de centre d'inertie G_i avec i ∈ {1, 2, 3, 4}. O est le centre géométrique des centres d'inertie des 4 hélices. Ainsi OG_1^(→−) = − OG_3^(→−) = lx⃗ et OG_2^(→−) = − OG_4^(→−) = ly⃗. On pose alors G_s O^(→−) = hz⃗. On note G le centre de gravité de l'ensemble E = {S⋃_(i = 1)^(i = 4)S_i}.
Paramètres cinématiques
Le mouvement du corps S par rapport au sol S_0 est donné par le torseur cinématique {V_(S/S_0)} = {Ω⃗_(S/S_0); V⃗_(G, S/S_0)}}}{{_G où Ω⃗_(S/S_0) = Ω⃗ = px⃗ + qy⃗ + rz⃗ et V⃗_(G, S/S_0) = V⃗ = ux⃗ + vy⃗ + wz⃗.
Chaque hélice est en liaison pivot d'axe ( G_i, z⃗ ) avec le corps du drone S. On pose θ_i = (x⃗, x_i→) = ( y⃗, y_i→ ) pour i ∈ {1, 2, 3, 4}. On note alors Ω⃗_(S_i/S) = ε_i ω_i z⃗ la vitesse angulaire de l'hélice S_i par rapport à S, avec ω_i la vitesse angulaire strictement positive de chaque hélice et ε_i = ± 1 en fonction du sens de rotation de chaque hélice (compte tenu du type de pas de l'hélice).
Paramètres cinétiques
La masse de l'ensemble du quadrirotor E = {S⋃_(i = 1)^(i = 4)S_i} est notée M.
La masse d'une hélice S_i est m_i = m (supposée identique pour les 4 hélices).
La masse du corps S est notée m_s.
On introduit les formes générales des matrices d'inertie suivantes :
matrice d'inertie du corps S au centre de gravité global G dans le repère R :
l'action de la pesanteur dont l'accélération est notée g⃗ = − gz⃗_0,
l'action de l'air sur chaque hélice S_i en mouvement, dont la forme a été démontrée précédemment : {T_(air → S_i)} = {F⃗_i = aω_i^2 z⃗; M⃗_i(G_i) = − bε_i ω_i^2 z⃗}_(G_i), avec ε_i = ± 1 selon le pas de l'hélice considérée, a et b sont des constantes positives;
les actions électromagnétiques intérieures aux moteurs produisant des couples sur chaque rotor lié à une hélice Γ⃗_i = ε_i Γ_i z⃗, où le couple Γ_i est toujours positif.
Q13. Déterminer la position du centre de gravité global OG^(→−). Simplifier à partir de la figure 7, en justifiant succinctement, la forme de la matrice d'inertie du solide S. Cette matrice simplifiée sera utilisée dans la suite du sujet.
3.1.1 Équations de comportement dynamique du drone
Q14. Isoler l'ensemble du drone E = {S⋃_(i = 1)^(i = 4)S_i} et en déduire les deux équations vectorielles caractérisant son mouvement. Ne pas faire le calcul des éléments de cinétique dans cette question, calculer uniquement les termes provenant des actions mécaniques. On notera δ⃗(G, E/S_0) le moment dynamique au point G de E par rapport à S_0 et R_D^(→−)(E/S_0) la résultante dynamique de E par rapport à S_0.
Q15. Simplifier ces équations dans le cas d'un vol stationnaire (le repère R est alors confondu avec R_0 ). Déterminer, en le justifiant, le signe de chaque ε_i (et donc le type de pas - à gauche ou à droite - de chaque hélice) sachant que ε_1 = 1 et ε_3 = 1 (pas à droite pour les hélices S_1 et S_3 ). Montrer alors que ω_i = ω¯ pour i ∈ {1, 2, 3, 4} où l'on précisera l'expression de ω¯ en fonction de M, g et a. Faire l'application numérique.
3.1.2 Calcul des éléments cinétiques
Q16. Calculer σ⃗(G_i, S_i/S_0) moment cinétique en G_i de S_i par rapport à S_0 et exprimer le résultat dans la base du repère R.
L'expression obtenue à la question précédente peut être simplifiée en considérant la moyenne temporelle de σ⃗(G_i, S_i/S_0) sur une période T_i de rotation d'une hélice.
Q17. Justifier la pertinence de cette hypothèse et montrer que la moyenne temporelle de σ⃗(G_i, S_i/S_0), notée ⟨σ⃗(G_i, S_i/S_0)⟩, sur une période T_i est égale à I_r px⃗ + I_r qy⃗ + J_r(r + εω_i)z⃗, où l'on donnera les expressions de I_r et J_r en fonction des termes de la matrice d'inertie I_(G_i)(S_i).
Un calcul similaire permettrait de montrer que la moyenne temporelle du moment cinétique en G de E par rapport à S_0 est ⟨σ⃗(G, E/S_0)⟩ = Ipx⃗ + Iqy⃗ + Jrz⃗ + ∑_(i = 1)^(i = 4)J_r ε_i ω_i z⃗ où I et J sont des constantes fonctions de I_r, J_r et des données géométriques et cinétiques définies lors du paramétrage.
Dans toute la suite du problème, on utilisera ces deux expressions en confondant les moyennes sur une période avec les quantités définies à l'instant t.
Q18. Développer les deux équations vectorielles obtenues lors de l'isolement du quadrirotor et en déduire 6 équations scalaires projetées sur la base du repère R. L'accélération de la pesanteur sera notée sous la forme suivante: g⃗ = g_1 x⃗ + g_2 y⃗ + g_3 z⃗ où g_1, g_2 et g_3 seront détaillées dans la suite du sujet.
Q19. En isolant chaque hélice S_i, donner les équations supplémentaires permettant de déterminer les évolutions des couples Γ_i.
Les 6 + 4 équations scalaires définies aux deux questions précédentes modélisent le comportement du drone. Ces équations étant non-linéaires, il est souhaitable de les linéariser afin de simplifier l'élaboration des lois de contrôle du drone. Cette approximation est justifiée par le fait que l'on s'intéresse dans cette étude à un comportement du quadrirotor proche d'un vol stationnaire. En pratique, la linéarisation de ces équations donne des résultats expérimentaux très satisfaisants même lorsque le drone se déplace à une vitesse raisonnable.
Pour cela, on suppose donc par la suite que l'on se place autour de la configuration de vol stationnaire et que
ω_i = ω¯ + ω˜_i où ω˜_i est la variation de vitesse angulaire autour du point d'équilibre ω¯, (ω˜_i)/(ω¯) étant un infiniment petit d'ordre 1 (positif ou négatif),
les quantités u, v, w, p, q, r sont faibles et considérées comme des infiniment petits d'ordre 1 (devant la vitesse des pales).
Afin de caractériser l'orientation du drone dans l'espace, une paramétrisation usuelle est l'utilisation des angles décrits sur la figure 8, où ψ est appelé "I'angle de lacet", θ "l'angle de roulis'" et φ "l'angle de tangage'".
De la même manière, on introduit les coordonnées du centre de gravité G du drone par rapport au sol : O_0 G^(→−) = xx⃗_0 + yy⃗_0 + zz⃗_0.
Les hypothèses précédentes impliquent que θ et φ sont également des infiniments petits d'ordre 1 . On montre alors que : θ˙ = q, φ˙ = p et ψ˙ = r.
Aucune hypothèse n'est faite sur la valeur d'équilibre de ψ notée ψ¯, autour de laquelle est linéarisé le système. On a donc les relations suivantes en ce qui concerne les vitesses:
On pose de la même manière que pour les vitesses de rotation des hélices: Γ_i = Γ¯_i + Γ˜_i, où Γ˜_i est la variation de couple moteur (infiniment petit d'ordre 1 devant Γ¯_i ) autour de Γ¯_i, couple moteur nécessaire pour assurer le vol stationnaire et autour duquel se fait la linéarisation des équations.
Figure 8 - Paramétrisation de l'orientation du drone dans l'espace
Q20. Montrer que les équations établies précédemment linéarisées à l'ordre 1 permettent d'aboutir aux soussystèmes définis ci-dessous (on ne cherchera pas à résoudre ces équations). Indiquer pourquoi la structure du comportement dynamique du drone est intéressante pour l'établissement des lois de contrôle du drone.
Ces équations permettent d'appréhender intuitivement la manière dont les vitesses de rotation des hélices doivent évoluer afin de réaliser un mouvement donné.
On considère les quatre mouvements élémentaires illustrés sur la figure 9 (cas numérotés 1 à 4 ).
Q21. En considérant que ω˜˙_i = 0 (régime stationnaire) et en s'aidant des équations précédentes, indiquer pour chaque cas de la figure 9 comment doit on définir les variations de vitesses angulaires ω~_i afin d'obtenir ces différents mouvements. Préciser quels mouvements supplémentaires apparaissent le cas échéant.
Cas 1 : translation verticale
Cas 2 : translation longitudinale
Cas 3 : translation latérale
Cas 4 : rotation propre autour de l'axe vertical (lacet ou pivotement)
Figure 9 - Mouvements élémentaires du quadrirotor
3.2 Modélisation électro-mécanique des moteurs
Chaque hélice est montée directement sur le rotor d'un petit moteur à courant continu dont les caractéristiques sont données en annexe. Tous les moteurs sont supposés identiques. Les équations simplifiées qui caractérisent le comportement dynamique et électrique des moteurs sont les suivantes :
où ω_i est la vitesse angulaire de l'hélice, u_i la tension d'alimentation du moteur, Γ_i le couple moteur, R_m la résistance interne, L_m l'inductance et K_m la constante de couple ( J_r et b sont des constantes caractérisant la dynamique de l'hélice, définies dans les questions précédentes).
On étudie les mouvements autour de la position vol stationnaire. On pose alors u_i = u¯_i + u~_i, où u~_i est la variation de la tension du moteur autour de u¯_i, tension du moteur nécessaire pour assurer le vol stationnaire. Tous les moteurs étant supposés identiques, on pose u¯_i = u¯. De la même manière on note ω_i = ω¯ + ω˜_i et Γ_i = Γ¯_i + Γ˜_i.
Q22. Donner l'expression de u¯ en fonction de ω¯ et des paramètres R_m, K_m et b.
Q23. En prenant ω¯ = 375 rad.s ^(− 1), vérifier que la tension nécessaire pour obtenir un vol stationnaire est compatible avec la tension maximale U_(batt) délivrée par la batterie.
Q24. Déduire des relations caractérisant le moteur une équation couplant Γ˜_i, u˜_i et ω˜_i. Linéariser également l'équation de dynamique reliant ω˜_i et sa dérivée à Γ˜_i.
Q25. Donner l'expression de la constante de temps électrique τ_(el) en fonction de R_m et L_m ainsi que l'expression de la constante de temps mécanique τ_m en fonction de J_r, b et ω¯. Faire l'application numérique.
Q26. Justifier que l'on puisse écrire pour chaque moteur l'équation suivante:
L'objectif de cette partie est de contrôler l'altitude du quadrirotor grâce à un asservissement tenant compte de l'altitude de consigne z_(ref) et de la mesure de distance fournie par le sonar (capteur à ultrason) situé sous le drone et pointant vers le sol.
4.1 Modélisation du sous-système vertical
On considère les équations caractérisant le sous-système vertical SSv de la question 20 ainsi que l'équation simplifiée du moteur définie à la question 26 . On rappelle que w = z˙ avec w la vitesse d'ascension et z l'altitude du centre de gravité du drone. On pose u_z = ∑_(i = 1)^(i = 4)u~_i et on note Z(s) et U_z(s) respectivement les transformées de Laplace de z et u_z. La variable de Laplace est notée s.
Q27. Montrer que
V_z(s) = (Z(s))/(U_z(s)) = (α_z)/(s^2(s + β_z))
où l'on précisera les expressions de α_z et β_z en fonction de R_m, K_m, b, a, M, J_r et ω¯.
4.2 Mesure de l'altitude
Afin de mesurer l'altitude du drone, on fixe un sonar sous la partie inférieure du drone (par exemple le sonar représenté sur la figure 10).
Figure 10 - Sonar SRF10 de Devantech
Un tel sonar fonctionne de la manière suivante:
un système émet un signal qui se propage à une vitesse v_s connue;
un système reçoit ce signal ;
un système mesure la durée Δt entre l'émission et la réception de ce signal.
Q28. En supposant que le drone vole sensiblement à l'horizontal et à une distance suffisamment éloignée du sol, montrer, en vous appuyant sur un schéma, comment un tel capteur permet de mesurer l'altitude du drone z_(mes). Exprimer z_(mes) en fonction de v_s et Δt.
4.3 Élaboration de la commande
On souhaite élaborer une loi de contrôle qui permet au drone d'atteindre l'altitude de référence z_(ref) en tenant compte de la mesure du sonar z_(mes). On suppose que la mesure du sonar est parfaite.
Q29. Réaliser un schéma bloc de l'asservissement, avec un correcteur C_z(s), qui permet de suivre une altitude de consigne z_(ref).
Q30. Justifier simplement que le système est instable avec un correcteur Proportionnel mais qu'un correcteur Proportionnel-Dérivé de la forme C_z(s) = K_z(1 + τ_z s) permet de le stabiliser. Donner la condition sur τ_z correspondante.
Q31. Indiquer pourquoi en pratique on utilise plutôt un correcteur à avance de phase de fonction de transfert C_z(s) = K_z(1 + τ_z s)/(1 + aτ_z s) plutôt qu'un correcteur Proportionnel-Dérivé. Préciser si a < 1 ou a > 1.
Après réglage du correcteur, on obtient la réponse indicielle à un échelon unitaire de la figure 11 pour le système bouclé.
Figure 11 - Réponse indicielle du sous-système vertical bouclé
Q32. Justifier que les critères de précision, dépassement et rapidité du cahier des charges sont respectés.
5 Contrôle du cap du quadrirotor
L'objectif de cette partie est de contrôler le cap du quadrirotor (direction de l'avant du drone par rapport au Nord), angle noté ψ, grâce à un asservissement tenant compte du cap de consigne ψ_(ref) et de la mesure de ψ fournie par le magnétomètre tri-axe.
5.1 Modélisation du sous-système de cap
On considère les équations caractérisant le sous-système de cap SSc de la question 20 ainsi que l'équation simplifiée du moteur définie à la question 26 . On pose u_ψ = ∑_(i = 1)^(i = 4)ε_i u~_i et ω_ψ = ∑_(i = 1)^(i = 4)ε_i ω~_i. On note Ψ(s), U_ψ(s) et Ω_ψ(s) respectivement les transformées de Laplace de ψ, u_ψ et ω_ψ. D'après les parties précédentes, les équations qui caractérisent le mouvement de lacet sont :
où l'on précisera les expressions de K_0, τ_1 et τ_2 en fonction de K_m, R_m, J_r, J, b, ω¯.
5.2 Mesure du cap
Afin de mesurer l'orientation du drone par rapport au Nord, on utilise un magnétomètre tri-axe qui permet de mesurer le champ magnétique dans le repère lié au drone, puisque le capteur est fixé à l'appareil (par exemple le magnétomètre représenté sur la figure 12). En supposant connu le champ magnétique terrestre, il est possible d'en déduire l'angle entre l'avant du drone et le Nord, c'est-à-dire de mesurer l'angle de lacet ψ du drone.
Nous étudions tout d'abord le fonctionnement d'un magnétomètre mono-axe, ce qui permettra ensuite d'en déduire comment un magnétomètre tri-axe permet de mesurer l'angle de cap.
Le magnétomètre mono-axe considéré est un capteur magnéto-inductif dont le principe est illustré sur la figure 13. Il est composé d'un circuit oscillateur à relaxation (circuit RL) dont les éléments principaux sont :
une bobine avec un noyau à grande perméabilité magnétique. La valeur de l'inductance L dépend de la valeur du champ magnétique H colinéaire à l'axe de la bobine suivant une fonction non-linéaire supposée connue L = f(H);
un système appelé "trigger de Schmitt" dont la sortie V_s passe de 0 volt à un potentiel de référence V_r lorsque le potentiel d'entrée V_e atteint un certain seuil V_b, et de V_r à 0 volt lorsque le potentiel d'entrée V_e atteint un certain seuil V_h. Les potentiels V_r, V_b et V_h sont connus et tels que V_r > V_h > V_b. L'impédance d'entrée de ce système est supposée être infinie.
Figure 13 - Circuit élémentaire de détection magnétique
La fonction f est de type gaussien : L = L_0 exp(− (H^2)/(σ^2)) avec H = H_0 + H_(ext) où le champ magnétique H_(ext) est le champ extérieur, supposé constant, que l'on cherche à mesurer et le champ H_0 est celui créé par le courant parcourant la bobine. Ce champ est donné par l'équation H_0 = k_0⟨I⟩, k_0 est une constante connue et ⟨I⟩ la valeur moyenne du courant parcourant la bobine. Les constantes L_0 et σ sont connues. On suppose dans un premier temps que la valeur de la résistance R_b est également connue.
Q34. Tracer, en le justifiant, les évolutions temporelles de V_s, V_e et I en régime établi.
Un système non étudié ici permet de mesurer la période T_0 du signal de sortie V_s.
Q35. Montrer que l'expression de la période d'oscillation T_0 du signal de sortie est de la forme T_0 = L/(R_b)K_0, où K_0 sera donné en fonction de V_r, V_h et V_b.
Q36. Montrer que la mesure de cette période T_0 permet de déterminer le champ H_(ext), dont on donnera l'expression en fonction de T_0, σ, R_b, k_0, K_0, L_0, V_r, V_h, V_b.
En réalité, la valeur de la résistance R_b est fortement dépendante de la température qui n'est pas une variable mesurée par un capteur spécifique. La valeur de la résistance R_b n'est donc pas connue précisément, ce qui dégrade la mesure du champ H_(ext). Pour s'affranchir de cette méconnaissance de R_b, un second trigger de Schmitt est utilisé en parallèle du composant précédent (voir figure 14). On alterne alors l'utilisation d'un trigger et de l'autre grâce aux interrupteurs int et int^– et à un signal d'horloge. Lorsque le système est dans une des deux configurations (int=1 ou int=0), un autre dispositif permet de mesurer la période des oscillations de la tension de sortie correspondante ( V_s ou V_s^′ ) avant de changer de configuration. Les constantes de temps thermiques étant généralement élevées, il est légitime de considérer que la valeur de la résistance R_b est constante durant plusieurs cycles de mesure.
Figure 14 - Circuit complet de détection magnétique
Q37. Justifier que ce système permet de déterminer le champ extérieur H_(ext) en s'affranchissant de l'incertitude sur la valeur de R_b.
Le magnétomètre tri-axe comporte 3 magnétomètres élémentaires mono-axe placés de façon orthogonale alignés suivant les axes du repère ( O, x⃗, y⃗, z⃗ ) du drone. Il mesure donc le champ magnétique extérieur dans ce repère. On suppose connu le champ magnétique extérieur dans le repère terrestre, H⃗_T, qui se décompose de la façon suivante selon les axes x_0^(→−) et y_0^(→−) de R_0, repère fixe par rapport au sol: H⃗_T = H_(Tx)x_0^(→−) + H_(Ty)y_0^(→−).
Q38. Le drone volant sensiblement à l'horizontale, justifier qu'il est possible de remonter à une mesure de l'angle de lacet ψ_(mes) avec seulement 2 magnétomètres placés le long des axes horizontaux du drone (x⃗, y⃗).
Q39. En pratique, la mesure de cap a une fiabilité limitée. Proposer une raison qui explique cet inconvénient.
5.3 Analyse de la réponse indicielle
Un contrôleur proportionnel C_ψ(s) est utilisé afin que le drone puisse atteindre son cap de référence ψ_(ref) en tenant compte de la mesure ψ_(mes) fournie par les magnétomètres. On suppose que cette mesure est parfaite.
Q40. Les figures de l'annexe 2 présentent 4 réponses temporelles à une entrée en échelon unitaire. Déterminer quelle est celle qui correspond à la réponse indicielle du système bouclé. Justifier, sans calcul, pour les autres cas la raison qui invite à les écarter. En déduire la conformité ou non au cahier des charges.
6 Contrôle de l'assiette du quadrirotor
L'objectif de cette partie est de contrôler l'assiette du quadrirotor, c'est-à-dire de contrôler l'angle de roulis θ et l'angle de tangage φ du drone. En particulier, on souhaite pouvoir stabiliser le quadrirotor à l'horizontale pour obtenir un vol stationnaire, c'est-à-dire atteindre un angle de roulis de référence θ_(ref) et angle de tangage de référence φ_(ref) de 0^∘. Pour ce faire, seules les mesures inertielles sont exploitées.
On s'intéresse ici uniquement au contrôle de l'angle de roulis. Le contrôle de l'angle de tangage serait mené de manière similaire à ce qui suit compte-tenu de la similitude des sous-systèmes longitudinaux et latéraux de la question 20.
De manière analogue à l'étude précédent, les trois dernières équations du sous-système longitudinal de la question 20, complétées par les équations simplifiées du moteur, permettent de relier les grandeurs θ et q à la commande relative à ce sous-système u_θ, où on a posé u_θ = u~_3 − u~_1. Cette relation s'exprime sous la forme d'un matrice de transfert V_θ(s) possédant une entrée u_θ et deux sorties θ et q. En supposant que les grandeurs θ et q soient mesurées précisément, une analyse similaire à celles faites dans les parties précédentes montrerait que l'utilisation d'un correcteur proportionnel C_θ(s) et d'un correcteur à avance de phase C_q(s) permet d'atteindre l'angle de référence θ_(ref). Ces deux correcteurs sont situées dans des boucles imbriquées, comme décrit sur la figure 15.
Cependant, les capteurs embarqués sur le drone ne fournissent pas de mesure d'angle ou de vitesse de rotation suffisamment précise. L'étude qui suit montre alors comment la fusion des mesures inertielles fournies par les accéléromètres et les gyromètres permet de remonter indirectement aux grandeurs θ et q nécessaires.
Figure 15 - Stratégie de contrôle de l'angle de roulis
6.1 Mesure accélérométrique et gyrométrique
On considère un accéléromètre dont l'axe de mesure est aligné selon l'axe ( O, x⃗ ) du drone et un gyromètre dont l'axe de mesure est aligné avec l'axe (O, y⃗) du drone. Ces capteurs fournissent les mesures suivantes:
pour un accéléromètre : projection de l'accélération spécifique du drone selon son axe de mesure, où l'accélération spécifique est la différence entre l'accélération du drone et le vecteur accélération de pesanteur (− gz⃗_0);
pour un gyromètre : vitesse angulaire autour de son axe de mesure.
En pratique, l'accélération du drone peut être négligée devant l'accélération de la pesanteur (vol quasistationnaire). Cette approximation est faite dans cette étude.
Q41. En supposant que la mesure accélérométrique n'a pas de défaut, montrer alors qu'elle permet de remonter à la valeur de l'angle de roulis θ. Indiquer pourquoi un autre accéléromètre placé selon l'axe ( O, z⃗ ) ne permettrait pas de déterminer cet angle θ.
Les capteurs inertiels embarqués sont de type MEMS (MicroElectroMechanical Systems). Les avantages de tels capteurs sont leur faible coût, leur faible masse et leur encombrement réduit : un exemple d'unité de mesure inertielle avec 3 gyromètres et 3 accéléromètres de type MEMS est donné sur la figure 16. En revanche, la mesure fournie par ces capteurs comporte certains défauts. Compte-tenu de la question précédente, si on note a_m et q_m respectivement la mesure de l'accéléromètre et celle du gyromètre, le modèle considéré en introduisant ces défauts est le suivant :
a_m, = − gθ + ε_a; q_m, = θ˙ + q_b
où ε_a correspond à du bruit à forte intensité et q_b est une constante, appelée dérive gyroscopique (typiquement q_b = 0, 1^∘/s ).
Q42. Justifier simplement que la mesure accélérométrique permet de ne déterminer ni θ, ni q = θ˙. Montrer que la mesure gyroscopique ne le permet pas non plus.
6.2 Utilisation d'un observateur
Afin d'estimer correctement les grandeurs θ et q qui servent dans les lois de contrôle, on utilise un algorithme de fusion de données appelé "observateur". Cet algorithme utilise à la fois les mesures accélérométriques et les mesures gyroscopiques, entachées de leurs erreurs, pour estimer θ et q de manière suffisamment précise pour
que les lois de contrôle puissent les exploiter (ces lois de contrôle requièrent des mesures faiblement bruitées et sans dérive).
L'observateur Obs_θ, utilisé ici pour le système longitudinal (un observateur équivalent Obs_φ serait utilisé pour le système latéral), est illustré sur la figure 17. Les variables θ^ et q^ sont les estimations de θ et q fournies par l'observateur. Les équations de l'observateur Obs_θ sont les suivantes :
où l_1, l_2 sont des constantes strictement positives.
Figure 17 - Schéma fonctionnel de l'observateur
Q43. En ne considérant pas le bruit accélérométrique ε_a, montrer que l'observateur permet d'estimer asymptotiquement l'angle θ et la dérive q_b sans erreur, c'est-à-dire que les limites en l'infini de e_θ = θ^ − θ et e_b = q^_b − q_b tendent vers 0 . En déduire que l'observateur permet également asymptotiquement d'estimer la vitesse de rotation q sans erreur.
Q44. Montrer que l'observateur permet également de filtrer le bruit sur l'estimation de θ par rapport à l'estimation qui aurait été effectuée à partir uniquement de la mesure accélérométrique : θ^ = − (a_m)/g.
7 Synthèse de la stratégie de contrôle du quadrotor
L'objectif de cette partie est de faire un schéma-bloc de synthèse de la stratégie de contrôle du quadrirotor développée dans cette étude.
Q45. En utilisant la description des différents contrôleurs et observateurs ainsi que les résultats de la modélisation dynamique, compléter les blocs en pointillés du schéma-bloc de synthèse du document réponse et spécifier la matrice P introduite dans ce schéma définie par : P(u˜_1; u˜_2; u˜_3; u˜_4) = (U_θ; U_φ; U_z; U_ψ)
Q46. Pour les sous-systèmes horizontaux, une fonction de plus haut niveau peut être mise en place afin d'atteindre des coordonnées de référence (dans la base ( x_0^(→−), y_0^(→−) )), x_(ref 0), y_(ref 0), définies par un utilisateur. Compléter la zone en tirets sur le schéma-bloc du document réponse de manière à atteindre cet objectif, en ajoutant deux autres boucles de contrôle dont les contrôleurs C_x(s) et C_y(s) ne seront pas explicités.
8 Annexe 1 : Données numériques
Constante générique g = 10 m ⋅ s^(− 2)
Caractéristique du drone M = 0, 9 kg (batterie incluse)
Caractéristiques des hélices a = 1, 6.10^(− 5) N.s^2 b = 1/(375) ⋅ 10^(− 4) N ⋅ m ⋅ s^2 J_r = 3, 4 ⋅ 10^(− 5) kg ⋅ m^2
Caractéristiques de la batterie U_(batt) = 11 V C_(mass) = 200Wh._(kg)^(− 1) K^′ = 0, 16 U.S.I. m^′ = 220 g
9 Annexe 2 : Réponses indicielles pour le sous-système de cap bouclé
Réponse indicielle n^∘1 du sous-système de cap avec correcteur
Réponse indicielle n^∘ 2 du sous-système de cap avec correcteur
Document réponse à rendre avec votre copie
Figure 1 - Chaînes d'énergies et d'informations du drone quadrirotor
Figure 2 - Schéma de synthèse de la stratégie de contrôle du quadrirotor
Questions fréquentes
4 questions
Sur quels chapitres porte ce sujet de modélisation X-ENS PSI 2013 ?
Afficher ou masquer la section
Sur quels chapitres porte ce sujet de modélisation X-ENS PSI 2013 ?
+
Il porte sur la mécanique des fluides et du solide, la modélisation électro-mécanique des actionneurs, la linéarisation de systèmes non linéaires et l'automatique linéaire (asservissements, stabilité), appliquées au pilotage d'un mini-drone.
Le sujet demande-t-il de connaître l'automatique linéaire ?
+
Oui, les parties 4 et 5 utilisent les fonctions de transfert, la transformée de Laplace et l'étude de la stabilité pour concevoir les correcteurs d'altitude et de cap du drone.
Les parties de ce sujet sont-elles indépendantes ?
+
L'énoncé indique que même si certaines parties peuvent être traitées séparément, il est préférable de suivre le questionnement proposé, la modélisation de la partie 3 étant réutilisée dans les parties 4 et 5.
Ce sujet aborde-t-il les capteurs utilisés par le drone ?
+
Oui, il étudie le principe d'un sonar pour la mesure d'altitude (partie 4) et celui d'un magnétomètre magnéto-inductif pour la mesure du cap (partie 5).
Pas de description pour le moment
Commentaires• X ENS Modélisation PSI 2013
Connectez-vous pour participer aux discussions
Partagez vos avis, posez des questions et échangez avec la communauté