FLASH INFORMATIQUE FI

Webots


Simulation de robots mobiles




Olivier MICHEL


Un outil pour la recherche et l’enseignement

Webots est un logiciel commercial de simulation de robots mobiles. Il a été initialement développé au LAMI (Laboratoire de micro-informatique, Prof. Jean-Daniel Nicoud), puis transféré en 1998 à la société Cyberbotics, basée au PSE. Depuis, Cyberbotics a continué les développements et commercialise Webots. Plus d’une centaine de clients, universités et sociétés privées, utilisent Webots pour la recherche et l’enseignement en robotique mobile.

Cet outil de prototypage rapide pour la modélisation, la programmation et la simulation de robots mobiles, permet en outre le transfert vers des robots mobiles réels (fig. 1), dont Khepera, Hemisson, Sony Aibo et Lego Mindstorms.

fig. 1 - étapes de développement d’une application dans Webots  <

Utilisation à l’EPFL

De plus en plus de laboratoires de l’EPFL utilisent Webots pour des projets de recherche et d’enseignement. L’utilisation de Webots à l’EPFL est gratuite pour l’enseignement et la recherche. Il suffit de contacter Cyberbotics (Olivier.Michel@cyberbotics.com) pour obtenir un fichier de licence. Webots fonctionne sous Linux, Windows et Mac OS X. Parmi les utilisateurs de Webots à l’EPFL, on trouvera une liste de projets cités en référence.

A vous de jouer !

Webots vous permet de construire rapidement un monde virtuel en 3D que vous ne manquerez pas de peupler avec des robots mobiles virtuels de votre choix. Pour plus de facilité, vous disposez de nombreux exemples de robots mobiles commerciaux, dont Khepera (fig. 2), Koala, Hemisson (fig. 3), Sony Aibo (fig. 7), Lego Mindstorms, Pioneer 2, Scout 2, Magellan, Humanoïde (fig. 8), que vous pouvez intégrer dans vos projets. Il vous est aussi possible de construire votre propre robot mobile en définissant sa forme et en disposant des capteurs (capteurs de distance, de lumière, de toucher, caméras, GPS, récepteurs, range-finders, etc.) et des effecteurs (roues motrices, servo moteurs, grippers, LEDs, émetteurs, crayon, etc.) grâce à l’éditeur intégré. Il est possible d’importer des objets 3D complexes pour construire le monde ou les robots depuis n’importe quel outil de modélisation 3D à travers le format VRML97.

fig. 2 - un robot Khepera équipé d’un gripper 

Une fois le monde et les robots construits, il faut alors programmer les robots pour les doter de comportements intéressants. Pour cela une interface de programmation vous permet d’accéder aux valeurs de chacun des capteurs des robots et de commander les actuateurs. Par exemple, on peut obtenir l’image couleur prise par la caméra embarquée d’un robot, faire un petit traitement d’image pour y repérer un objet intéressant et sa position dans l’image, et commander les moteurs du robot pour se déplacer vers cet objet, puis le saisir à l’aide d’un gripper.

L’interface de programmation native est en C, C++ ou Java. Cependant il est possible d’interfacer Webots vers d’autres programmes, comme MatLab, Lisp, etc. via TCP/IP ou des pipes. Durant la simulation, un programme superviseur vous permet de contrôler tous les paramètres de simulation, de déplacer dynamiquement des objets, d’enregistrer les trajectoires des robots, de communiquer avec les robots, etc.

fig. 3 - un robot Hemisson équipé d’un crayon suit une ligne tracée au sol 

fig. 4 - Khepera gripper controls 

Enfin, si la simulation est concluante, on peut transférer le contrôle au robot mobile réel (fig. 4). Avec le robot Khepera, on testera d’abord le robot en remote control via la ligne série : le contrôleur tourne sur le PC, mais ses entrées-sorties sont dirigées vers le robot réel plutôt que le simulateur. Ensuite, on procèdera à une compilation croisée (cross-compilation) pour recompiler le contrôleur écrit en C pour Webots vers un binaire qui sera téléchargé sur le micro-contrôleur du robot réel. Le robot pourra alors être déconnecté du PC pour exécuter son programme de manière autonome.

Webots Dynamics

La version 3 de Webots ne permettait de simuler que des robots à deux roues motrices indépendantes. En effet, elle n’intégrait pas de réelle simulation de la physique. Grâce à l’introduction de la simulation physique basée sur la librairie ODE, la version 4 de Webots permet désormais de simuler de nouvelles architectures de robot, dont des robots à pattes (fig. 7 et 8), des robots volants, et des robots à roues plus complexes. De plus, elle permet de simuler de manière réaliste la dynamique d’objets, comme une balle dans un jeu de robots footballeurs (fig. 6).

fig. 5 - transfert vers un robot réel 

fig. 6 - simulation de robots footballeurs 

