Open Source Robotics

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

Cascaded Control

  • Aussi appelé: cascade control, nested-loop control, inner-outer loop control
  • Catégorie: Control › Feedback control
  • Mots-clés: feedback-control, pid, flight-control, motor-control, control-architecture

Une structure de commande à boucles de rétroaction imbriquées, dans laquelle une boucle externe calcule la consigne d'une boucle interne plus rapide, comme la position au-dessus de l'attitude, elle-même au-dessus de la vitesse angulaire sur un drone.

Définition

La commande en cascade (cascaded control) découpe un problème de commande en boucles de rétroaction imbriquées. La boucle externe régule la grandeur lente qui intéresse l'utilisateur, comme la position, et sa sortie n'est pas une commande d'actionneur mais une consigne pour une boucle interne qui régule une grandeur intermédiaire plus rapide, comme la vitesse, l'attitude ou le courant. Chaque boucle n'a à traiter qu'une partie de la dynamique, ce qui simplifie la conception et le réglage des contrôleurs, et la boucle interne rejette les perturbations, comme une rafale ou un couple de charge, avant qu'elles n'atteignent la variable externe.

La structure fonctionne le mieux lorsque la boucle interne est beaucoup plus rapide que la boucle externe. La boucle externe peut alors traiter la boucle interne comme si elle suivait sa consigne immédiatement. Une règle empirique courante consiste à rendre chaque boucle interne plusieurs fois plus rapide en bande passante que la boucle qui l'entoure, souvent d'un facteur d'environ cinq à dix. Les boucles se règlent de l'intérieur vers l'extérieur : la boucle la plus interne d'abord, puis chaque boucle externe avec les boucles internes fermées. Les limites doivent être transmises entre les niveaux, par exemple un angle d'inclinaison ou un courant maximal, et les boucles externes ont besoin d'un anti-windup pour ne pas continuer à intégrer l'erreur pendant que la boucle interne est saturée.

Deux exemples sont quasi universels en robotique. Les variateurs de moteurs électriques utilisent une boucle de courant (couple) à l'intérieur d'une boucle de vitesse, elle-même à l'intérieur d'une boucle de position. Les contrôleurs de vol des multirotors utilisent un contrôleur de position qui produit une accélération désirée, convertie en une poussée totale et une attitude désirée ; un contrôleur d'attitude produit ensuite des consignes de vitesse angulaire ; et un contrôleur de vitesse angulaire produit des couples qu'un mixeur transforme en commandes individuelles des moteurs. Les boucles externes peuvent être des contrôleurs PD, PID ou fondés sur un modèle, et le niveau position est parfois remplacé par une commande prédictive par modèle tout en conservant les boucles internes d'attitude et de vitesse angulaire. La limite de la commande en cascade est qu'elle ignore le couplage entre niveaux : les manœuvres agressives qui exigent des performances proches de la bande passante de la boucle interne, ou les dynamiques fortement couplées, sont mieux traitées par des contrôleurs qui considèrent le système complet d'un seul tenant.

Pourquoi c'est important

La plupart des drones commerciaux, des variateurs de moteurs et de nombreuses articulations de robots sont commandés par des boucles en cascade ; les ingénieurs rencontrent donc cette structure chaque fois qu'ils règlent, déboguent ou étendent du matériel réel. Comprendre la séparation des bandes passantes et les interfaces entre boucles explique de nombreux problèmes courants, d'un suivi de position paresseux aux oscillations causées par une boucle interne mal réglée.

Applications principales

  • Contrôleurs de vol de multirotors avec boucles de position, d'attitude et de vitesse angulaire
  • Variateurs de servomoteurs avec boucles de courant, de vitesse et de position
  • Commande articulaire de bras robotiques et de robots à pattes
  • Commande de procédés, comme la régulation de température et de débit
  • Combinaison d'une boucle externe prédictive par modèle avec des boucles internes de suivi rapides

En pratique

Sur un drone de course, le planificateur de l'équipe envoie des références de position, de vitesse et d'accélération. Une boucle externe de position PD, exécutée à une fréquence plus basse, calcule une accélération désirée, y ajoute la gravité et l'accélération d'anticipation, et transforme le résultat en une poussée collective et une direction de poussée désirée. Une boucle interne d'attitude proportionnelle convertit l'erreur d'attitude en consignes de vitesse angulaire, que la boucle de vitesse angulaire du contrôleur de vol suit à une fréquence bien plus élevée grâce à la rétroaction du gyroscope. Quand le drone oscille en vol stationnaire, l'équipe règle d'abord la boucle de vitesse angulaire seule, puis la boucle d'attitude, et seulement ensuite les gains de position, au lieu d'ajuster la boucle externe pour compenser une boucle interne mal réglée.

Idées reçues

  • N'importe quels contrôleurs peuvent être empilés en cascade — la structure repose sur une boucle interne nettement plus rapide ; sans cette séparation, les boucles interagissent et peuvent devenir instables
  • Les boucles en cascade peuvent être réglées dans n'importe quel ordre — les boucles internes doivent être réglées en premier, car le comportement de la boucle externe dépend de la réponse de la boucle interne
  • La commande en cascade est dépassée par rapport à la commande prédictive par modèle — de nombreux systèmes fondés sur la MPC exécutent encore des boucles internes en cascade pour l'attitude, la vitesse angulaire ou le courant, la MPC ne remplaçant que le niveau externe

Qui devrait le savoir

  • Ingénieurs drones et commande de vol
  • Ingénieurs en commande de moteurs et en variateurs
  • Ingénieurs en robotique qui règlent les contrôleurs d'articulations et de bases mobiles
  • Étudiants qui apprennent la commande par rétroaction en pratique

Technologies associées

  • Commande PID (PID Control)
  • PX4 Autopilot
  • Betaflight
  • Commande vectorielle (Field-Oriented Control)
  • Anti-windup (Anti-Windup)

Termes associés

  • PID Controller
  • UAV
  • Differential Flatness
  • Model Predictive Control
  • Thrust-to-Weight Ratio
  • Fault-Tolerant Control

Projets associés

  • MAVROS: ROS gateway for MAVLink-compatible autopilots (PX4, ArduPilot)

Vidéos

  • Introduction to Cascade Control: LearnChemE

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