Chapitre 7

La vraie personnalité du drone

Pourquoi le drone rebondit-il comme un ressort ?

Chapitre 7 : La vraie personnalité du drone ↗

Le correcteur est un ressort

Mika: June a demandé où vit notre drone sur la carte. Indice : vous vous souvenez du drone rebondissant du chapitre 2 ? Plus on montait Kp\eff{K_p}, plus il faisait « boing ». On aurait vraiment dit un poids au bout d'un ressort.

Theo: « On aurait dit », ce n'est pas une preuve. Mettons-les côte à côte et écrivons les deux équations.

À gauche : une masse de 0,5 kg suspendue à un ressort avec un amortisseur (un petit piston rempli d'huile qui résiste au mouvement). À droite : notre drone, même masse, même traînée, en commande proportionnelle.

D'abord, écrivons toutes les forces qui agissent sur la masse, une par une. On mesure sa position xx depuis le point de repos, vers le haut positif.

  • Le ressort tire vers le repos, d'autant plus fort qu'il est étiré : −k x-\eff{k}\,x. Étire-le deux fois plus, il tire deux fois plus fort.
  • L'amortisseur s'oppose au mouvement, pas à la position : −c x˙-c\,\dot{x}. À l'arrêt, il ne fait rien. En mouvement rapide, il repousse fort. (x˙\dot{x}, c'est la vitesse du chapitre 3.)
  • La gravité abaisse juste un peu le point de repos. En mesurant depuis le repos, on s'en débarrasse.

Force = masse × accélération, et l'accélération, c'est la pente de la pente (chapitre 3). On additionne les forces et on met tout du même côté :

m x¨=−k x−c x˙⟹m x¨+c x˙+k x=0m\,\ddot{x} = -\eff{k}\,x - c\,\dot{x} \quad\Longrightarrow\quad m\,\ddot{x} + c\,\dot{x} + \eff{k}\,x = 0

Mika: Donc l'amortisseur, c'est de l'air qui déteste la vitesse ?

Theo: En gros, oui. Et pour notre drone, l'amortisseur, c'est l'air.

Dans la simulation, la flèche orange sur la masse est la traction du ressort, et la grise la poussée de l'amortisseur. Regarde : la flèche de l'amortisseur disparaît chaque fois que la masse s'arrête un instant en haut ou en bas d'une oscillation.

Chapitre 7 : La vraie personnalité du drone ↗

June: Les courbes sont superposées. Pas semblables. Identiques.

Regarde les deux équations. Le ressort repousse avec une force k x\eff{k}\,x : plus il est étiré, plus il tire fort. Notre correcteur pousse avec Kp(2−h)\eff{K_p}(\sp{2} - \out{h}) : plus on est loin de la cible, plus il pousse fort. Même règle. Le correcteur est un ressort : un ressort invisible, qui tire le drone vers 2 m.

Theo: Donc un correcteur P est un ressort virtuel, et la traînée de l'air cc est un amortisseur virtuel. Tout ce qu'on apprend sur les ressorts, on l'a gratuitement.

Deux boutons de personnalité

Chaque système masse-ressort-amortisseur, et donc chaque drone en commande P, est décrit par seulement deux nombres. Gagnons-les un par un.

À quelle vitesse : la pulsation propre

Enlève l'amortisseur et on revient au chapitre 6 : le ressort oscille comme cos⁡(ωt)\cos(\omega t) avec ω=k/m\omega = \sqrt{k/m}. Cette vitesse, on l'appelle la pulsation propre ωn\omega_n : à quelle vitesse le système veut osciller quand rien ne le freine.

ωn=kmune oscillation compleˋte toutes les 2πωn s\omega_n = \sqrt{\frac{\eff{k}}{m}} \qquad\qquad \text{une oscillation complète toutes les } \frac{2\pi}{\omega_n} \text{ s}

Chapitre 7 : La vraie personnalité du drone ↗

Mika: Ressort plus raide, oscillation plus rapide. Il suffit de pousser k\eff{k} à fond et tout s'améliore !

