Précédent : Présentation générale et
objectifs Remonter : Projet ICARE, Instrumentation, Commande et
Suivant : Grands domaines d'application
Les mécaniques de robots sont généralement conçues en fonction des applications et tâches auxquelles on les destine. Une première classification permet de distinguer trois grandes catégories, à savoir : i) les bras manipulateurs, avec une forte représentation en milieu manufacturier dans les domaines de l'assemblage et de la manutention, ii) les robots mobiles sur roues, dont la mobilité permet d'aborder des applications plus diversifiées (robotique manufacturière, mais aussi de service et de transports), et iii) les robots à pattes, dont la complexité et l'étude plus récente et inachevée expliquent qu'ils soient encore largement cantonnés aux expérimentations de laboratoire. Cette classification, bien qu'usuelle, ne suffit pas à entièrement rendre compte de la variété des mécanismes robotiques. Il faudrait par exemple y ajouter tous les mécanismes hybrides, résultant de l'association bras manipulateur/base mobile, ainsi que les véhicules marins robotisés (de surface et sous-marins).
Chaque catégorie de robots induit des caractéristiques de mouvement ainsi que des problèmes de commande spécifiques. Les formalismes mathématiques (de Newton, d'Euler-Lagrange,...) universellement utilisés pour écrire les équations de la dynamique, génériquement non-linéaires, de ces systèmes sont classiques et relativement bien maîtrisés. À ce niveau, les différences entre bras manipulateurs et véhicules sur roues résultent principalement de l'existence de deux grands types de liaisons cinématiques. De façon générale, ces liaisons (ou contraintes) sont exclusivement holonômes, c'est-à-dire complètement intégrables, dans le cas des bras manipulateurs, alors que la liaison roue-sur-plan qui caractérise les robots mobiles est nonholonôme (i.e. non complètement intégrable). Pour cette raison, il est usuel de dire que les bras manipulateurs sont des systèmes mécaniques holonômes, et que les robots mobiles (sur roues) sont nonholonômes. Une propriété structurelle immédiate d'un mécanisme holonôme est l'égalité de la dimension de l'espace de configuration et du nombre de degrés de liberté (i.e. la dimension de l'espace des vitesses instantanées) du système. Le fait que la dimension de l'espace de configuration d'un système nonholonôme soit, quant à elle, strictement supérieure au nombre de degrés de liberté est, de façon bien compréhensible, source d'une plus grande difficulté à commander ce type de système.
L'application de théorèmes classiques de géométrie différentielle, repris dans le cadre de la Théorie de la Commande, permet toutefois de déduire une propriété fonctionnelle importante, commune aux deux types de systèmes lorsque ceux-ci sont complètement actionnés (i.e. possèdent un actionneur par degré de liberté), à savoir la propriété d'être localement commandables en temps petit en tout point de l'espace d'état. Il s'agit d'une propriété de commandabilité forte puisqu'elle signifie essentiellement que tout point voisin peut être atteint en un temps arbitrairement court --à condition de ne pas imposer de limitations sur les actionneurs-- tout en maintenant l'état transitoire du système dans le voisinage du point initial.
Le cas de systèmes sous-actionnés, pouvant correspondre à un fonctionnement nominal pour lequel la stabilité naturelle de certaines composantes de l'état (le roulis d'un navire, par exemple) permet de faire l'économie d'un ou plusieurs actionneurs, ou encore à un mode de fonctionnement dégradé (panne d'actionneur), est beaucoup plus complexe, et a jusqu'à présent résisté aux tentatives --encore peu nombreuses, il est vrai-- de classification basée sur les différentes notions de commandabilité. Tout juste est-il possible de dire que certains de ces systèmes restent commandables dans le sens évoqué précédemment, alors que d'autres perdent cette propriété tout en étant commandables en un sens plus faible, et que d'autres encore deviennent non commandables.
La commandabilité d'un système robotique complètement actionné n'implique pas pour autant que la synthèse de lois de commande appropriées soit simple. Le cas le plus favorable est celui des bras manipulateurs holonômes dont les équations sont linéarisables par retour d'état statique. Cette propriété permet de dire que ces systèmes sont «faiblement» non-linéaires. La transposition des techniques classiques de commande des systèmes linéaires, pour la réalisation d'objectifs de commande élémentaires (tel que le suivi de trajectoires articulaires), constitue une alternative viable, d'ailleurs largement utilisée dans la pratique. À contrario, le modèle linéarisé d'un robot mobile nonholonôme, déterminé en une configuration d'équilibre quelconque, n'est pas commandable. La linéarisation des équations de ce robot par retour d'état dynamique, lorsqu'elle est possible, présente toujours aussi des singularités aux points d'équilibre. Le point peut-être le plus marquant, de par ses implications sur les plans pratique et théorique, est qu'il n'existe pas de retour d'état continu, fonction uniquement de l'état du système, capable de stabiliser asymptotiquement une posture désirée. Il souligne le caractère fondamentalement non-linéaire de ce type de système et la nécessité de recourir à des techniques de commande se démarquant profondément des méthodes classiquement utilisées dans le cadre des systèmes linéaires ou linéarisables.
Le cas des robots à pattes, et de la locomotion articulée en général, est encore très différent en ce que ces systèmes échappent, pour la plupart, à la classification holonôme/nonholonôme évoquée précédemment. Leur mise en équations requiert de décomposer le mouvement en plusieurs phases (selon le nombre de pattes en appui sur le sol), celles de vol balistique (lorsqu'aucune patte ne touche le sol) impliquant souvent des liaisons nonholonômes de par la conservation du moment cinétique, ainsi que la modélisation de phénomènes d'impact intervenant aux instants où une patte rencontre le sol. L'analyse du fonctionnement de ces systèmes mécaniques est étonnamment complexe, même pour les plus simples d'entre eux (tels que le compas --bipède-- marcheur et le monopode --unijambiste-- sauteur). Elle augmente encore à mesure que l'on cherche à pousser la correspondance entre certains fonctionnements nominaux de ces systèmes et les allures des systèmes biologiques (telles que la marche, la course, le trot, le galop,...) de structure comparable. Il est maintenant communément admis, bien qu'imparfaitement compris, que l'existence de telles allures (pseudo-périodiques), et les mécanismes de transition entre elles, sont étroitement liés à des considérations de consommation énergétique. Dans cette optique, la commande a pour rôle premier «d'identifier» les trajectoires pour lesquelles cette consommation est minimale, et de les stabiliser.
Un des objectifs de recherche du projet ICARE est de faire progresser les solutions de commande de ces différents systèmes robotiques. Cette recherche est fédératrice de collaborations (passées, présentes, et futures) avec plusieurs projets de l'Inria, les projets MIAOU (Jean-Baptiste Pomet), et BIP (Bernard Espiau, Ambarish Goswami), en particulier.
Dans ce contexte, les travaux menés au sein du projet ICARE sont principalement axés sur les aspects de stabilisation par retour d'état. Dans le cas des bras manipulateurs, ils ont abouti à l'approche dite par fonctions de tâche [4] qui représente aujourd'hui le cadre standard utilisé pour aborder les problèmes de commande référencée capteurs. Nos études de commande de robots mobiles [5] sont, quant à elles, à l'origine de la théorie naissante de la stabilisation des systèmes non-linéaires par retour d'état continu instationnaire.
Lors de la réalisation d'une tâche, un système robotique est amené à interagir avec son environnement local. Cette interaction peut prendre différents aspects : actions de la part du robot sur son environnement (assemblage, manutention...), réactions vis-à-vis d'événements provenant de cet environnement (évitement d'obstacles, coopération avec d'autres systèmes automatisés...). Une des clés de l'autonomie en robotique réside dans le contrôle de cette interaction entre robot et environnement à tous les niveaux de la tâche. En premier lieu, lors de la planification de la tâche, cela se fera par l'acquisition, la modélisation et la manipulation des connaissances sur l'environnement et sur la tâche. Enfin, durant l'exécution où il s'agira d'exploiter les données perceptuelles pour adapter au mieux le comportement du système aux conditions de la tâche qu'il réalise.
La modélisation d'environnement en vue de la planification des actions robotiques est un thème majeur en robotique. Il se décline en de nombreuses variantes suivant la connaissance a priori dont on dispose : d'une connaissance complète permettant la planification hors ligne de la tâche jusqu'à une absence totale de connaissance nécessitant une acquisition en ligne du modèle durant une phase d'exploration. On a coutume de distinguer différentes problématiques en fonction du but de la perception : i) percevoir pour planifier un déplacement, ii) percevoir pour se localiser. Dans le premier cas, on fera une distinction supplémentaire entre la construction de modèles géométriques destinés à la planification de trajectoires continues libres d'obstacle et la construction de modèles topologiques destinés à la planification de chemins dont l'ensemble constitue le graphe des points de passage permettant d'aller d'un lieu à un autre. Concernant les modèles géométriques, ils seront fréquemment réduits, dans le cas d'environnements d'intérieurs, à une représentation polygonale des obstacles obtenue grâce à un balayage horizontal d'un télémètre (laser ou ultrason). Malgré cette apparente simplicité, la construction et la mise à jour de tels modèles demeurent difficiles notamment au niveau de la gestion des incertitudes lors de la fusion de plusieurs acquisitions durant le déplacement du robot. Les modèles topologiques sont des représentations plus abstraites pouvant être construites par une structuration des modèles géométriques (segmentation en régions connexes définissant des lieux). Leur utilisation ouvre sur une autre problématique qui est la recherche et la reconnaissance des points de passage entre différents lieux (par exemple des portes dans une scène d'intérieur) avec la mise en oeuvre de techniques de reconnaissance des formes.
Dans le cas de la perception dans un but de localisation, la problématique est un peu différente. Il s'agit alors de maintenir une estimée de l'état du robot, (en général, sa position et son orientation) durant son déplacement. Les techniques utilisées sont celles du filtrage. Afin de compenser les dérives introduites par la plupart des capteurs proprioceptifs (odomètres, centrales inertielles...), la majorité des approches, qualifiées d'hybrides, utilise des données acquises sur l'environnement par le biais de capteurs extéroceptifs pour effectuer un recalage sur des structures caractéristiques de la scène (amers). La mise en oeuvre de ce type d'approche soulève de nombreux problèmes quant à la sélection, l'extraction fiable et l'identification de ces amers dans le cas d'environnements non connus a priori.
Nous essayons actuellement d'appréhender dans un même
formalisme le problème de la localisation et celui de la
modélisation géométrique de l'environnement en relaxant au
maximum les hypothèses sur la connaissance a priori disponible
sur l'environnement. Celà nécessite de briser le cycle
mauvaise localisation mauvaise
reconstruction
mauvaise
localisation. Les approches mises en oeuvre s'appuient sur
deux idées : i) faire coopérer au mieux les différentes
modalités sensorielles (proprio et extéroceptives) par le biais
de stratégies de perception active, ii) utiliser des lois
de commande référencée capteurs pour imposer des contraintes sur
les problèmes de localisation et de modélisation géométrique et,
de ce fait, les rendre mieux conditionnés. Des études sont
également menées, toujours en s'appuyant sur des stratégies de
perception active, dans le domaine de la reconnaissance des
formes afin d'identifier des structures caractéristiques de
l'environnement (portes, fenêtres) pouvant servir d'amers ou
caractériser des points de passage entre lieux d'un modèle
topologique.
De même qu'il est important de prendre en compte le processus de perception très tôt au niveau de la planification de la tâche, il est tout aussi indispensable de contrôler l'interaction entre le robot et son environnement lors de son exécution. Celà se traduit par la prise en compte explicite d'informations perceptuelles, d'une part dans la constitution de boucles de commande robustes (aspect continu), et d'autre part dans la détection d'événements externes nécessitant une modification du comportement du système (aspect réactif). Dans les deux cas, il s'agit de pouvoir robustifier le comportement du système face à une certaine variabilité des conditions d'exécution de la tâche. Cette variabilité peut provenir d'erreurs de mesures ou de modèle dues aux capteurs ou aux systèmes commandés, mais elle peut également provenir de l'environnement qui peut être mal connu ou incertain. Au niveau des lois d'asservissement, il s'agit de synthétiser des schémas de commande en boucle fermée sur les informations perceptuelles traduisant au mieux les objectifs de la tâche. L'utilisation de lois de commande référencée capteurs et du formalisme des fonctions de tâche, permet de traduire ces objectifs en termes de régulation d'une fonction de sortie qui pourra, suivant la tâche, être exprimée soit dans l'espace de configuration du système commandé soit, directement, dans l'espace de perception. L'aspect réactif vis-à-vis d'événements extérieurs perturbant le déroulement de la tâche requiert, d'une part, la détection de ces événements et, d'autre part, d'associer à leur détection un nouveau comportement du système. Dans le cas de la perception, ces deux aspects peuvent être élégamment réalisés en utilisant le formalisme des capteurs logiques introduits par Henderson.
Un axe de recherche est consacré à l'analyse et la synthèse de lois de commande référencées capteurs. Les formalismes utilisés (fonctions de tâche, liaisons virtuelles) permettent de définir ces lois à tous les niveaux de la spécification jusqu'à l'implémentation effective. En associant à ces lois de commande un comportement logique, il est alors possible de définir des actions élémentaires référencées capteurs (par exemple, suivi de mur) pouvant être manipulées au niveau de la planification tout en garantissant une bonne robustesse au niveau de l'exécution. La généricité des formalismes permet d'envisager leur application à différents capteurs utilisés en robotique (odométrie, capteurs d'effort, centrale inertielle, proximétrie, vision locale,...).
Participants : Soraya Arias , Jean-Jacques Borrelly
, Ève Coste-Manière , Konstantinos Kapellos ,
Daniel Simon , Nicolas Turro
Mots-clés : architecture de contrôle,
contrôle/commande, système embarqué, programmation orientée
domaine, vérification formelle, environnement de programmation,
temps réel
Un des problèmes principaux de la programmation des systèmes robotiques est d'aborder dans un cadre cohérent la description de l'évolution dynamique des deux composantes --continue et discrète-- de ces systèmes. Ceci nécessite d'intégrer différents formalismes, trop souvent spécialisés dans un domaine précis et déconnectés les uns des autres. L'étude des architectures de contrôle [CME98] est primordiale pour développer concepts et méthodes permettant de gérer la complexité de la spécification et de l'analyse de la globalité du système. Nous menons cette étude en collaboration avec B. Espiau (projet BIP) et R. Pissard-Gibollet (SERVICE ROBOTIQUE) de l'U.R. Rhône-Alpes.
L'architecture de contrôle ORCCAD [1] propose actuellement deux niveaux : le niveau fonctionnel, où les aspects commande en temps discrétisé sont prépondérants, et le niveau contrôle, qui gère principalement les aspects réactifs. Au niveau fonctionnel, les actions élémentaires sont définies sous forme de TâCHES-ROBOT : ce concept clé spécifie dans la même entité une partie algorithmique (loi de commande) et une partie logique réactive. Il s'agit d'un objet informatique hybride, à l'interface des aspects temps continu et discret. Au niveau contrôle, les actions complexes sont spécifiées sous la forme de PROCéDURES-ROBOT par composition structurée et hiérarchique de TâCHES-ROBOT et de traitements d'exception. Nous proposons ainsi, dans un environnement cohérent, un ensemble d'outils intégrés permettant de programmer, de valider et de générer, de manière transparente pour l'utilisateur, ces méthodes et concepts bien formalisés.
La généricité de cette approche étant pressentie, son adéquation à d'autres types d'applications implique une adaptation spécifique aux domaines envisagés : traitement du signal, vision [11].
De plus, afin d'étudier la portabilité des outils associés à cette méthodologie, des implémentations standards (utilisation de la norme POSIX conforme à différents systèmes d'exploitation) des entités manipulées sont analysées et réalisées.