Open Source Robotics

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

Fault-Tolerant Control

  • Aussi appelé: FTC
  • Catégorie: Control › Feedback control
  • Mots-clés: fault-tolerance, flight-control, robust-control, reliability, multirotor

Conception de commande qui maintient un système stable et utilisable après des défauts comme la défaillance d'un actionneur ou d'un capteur, en tolérant le défaut ou en le détectant puis en reconfigurant le contrôleur.

Définition

La commande tolérante aux défauts (fault-tolerant control, FTC) vise à maintenir un système en sécurité et, si possible, à lui faire poursuivre sa tâche après une défaillance : un actionneur bloqué, affaibli ou perdu, un capteur biaisé ou hors service, ou un dommage structurel. On la divise généralement en deux approches. La commande tolérante aux défauts passive conçoit un contrôleur fixe unique, souvent à l'aide de techniques de commande robuste, qui reste stable pour un ensemble défini de défauts sans avoir besoin de savoir lequel s'est produit. La commande tolérante aux défauts active détecte et isole le défaut à l'exécution, une étape appelée détection et isolation de défauts (FDI) ou détection et diagnostic de défauts, puis reconfigure le contrôleur, l'allocation de commande ou la mission pour l'adapter au système modifié.

Les options dépendent de la redondance restante. Sur un hexacoptère ou un manipulateur disposant de degrés de liberté en surnombre, un actionneur défaillant peut souvent être compensé en redistribuant les commandes entre les autres par l'allocation de commande. Lorsqu'il n'y a pas d'actionneur de réserve, le contrôleur doit renoncer à quelque chose. Un exemple classique est un quadrirotor qui perd un rotor : avec les trois restants, il ne peut pas commander indépendamment les trois axes de rotation et la poussée totale. Mueller et D'Andrea ont montré en 2014 que l'appareil peut encore voler si on le laisse tourner en continu autour de son axe de lacet et si l'on ne commande que la direction de son axe de poussée et sa position. Un raisonnement semblable s'applique aux avions dont les gouvernes sont endommagées et aux robots qui perdent une articulation ou une jambe.

La tolérance aux défauts concerne toute la boucle, et pas seulement la loi de commande. La détection de défauts doit être assez rapide et fiable pour agir avant que le système ne devienne irrécupérable, et le contrôleur reconfiguré s'appuie souvent sur des estimations d'état elles-mêmes plus difficiles à obtenir après le défaut. Un quadrirotor en rotation, par exemple, est difficile à suivre pour des caméras standard à cause du flou de bougé, et c'est pourquoi l'estimation d'état dans de telles conditions a été étudiée avec des caméras événementielles. Les essais combinent généralement la simulation de défauts injectés, des expériences hardware-in-the-loop et, quand c'est possible, des défauts délibérés sur du matériel captif ou protégé.

Pourquoi c'est important

Les robots et les drones opèrent de plus en plus près des personnes et loin de toute réparation. Une défaillance qui peut être absorbée par le logiciel, au lieu d'exiger du matériel supplémentaire ou de se terminer par un crash, améliore la sécurité et la fiabilité à moindre coût. La commande tolérante aux défauts est aussi un enjeu réglementaire et de certification dans l'aéronautique et d'autres domaines critiques pour la sécurité.

Applications principales

  • Récupération de multirotors après une défaillance de rotor ou de moteur
  • Allocation de commande pour des actionneurs redondants sur avions et drones
  • Poursuite de la manipulation après des défaillances ou des blocages d'articulations
  • Robots à pattes adaptant leur allure après un dommage à une jambe
  • Gestion des défauts de capteurs en estimation d'état et en navigation

En pratique

Une équipe ajoute la gestion des pannes de rotor au logiciel de vol d'un quadrirotor. Un détecteur compare les accélérations angulaires commandées et mesurées par l'IMU et signale la perte d'un rotor dans une courte fenêtre temporelle. À la détection, le contrôleur passe du contrôleur d'attitude en cascade habituel à un contrôleur d'attitude réduite qui laisse l'appareil tourner autour de son axe de lacet tout en inclinant l'axe de rotation pour commander le mouvement horizontal. L'équipe teste la bascule d'abord en simulation avec des pannes injectées, puis sur le matériel avec un rotor commandé à poussée nulle au-dessus d'un filet, et vérifie que le rapport poussée/poids de l'appareil laisse assez de marge pour tenir l'altitude sur trois rotors.

Idées reçues

  • La tolérance aux défauts exige toujours du matériel redondant — certains systèmes, comme les quadrirotors, peuvent rester commandables après la perte d'un actionneur en renonçant à commander un degré de liberté moins important
  • La commande tolérante aux défauts n'est qu'un problème de conception du contrôleur — la détection rapide des défauts et une estimation d'état fiable après le défaut sont souvent les parties les plus difficiles
  • Un système tolérant aux défauts fonctionne aussi bien après un défaut — la reconfiguration sacrifie généralement des performances, comme la commande en lacet ou la capacité de charge utile, au profit d'un fonctionnement sûr continu

Qui devrait le savoir

  • Ingénieurs drones et commande de vol
  • Ingénieurs sécurité et fiabilité pour systèmes autonomes
  • Chercheurs en commande travaillant sur la commande robuste et adaptative
  • Ingénieurs en robotique de terrain qui conçoivent pour l'exploitation à distance

Technologies associées

  • Détection et isolation de défauts (Fault Detection and Isolation, FDI)
  • Allocation de commande (Control Allocation)
  • Commande robuste (Robust Control)
  • Incremental Nonlinear Dynamic Inversion (INDI)
  • PX4 Autopilot

Termes associés

  • UAV
  • Cascaded Control
  • Thrust-to-Weight Ratio
  • Event Camera
  • Visual-Inertial Odometry
  • IMU

Projets associés

  • MAVROS: ROS gateway for MAVLink-compatible autopilots (PX4, ArduPilot)
  • Pegasus Simulator: Photorealistic multirotor simulation on NVIDIA Isaac Sim with PX4-in-the-loop

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