Un ressort plus raide tire plus fort, donc il oscille plus vite. Une masse plus lourde est plus dure à bousculer, donc elle oscille plus lentement. (Les radians par seconde, c'est la vitesse de rotation du chapitre 5 : un tour complet fait 2π radians, soit un bord long de 2π rayons.)

Theo: Doucement. Au chapitre 2, pousser Kp\eff{K_p} a rendu le drone plus rapide et plus rebondissant. Écoutons d'abord ce que l'amortisseur a à dire.

À quel point ça rebondit : le taux d'amortissement

Maintenant, remets l'amortisseur. C'est quoi, « beaucoup » d'amortissement ? Ça dépend du ressort : un amortisseur qui calme un ressort mou freine à peine un ressort raide. On compare donc à une quantité spéciale, l'amortissement critique ccritc_{\text{crit}} : le plus petit amortissement qui supprime complètement le dépassement.

ccrit=2m kζ=cccrit=c2m kc_{\text{crit}} = 2\sqrt{m\,\eff{k}} \qquad\qquad \zeta = \frac{c}{c_{\text{crit}}} = \frac{c}{2\sqrt{m\,\eff{k}}}

Le taux d'amortissement ζ (la lettre grecque zêta) est notre amortissement exprimé en fraction de celui-ci. C'est un nombre pur, sans unité. ζ = 0 oscille pour toujours, ζ = 1 est exactement critique, et ζ = 0,5 a la moitié de l'amortissement qu'il faudrait pour supprimer le dépassement.

Chapitre 7 : La vraie personnalité du drone ↗

June: Attends. 0,16 ? C'est exactement le ζ du drone dans le premier widget !

Theo: Même masse, même frottement, même raideur, donc même ζ. Le ressort et le drone sont vraiment jumeaux.

Les deux points sur la carte

Retour à la carte de ss. En devinant x=estx = e^{st}, comme aux chapitres 4 et 6, l'équation devient ms2+cs+k=0m s^2 + c s + k = 0. Divise par mm, puis écris les deux coefficients avec nos boutons :

s2+cm⏟2ζωn s+km⏟ωn2=0s^2 + \underbrace{\frac{c}{m}}_{2\zeta\omega_n}\, s + \underbrace{\frac{\eff{k}}{m}}_{\omega_n^2} = 0

Theo: Attends. D'où sort ce 2ζωn2\zeta\omega_n ? On dirait qu'il tombe du ciel.

June: Développe : 2ζωn=2⋅c2mk⋅km=cm2\zeta\omega_n = 2 \cdot \frac{c}{2\sqrt{mk}} \cdot \sqrt{\frac{k}{m}} = \frac{c}{m}. C'est le même nombre, juste renommé, pour que nos deux boutons apparaissent dans l'équation.

Résous-la avec la formule du second degré et voilà les deux valeurs de ss :

s2+2ζωn s+ωn2=0⟹s=−ζωn±ωnζ2−1\begin{aligned} & s^2 + 2\zeta\omega_n\, s + \omega_n^2 = 0 \\ \Longrightarrow\quad & s = -\zeta\omega_n \pm \omega_n\sqrt{\zeta^2 - 1} \end{aligned}

Le signe ± donne deux réponses, une pour chaque point. La position horizontale d'un point, c'est σ (sigma) : à quelle vitesse cette partie du mouvement rétrécit. Sa hauteur, c'est ω : à quelle vitesse elle tourne. Quand l'amortissement est inférieur à 1, les points ont la même position horizontale, mais des hauteurs opposées. À 1 ils se rejoignent ; au-dessus de 1, tous deux sont sur l'axe horizontal.

Nouveaux mots

Réponse indicielle
Comment un système répond à un saut brusque de sa cible, ici de 0 à 1 m. C'est la façon classique de montrer une personnalité.
Temps de réponse à 2 %
Le temps qu'il faut pour que la réponse reste pour de bon à moins de 2 % de la cible.

Joue avec les deux boutons. Regarde les points bleus sur la carte : ce sont les deux valeurs de ss, et en plus de la hauteur où il se stabilise, le mouvement est un mélange de es1te^{s_1 t} et es2te^{s_2 t}. (Pour ζ = 1 exactement, les deux points n'en font qu'un, et le second ingrédient devient t es1tt\,e^{s_1 t}.)

Chapitre 7 : La vraie personnalité du drone ↗

Nouveaux mots

Sous-amorti (ζ<1\zeta < 1)
Les deux valeurs de ss forment une paire miroir hors de l'axe réel, posée sur un cercle de rayon ωn\omega_n. La réponse dépasse et oscille avant de se stabiliser.
Amortissement critique (ζ=1\zeta = 1)
La paire se rejoint sur l'axe réel en un seul point double, donc le mouvement est (A+B t) e−ωnt(A + B\,t)\,e^{-\omega_n t}. La réponse la plus rapide sans dépassement.
Sur-amorti (ζ>1\zeta > 1)
La paire se sépare le long de l'axe réel : l'une part vers la gauche, l'autre se traîne vers zéro. Pas de dépassement, mais c'est mou.

Un dernier détail se cache dans les points sous-amortis : leur hauteur vaut ωn1−ζ2\omega_n\sqrt{1-\zeta^2}, un peu moins que ωn\omega_n. L'amortissement ne fait pas que rétrécir l'oscillation, il la ralentit aussi un peu. C'est la pseudo-pulsation ωd\omega_d, et la simulation l'affiche.

ωd=ωn1−ζ2\omega_d = \omega_n\sqrt{1 - \zeta^2}

Mika: Donc les spirales du chapitre 6, c'était la personnalité du drone depuis le début. Tourner = osciller, rétrécir = se stabiliser !

Plus d'amortissement, c'est toujours mieux ?

June: Facile. Les oscillations, c'est mal, et l'amortissement tue les oscillations. Donc je mets ζ=5\zeta = 5 par sécurité. Le drone le plus sûr de tous les temps.

Prédis d'abord ! Même ressort, même ωn\omega_n. On augmente l'amortissement de ζ=1\zeta = 1 à ζ=3\zeta = 3. Atteint-il la cible plus vite ou plus lentement ?

Chapitre 7 : La vraie personnalité du drone ↗

June: Mon drone « sûr » met une éternité. C'est comme avancer dans du miel.

Mika: Regarde la carte ! Un des points est parti loin à gauche, super rapide. Mais l'autre est tout près de zéro.

Theo: Et este^{st} avec ss proche de zéro s'éteint très lentement. Le rapide a disparu en un clin d'œil. C'est le lent qui commande.

Chaque ingrédient este^{st} du mouvement s'appelle un mode. Le mouvement est un mélange de modes, et une fois les rapides éteints, il ne reste que le plus lent. Pour cette réponse indicielle, c'est donc le mode le plus lent réellement présent qui impose la longue attente.

Trop peu d'amortissement fait osciller ; trop fait se traîner. Entre les deux, il y a un juste milieu. Choisis ζ = 0,7 dans la course : il dépasse de moins de 5 %, mais il arrive à moins de 5 % de la cible bien plus tôt que ζ = 1. Beaucoup de réglages visent un ζ entre environ 0,7 et 1, en échangeant un petit dépassement contre de la vitesse. D'autres tâches peuvent demander un autre compromis.

Retour au drone

Maintenant, le chapitre 2 prend enfin tout son sens. Pour notre drone, la raideur du ressort est le gain :

ωn=Kpm,ζ=c2m Kp\omega_n = \sqrt{\frac{\eff{K_p}}{m}}, \qquad \zeta = \frac{c}{2\sqrt{m\,\eff{K_p}}}

Kp\eff{K_p} est en bas de la formule de l'amortissement. Monter le gain rend le drone plus rapide (plus grand ωn\omega_n), mais moins amorti. Avec Kp=20\eff{K_p} = 20 N/m : ζ=1/(20,5×20)≈0,16\zeta = 1/(2\sqrt{0{,}5 \times 20}) \approx 0{,}16. Très rebondissant, exactement comme on l'a vu. Sur la carte, ses deux valeurs de ss sont très haut et juste un peu à gauche de l'axe vertical. C'est là que vit notre drone.

Theo: Et on ne peut pas avoir plus d'amortissement sans baisser énormément Kp\eff{K_p}, ce qui ramène l'affaissement. Il nous faut un moyen d'ajouter de l'amortissement exprès.

Fais glisser le gain et regarde le compromis tenir en une phrase :

Chapitre 7 : La vraie personnalité du drone ↗

Les flèches ont une longueur et un angle

Mika: Attends. Les points sont sur un cercle de rayon ωn\omega_n, et ζ les fait juste glisser le long du cercle. Donc un point, c'est en fait deux choses : à quelle distance de 0, et dans quelle direction.

Chaque flèche z=a+b iz = a + b\,i a une partie réelle (le « en avant » du chapitre 5) et une partie imaginaire (le « de côté »). Elle peut aussi se décrire autrement : par sa longueur ∣z∣|z| et son angle. Pythagore donne la longueur. Pour une flèche qui pointe vers la droite (a>0a > 0), l'angle est celui dont la pente (la montée divisée par l'avancée) vaut b/ab/a. Il s'appelle l'arc tangente, arctan⁡\arctan : le bouton « annuler » de la fonction tangente.

