Projet : BIP

previous up next contents
Précédent : Modélisation et commande Remonter : Résultats nouveaux Suivant : Contrôle/commande de systèmes robotiques complexes


Sous-sections


   
Perception et simulation



Participants : N. Andreff, L. France.

Étalonnage pince-caméra

Suite au travail effectué l'an passé, de nouveaux algorithmes d'étalonnage pince-caméra (c.-à-d. la détermination de la rotation et de la translation séparant une caméra de la pince du robot sur lequel elle est fixée) ont été développés en relation avec le projet européen VIGOR : une méthode linéaire d'étalonnage pince-caméra et une méthode linéaire d'auto-étalonnage pince-caméra (publiées dans [[26]]) et une méthode améliorée d'étalonnage pince-caméra en ligne.

Méthode linéaire

Cette méthode se place dans la lignée des méthodes classiques [TL89,HD95,DBC96] qui résolvent un système matriciel de la forme AX = XB Aet B sont des mouvements connus (rotation/translation) de la caméra et de la pince et X contient la rotation et la translation recherchée. Ces méthodes utilisent des représentations réduites (donc non-linéaires) des rotations. De plus, ces représentations réduites sont mal définies lorsque les rotations sont faibles. Pour éviter cette indétermination, nous avons conservé la représentation matricielle. On peut alors exprimer les équations de manière purement linéaire. Cette méthode linéaire permet, en outre, l'étude algébrique approfondie du problème d'étalonnage pince-caméra. Elle donne ainsi lieu à une classification des mouvements d'étalonnage.

Auto-étalonnage pince-caméra

Toutes les méthodes présentent l'inconvénient de nécessiter une intervention humaine. En effet, elles requièrent toutes l'utilisation d'une mire d'étalonnage, c'est-à-dire un objet dont on possède un modèle géométrique. Cette mire, placée par l'opérateur humain dans le champ de vision de la caméra, sert à calculer les déplacements de la caméra. Cependant, dans le domaine de la vision par ordinateur et, plus particulièrement, en géométrie, il existe des méthodes, dites de reconstruction euclidienne tridimensionnelle. Ces méthodes permettent de déterminer la structure géométrique d'une scène inconnue à partir d'images de cette scène prises de diverses positions de la caméra. En ce qui nous concerne ici, elles permettent surtout de déterminer les déplacements reliant chacune des positions de la caméra. Cela dit, ces déplacements ne sont définis qu'à un facteur d'échelle près car, comme la scène est inconnue, il reste une ambiguïté impossible à lever : ``La caméra voit-elle une scène de grande taille depuis un point de vue éloigné ou est-elle proche d'une scène de petite taille ?''.

En intégrant ce facteur d'échelle aux diverses inconnues de la méthode linéaire d'étalonnage pince-caméra, on obtient une méthode linéaire d'auto-étalonnage pince-caméra.

Étalonnage en ligne

Dans le cadre d'un séjour de deux mois au Fraunhofer Institut für Informations und Datenverarbeitung (FhG-IITB), à Karlsruhe (Allemagne), ce travail sur l'étalonnage en ligne a été poursuivi en remplaçant le filtre de Kalman par un filtre de Kalman étendu.

Simulation graphique 3D d'un robot bipède

Un des thèmes de l'équipe est la spécification et la réalisation d'un outil graphique pour la simulation et l'animation 3D du robot bipède. Ce simulateur doit permettre l'animation virtuelle du robot muni de capteurs, soumis à des commandes en boucle fermée, et interagissant avec son environnement. Cette simulation dynamique d'un robot marcheur est nécessaire à l'étude des commandes en boucle fermée qui seront mises en oeuvre sur le robot réel. En effet, elle aura pour fonction de valider le comportement d'une commande du robot dans un environnement, en complément des études d'automatique classiques.

Un modèle dynamique symbolique du robot a déjà été développé dans le but d'en calculer la commande. Cependant, cette approche possède des faiblesses. D'une part, la visualisation du résultat est très limitée, et d'autre part, la simulation de ce modèle mécanique ne prend en compte les forces d'interaction que localement. Aussi, il s'est révélé nécessaire d'utiliser en plus un logiciel graphique. Notre choix s'est porté sur Fabule (développé dans le projet IMAGIS), qui présente les avantages d'être évolutif de par sa nature modulaire, ce qui permet d'implémenter assez facilement de nouveaux algorithmes, et d'intégrer déjà certaines méthodes de synthèse d'images.

Dans un premier temps, le travail a consisté à faire coopérer ces deux approches, afin de produire des simulations réalistes du robot dans son environnement. La première calcule la dynamique intrinsèque du robot et la commande à appliquer aux articulations, la seconde synthétise un modèle du robot et d'un environnement, et calcule les interactions du robot avec cet environnement. Le logiciel PVM (Parallel Virtual Machine) est utilisé pour faire communiquer les deux logiciels.

La deuxième partie a concerné la modélisation sous Fabule d'un robot virtuel et son environnement. Pour simuler la démarche du robot dans cet environnement, une loi de commande est calculée par l'intégrateur numérique Scilab. Les positions articulaires seront fournies aux articulations du robot simulé, et la succession de ces positions émulera le mouvement dynamique du robot. Cependant, cette commande est encore en cours de validation. Aussi, en attendant, nous nous servons de données biomécaniques enregistrées sur un humain, issues de l'étude de Winter [Win90]. Toutefois, ces données correspondent seulement à un cycle de marche, et il nous est apparu nécessaire de déterminer et calculer des trajectoires de transition, notamment pour le démarrage et l'arrêt du personnage, afin d'avoir une démarche complète à faire jouer au robot.

Une fois que le robot peut évoluer dans son environnement, il reste à obtenir des informations sur celui-ci. En effet, le robot doit pouvoir s'adapter à son environnement : lorsqu'il rencontre un obstacle, il doit l'éviter, ou passer par-dessus en adaptant la hauteur du pas. De même, lorsqu'il rencontre un escalier, il doit adopter une nouvelle démarche. Pour connaître cet environnement, des capteurs placés sur lui en des endroits critiques sont simulés. Nous avons modélisé des capteurs proximétriques 1D, 2D et 3D, dont la détection d'un obstacle se fait par lancer de rayon ou analyse du Z-buffer, techniques fort bien maîtrisées en synthèse d'images. Ces capteurs sont placés n'importe où sur le robot, de manière interactive. Les informations délivrées par ces capteurs, concernant l'environnement dans lequel évolue le robot, vont être analysées, afin de déterminer et reconnaître différentes catégories d'obstacles. Elles seront ensuite utilisées pour permettre d'étudier les placements pertinents des capteurs de divers types, selon l'environnement considéré. Finalement, le robot sera capable d'évoluer et de s'adapter dans son environnement, grâce à sa perception locale [[14]].



previous up next contents
Précédent : Modélisation et commande Remonter : Résultats nouveaux Suivant : Contrôle/commande de systèmes robotiques complexes