Open Source Robotics

Une collection organisée de projets, outils et logiciels robotiques open source de haute qualité.

Feedback Linearization

  • Aussi appelé: exact linearization, nonlinear dynamic inversion, NDI
  • Catégorie: Control › Feedback control
  • Mots-clés: nonlinear-control, model-based-control, manipulator-control, dynamics, trajectory-tracking

Une technique de commande non linéaire qui utilise un modèle du système pour annuler ses non-linéarités par retour d'état, de sorte que la conception de commande linéaire standard puisse être appliquée au résultat.

Définition

Linéarisation par bouclage (feedback linearization) : méthode de commande des systèmes non linéaires qui consiste à les transformer algébriquement en systèmes linéaires. Le contrôleur utilise un modèle de la dynamique pour calculer une entrée qui annule les termes non linéaires et introduit une nouvelle entrée virtuelle, par laquelle le système en boucle fermée se comporte comme un système linéaire simple, souvent une chaîne d'intégrateurs. On conçoit ensuite pour ce système linéaire un contrôleur linéaire classique, comme une loi proportionnelle-dérivée ou un placement de pôles. Contrairement à la linéarisation autour d'un point de fonctionnement, la compensation est exacte partout où le modèle est valable.

En robotique, l'exemple le plus familier est la commande par couple calculé (computed torque control) des bras manipulateurs. La dynamique de corps rigides d'un bras s'écrit M(q)q̈ + C(q, q̇)q̇ + g(q) = τ. Choisir le couple τ = M(q)v + C(q, q̇)q̇ + g(q) annule les termes d'inertie, de Coriolis et de gravité et laisse q̈ = v pour chaque articulation. La nouvelle entrée v peut être une loi PD sur les erreurs de position et de vitesse articulaires plus une accélération désirée, ce qui donne une dynamique d'erreur linéaire découplée, avec des gains choisis directement pour la réponse souhaitée. La commande dans l'espace opérationnel applique la même idée en coordonnées de l'effecteur final.

La théorie distingue la linéarisation entrée-état, où l'état entier est rendu linéaire, de la linéarisation entrée-sortie, où seule la relation entre l'entrée et une sortie choisie est linéarisée. Dans le cas entrée-sortie, on dérive la sortie jusqu'à ce que l'entrée apparaisse, et le nombre de dérivations est le degré relatif. Si le degré relatif est inférieur à l'ordre du système, une partie de la dynamique, la dynamique interne ou dynamique des zéros, est cachée de la sortie et doit être stable pour que l'approche fonctionne ; les systèmes où elle est instable sont dits à non-minimum de phase.

La principale faiblesse est la dépendance au modèle. La compensation n'est exacte que si le modèle est exact ; des erreurs sur la masse, le frottement ou le comportement des actionneurs laissent des non-linéarités résiduelles que la boucle externe linéaire doit absorber. Les contrôleurs pratiques ajoutent des termes robustes ou adaptatifs, une action intégrale, ou des modèles appris de la dynamique résiduelle. La saturation des entrées peut aussi rompre la compensation lorsque le couple requis dépasse ce que les actionneurs peuvent fournir.

Pourquoi c'est important

La linéarisation par bouclage relie la dynamique non linéaire des robots à la vaste boîte à outils de la commande linéaire, ce qui explique pourquoi la commande par couple calculé reste une méthode standard pour les bras manipulateurs et pourquoi de nombreux contrôleurs de robots à pattes et de robots aériens reprennent la même idée. Comprendre ses hypothèses explique à la fois pourquoi les contrôleurs fondés sur des modèles peuvent suivre avec précision et pourquoi leurs performances se dégradent lorsque le modèle est faux.

Applications principales

  • Commande par couple calculé — suivi de trajectoire pour bras manipulateurs
  • Commande dans l'espace opérationnel — contrôle du mouvement et de l'effort de l'effecteur final en coordonnées de tâche
  • Commande de quadrirotor — annulation des dynamiques non linéaires d'attitude et de poussée pour le suivi
  • Marche bipède — linéarisation de sorties choisies dans les contrôleurs à dynamique des zéros hybride
  • Suivi de chemin pour robots mobiles — linéarisation des modèles cinématiques de véhicules à roues

En pratique

Une équipe qui commande un bras robotisé construit généralement son modèle dynamique à partir de l'URDF avec une bibliothèque de dynamique des corps rigides telle que Pinocchio ou RBDL, identifie les paramètres d'inertie et de frottement à partir de mouvements d'essai, et implémente la commande par couple calculé dans une boucle temps réel au niveau du couple articulaire. Elle règle ensuite les gains PD externes de chaque articulation pour obtenir la raideur et l'amortissement souhaités, et compare couples commandés et couples mesurés pour repérer où le modèle est inexact. Lorsque le suivi se dégrade à grande vitesse ou sous charge, elle affine le modèle, ajoute une compensation du frottement ou un terme résiduel appris plutôt que d'augmenter simplement les gains de retour.

Idées reçues

  • La linéarisation par bouclage équivaut à linéariser autour d'un point de fonctionnement — elle annule exactement les non-linéarités sur une région en utilisant le modèle complet, au lieu d'approximer près d'un point
  • Le résultat est robuste parce que la boucle fermée est linéaire — il dépend d'un modèle exact, et les erreurs de modèle laissent des termes non linéaires non compensés
  • Tout système non linéaire peut être linéarisé par bouclage — des conditions sur la structure du système doivent être remplies, et les systèmes à non-minimum de phase ne peuvent pas être traités directement
  • Des gains de retour plus élevés corrigent les erreurs de modèle — ils peuvent masquer les erreurs mais amplifient le bruit et excitent des flexibilités non modélisées ; améliorer le modèle est généralement plus efficace

Qui devrait le savoir

  • Ingénieurs automaticiens travaillant sur des bras manipulateurs et des robots à pattes
  • Étudiants en robotique qui apprennent la commande non linéaire et la commande fondée sur des modèles
  • Développeurs de contrôleurs de vol pour drones
  • Chercheurs qui combinent modèles appris et commande fondée sur des modèles

Technologies associées

  • Commande par couple calculé (Computed Torque Control)
  • Commande dans l'espace opérationnel (Operational Space Control)
  • Pinocchio
  • Platitude différentielle (Differential Flatness)
  • Commande adaptative (Adaptive Control)
  • Commande par modes glissants (Sliding Mode Control)

Termes associés

  • Differential Flatness
  • PID Controller
  • Torque Control
  • Model Predictive Control

Projets associés

  • Drake: MIT robotics toolbox for model-based dynamics, optimization, and control system design
  • DART: C++ physics engine for articulated rigid body dynamics and robotics simulation
  • frax: JAX library for fast, differentiable robot kinematics, dynamics and inverse kinematics

Vidéos

  • Easy Introduction to Feedback Linearization - Control Engineering Tutorials: Aleksandar Haber PhD

Ce site nécessite JavaScript. Veuillez activer JavaScript pour explorer nos projets de robotique open source.