∣z∣=a2+b2,∠z=arctan⁡ba(a>0)|z| = \sqrt{a^2 + b^2}, \qquad \angle z = \arctan\frac{b}{a} \quad (a > 0)

Chapitre 7 : La vraie personnalité du drone ↗

Le chapitre 5 a montré que multiplier des flèches multiplie leurs longueurs et additionne leurs angles. Diviser doit défaire ça : on divise donc les longueurs et on soustrait les angles.

Theo: Donc 1/(1+i)1/(1+i) : longueur 1/21/\sqrt 2, et l'angle, c'est 45° plus 45°, donc 90° ? Hum. Remultiplie ça par 1+i1+i et ça pointe à 135°, très loin de 1.

June: Moins, alors. Longueur 1/21/\sqrt 2 à −45°. Fois 2\sqrt 2 à +45°, et on obtient une longueur 1 à 0° : exactement 1. Ça colle.

Chapitre 7 : La vraie personnalité du drone ↗

La flèche pâle en pointillés, c'est le jumeau miroir zˉ=a−b i\bar z = a - b\,i du chapitre 6 (les mathématiciens l'appellent le conjugué) : même longueur, angle opposé. Multiplie une flèche par son jumeau et les angles s'annulent : il reste un simple nombre positif, la longueur au carré. Le tableau du chapitre 9 aura besoin exactement de ça :