Webots Dynamics est le nom de la prochaine version de Webots qui correspondra à l’aboutissement de la simulation physique, avec davantage de possibilités de modélisation ainsi qu’un transfert possible vers d’autres robots réels. Le but est de pouvoir construire facilement des robots à articulations multiples complexes, les simuler de manière très réaliste dans différents milieux (eau, air) et transférer les résulats facilement vers des robots réels (Aibo, robot Salamandre, robot humanoïde).

fig. 7 - un modèle de robot Sony Aibo 

Le projet Webots Dynamics est financé par un projet CTI en collaboration avec le Biologically Inspired Robotics Group (BIRG) du Prof. Auke Jan Ijspeert au LSL.

fig. 8 - le robot humanoïde utilisé pour le concours 2003 

Concours de programmation : Robot Judo !

Afin de promouvoir Webots, Cyberbotics organise des concours internationaux de programmation ouverts à tous. Les concurrents téléchargent une version gratuite de Webots limitée au scénario du concours. Ils écrivent en Java un contrôleur intelligent pour leur robot et le déposent sur le site de Cyberbotics. Chaque jour, un tour de jeu est organisé sur le site Web de Cyberbotics. Les robots s’affrontent un à un et les concurrents peuvent suivre en temps réel la performance de leur robot face aux autres.

Le concours précédent, terminé en mai 2003, consistait à faire survivre un robot plus longtemps que son adversaire en trouvant des sources d’énergie. Il a rassemblé 47 équipes au niveau international. Le prochain concours met en avant la simulation de la physique puisqu’il mettra en scène des robots humanoïdes (fig. 8) devant s’affronter sur un tatami de Judo. Le concours débutera le 18 juillet 2003 pour se terminer le 30 avril 2004. Le gagnant recevra un robot Hemisson et un pack Webots PRO. Un appel à concours est disponible sur le site Web de Cyberbotics. N’hésitez pas à le diffuser autour de vous.

Remerciements

Le projet Webots Dynamics est co-financé par un projet CTI de l’Office fédéral de la formation professionnelle et de la technologie.

Webots utilise des libraries open source, dont ODE et wxWindows.

Merci au Prof. Jean-Daniel Nicoud, qui a permis le développement de Webots, et à tous ceux qui ont soutenu et soutiennent encore le projet : Francesco Mondada, Takashi Gomi, Olivier Carmona, Prof. Alcherio Martinoli, Prof. Auke Jan Ijspeert, Prof. Roland Siegwart, Jean-Christophe Zufferey, Gilles Caprari, Prof. Aude Billard, Andrès Pérez-Uribe, etc.

Merci enfin à tous les utilisateurs de Webots !

Références


• Cyberbotics (Olivier Michel, PSE) : http://www.cyberbotics.com
• Concours de programmation : http://www.cyberbotics.com/contest
• Simulations de robots à pattes (Prof. Auke Jan Ijspeert, LSL Birg) : http://lslwww.epfl.ch/birg/simulation.shtml
• Robot volant Blimp (Jean-Christophe Zufferey, ASL2) : http://asl.epfl.ch/research/projects/AdaptiveVisionbasedFlyingRobots/index.php
• Travail pratique sur la programmation de robots Khepera (Jean-Christophe Zufferey, ASL2) : http://asl.epfl.ch/education/courses/BioinspiredAdaptiveMachines/zufferey/
• Robots Alice jouant au foot (Gilles Caprari, ASL1) : http://asl.epfl.ch/research/projects/AliceSoccer/aliceSoccer.php
• Fourmis artificielles (Andrés Péres-Uribe, ASL2) : http://asl.epfl.ch/research/projects/EvoAnts/index.php
• Apprentissage par Imitation (Eric Sauser, ASL3) : http://asl.epfl.ch/index.html?conte...
• ODE (Open Dynamics Engine) : http://q12.org/ode
• wxWindows (portable GUI librarie) : http://www.wxwindows.org



Cherchez ...

- dans tous les Flash informatique
(entre 1986 et 2001: seulement sur les titres et auteurs)
- par mot-clé

Avertissement

Cette page est un article d'une publication de l'EPFL.
Le contenu et certains liens ne sont peut-être plus d'actualité.

Responsabilité

Les articles n'engagent que leurs auteurs, sauf ceux qui concernent de façon évidente des prestations officielles (sous la responsabilité du DIT ou d'autres entités). Toute reproduction, même partielle, n'est autorisée qu'avec l'accord de la rédaction et des auteurs.


Archives sur clé USB

Le Flash informatique ne paraîtra plus. Le dernier numéro est daté de décembre 2013.

Taguage des articles

Depuis 2010, pour aider le lecteur, les articles sont taggués:
  •   tout public
    que vous soyiez utilisateur occasionnel du PC familial, ou bien simplement propriétaire d'un iPhone, lisez l'article marqué tout public, vous y apprendrez plein de choses qui vous permettront de mieux appréhender ces technologies qui envahissent votre quotidien
  •   public averti
    l'article parle de concepts techniques, mais à la portée de toute personne intéressée par les dessous des nouvelles technologies
  •   expert
    le sujet abordé n'intéresse que peu de lecteurs, mais ceux-là seront ravis d'approfondir un thème, d'en savoir plus sur un nouveau langage.