z zˉ=∣z∣2=a2+b2,(s−iω)(s+iω)=s2+ω2z\,\bar z = |z|^2 = a^2 + b^2, \qquad (s - i\omega)(s + i\omega) = s^2 + \omega^2

Et le cercle ? Un pôle en −ζωn+i ωn1−ζ2-\zeta\omega_n + i\,\omega_n\sqrt{1-\zeta^2} a pour longueur ωn\omega_n. Mesure son angle θ depuis l'axe réel négatif : la partie vers la gauche vaut ωncos⁡θ\omega_n\cos\theta. Donc ζ=cos⁡θ\zeta = \cos\theta : l'amortissement, c'est l'angle.

June: Essaie le deuxième réglage de la simulation : 1 + iωτ. C'est la règle du café du chapitre 3 qui rencontre une oscillation. Diviser par elle rétrécit et fait tourner en arrière, de plus en plus quand l'oscillation accélère, mais jamais au-delà d'un quart de tour. Je parie que la douche s'en soucie.

Nouveaux mots

Longueur ∣z∣|z|
La taille d'une flèche : a2+b2\sqrt{a^2+b^2} pour z=a+b iz = a + b\,i. Multiplier des flèches multiplie leurs longueurs.
Angle ∠z\angle z
La direction d'une flèche, mesurée depuis l'axe réel positif. arctan⁡(b/a)\arctan(b/a) pour une flèche qui pointe vers la droite. Multiplier additionne les angles, diviser les soustrait.
Jumeau miroir zˉ\bar z
La flèche retournée de l'autre côté de l'axe réel, a−b ia - b\,i (le conjugué). z zˉ=∣z∣2z\,\bar z = |z|^2.

Ce qu'on sait maintenant

Ce qu'on a compris

  • Un drone en commande P obéit exactement à la même équation qu'une masse au bout d'un ressort : le correcteur est un ressort virtuel.
  • Deux nombres résument sa personnalité : ωn\omega_n (à quelle vitesse) et ζ\zeta (à quel point ça rebondit).
  • ωn=k/m\omega_n = \sqrt{k/m} est la vitesse d'oscillation sans amortisseur. ζ=c/ccrit\zeta = c/c_{\text{crit}} compare l'amortissement à l'amortissement critique 2mk2\sqrt{mk}, celui qui supprime tout juste le dépassement.
  • Le mouvement est un mélange de deux termes este^{st}. Les deux valeurs de ss sont sur un cercle de rayon ωn\omega_n quand c'est sous-amorti, et se séparent le long de l'axe réel quand c'est sur-amorti.
  • Une flèche a une longueur et un angle (arctan⁡\arctan). Multiplier multiplie les longueurs et additionne les angles ; diviser divise et soustrait. ζ=cos⁡θ\zeta = \cos\theta.
  • L'amortissement ralentit aussi un peu l'oscillation : ωd=ωn1−ζ2\omega_d = \omega_n\sqrt{1-\zeta^2}.
  • Plus d'amortissement, ce n'est pas toujours mieux : au-delà de ζ=1\zeta = 1, la valeur de ss lente se traîne vers zéro et tout ralentit.
  • Pour le drone, plus de KpK_p veut dire moins d'amortissement. C'est pour ça qu'il oscillait de plus en plus.

Theo : « On a trouvé ces valeurs de ss en devinant. Ajoute la gravité, le vent, des colis et un correcteur plus malin, et deviner devient l'enfer. Existe-t-il une machine qui transforme ce calcul différentiel en simple algèbre ? »

Chapitre 7 : La vraie personnalité du drone ↗