« Webots » : différence entre les versions

Un article de Wikipédia, l'encyclopédie libre.
Contenu supprimé Contenu ajouté
Scls19fr (discuter | contributions)
Aucun résumé des modifications
Scls19fr (discuter | contributions)
Aucun résumé des modifications
Ligne 14 : Ligne 14 :


Webots est utilisé dans plusieurs concours de programmation en ligne de robots. La compétition Robotstadium [http://www.robotstadium.org] est une simulation de la [[RoboCup]] Standard Platform League. Dans cette simulation, deux équipes de [[NAO_(robotique)|Nao]] jouent au football avec des règles similaires au football classique. Les robots utilisent des caméras simulées, des capteurs ultrasons et de pression. Dans le concours Rat's Life (La vie du Rat) [http://www.ratslife.org] deux robots [[E-Puck]] simulés robots entrent en compétition pour les ressources énergétiques dans une labyrinthe construit en [[Lego]]. Les matchs se pratiquent tous les jours et les résultats peuvent être observés dans des vidéos en ligne.
Webots est utilisé dans plusieurs concours de programmation en ligne de robots. La compétition Robotstadium [http://www.robotstadium.org] est une simulation de la [[RoboCup]] Standard Platform League. Dans cette simulation, deux équipes de [[NAO_(robotique)|Nao]] jouent au football avec des règles similaires au football classique. Les robots utilisent des caméras simulées, des capteurs ultrasons et de pression. Dans le concours Rat's Life (La vie du Rat) [http://www.ratslife.org] deux robots [[E-Puck]] simulés robots entrent en compétition pour les ressources énergétiques dans une labyrinthe construit en [[Lego]]. Les matchs se pratiquent tous les jours et les résultats peuvent être observés dans des vidéos en ligne.

== Exemple de programmation du contrôleur ==
Voici un exemple simple de programmation en C/C++ du contrôleur avec Webots : un comportement trivial d'évitement de collision. Au départ, le robot se dirige en avant, puis quand un obstacle est détecté, il tourne autour de lui pendant un moment, puis reprend le mouvement en avant.

<source lang="c">
#include <webots/robot.h>
#include <webots/differential_wheels.h>
#include <webots/distance_sensor.h>

#define TIME_STEP 64

int main() {
// initialize Webots
wb_robot_init();

// get handle and enable distance sensor
WbDeviceTag ds = wb_robot_get_device("ds");
wb_distance_sensor_enable(ds, TIME_STEP);

// control loop
while (1) {
// read sensors
double v = wb_distance_sensor_get_value(ds);

// if obstacle detected
if (v > 512) {
// turn around
wb_differential_wheels_set_speed(-600, 600);
}
else {
// go straight
wb_differential_wheels_set_speed(600, 600);
}
// run a simulation step
wb_robot_step(TIME_STEP);
}

return 0;
}
</source>

== Principaux domaines d'application ==
* Prototypage rapide des robots à roues et à jambes
* Recherche sur le déplacement de robots<ref name="sDegallier07">{{cite web
| publisher = Biologically Inspired Robotics Group
| year = 2007
| url = http://birg2.epfl.ch/publications/fulltext/sDegallier07.pdf
| title = Hand placement during quadruped locomotion in a humanoid robot: A dynamical system approach
| format = PDF }}</ref>
* [[Intelligence en essaim]] (Simulations multi-robots)<ref name="jPugh08">{{cite web
| publisher = Swarm-Intelligent Systems Group
| year = 2008
| url = http://infoscience.epfl.ch/record/118629
| title = Distributed Adaptation in Multi-Robot Search using Particle Swarm Optimization}}</ref><ref name="cCianci08">{{cite web
| publisher = DISAL - Distributed Intelligent Systems and Algorithms Laboratory
| year = 2008
| url = http://infoscience.epfl.ch/record/125777/files/Cianci_SIS2008.pdf
| title = Assembly of Configurations in a Networked Robotic System: A Case Study on a Reconfigurable Interactive Table Lamp
| format = PDF}}</ref>
* [[vie artificielle]] et [[robotique évolutive]] {{[[Evolutionary_robotics|en]]}}
* Simulation du comportement adaptatif<ref name="leMartinet11">Louis-Emmanuel Martinet, Denis Sheynikhovich, Karim Benchenane, and Angelo Arleo (2011) Spatial Learning and Action Planning in a Prefrontal Cortical Network Model, PLoS Comput Biol 7(5): e1002045. {{doi|10.1371/journal.pcbi.1002045}}</ref><ref name="fManella08">Mannella F., Mirolli M., Baldassarre G., A computational model of the amygdala nuclei's role in second order conditioning. In M. Asada et al. (eds.), From Animals to Animats 10: Proceedings of the Tenth International Conference on the Simulation of Adaptive Behavior (SAB2008), pp. 321-330. LNAI 5040 Berlin: Springer.</ref>
* Robot modulaire auto-reconfigurable {{[[Self-Reconfiguring Modular Robotics|en]]}}<ref name="aSproewitz08">{{cite web
| publisher = Biologically Inspired Robotics Group
| year = 2008
| url = http://birg2.epfl.ch/publications/fulltext/aSproewitz08.pdf
| title = An active connection mechanism for modular self-reconfigurable robotic systems based on physical latching
| format = PDF }}</ref>
* Environnement expérimental pour la [[vision par ordinateur]]
* Enseignement et concours de programmation de robots


==Références==
==Références==

Version du 16 décembre 2012 à 13:48

erreur du modèle {{langue}} : texte absent («  »)

Webots est un simulateur professionnel de robotique largement utilisé à des fins éducatives. Le projet Webots a commencé en 1996, initialement développé par le Dr Olivier Michel à l'Ecole polytechnique fédérale de Lausanne (EPFL) à Lausanne, en Suisse.

Webots utilise la bibliothèque ODE (Open Dynamics Engine) pour détecter des collisions et simuler la dynamique des corps rigides. La bibliothèque ODE permet de simuler avec précision les propriétés physiques des objets tels que la vitesse, l'inertie et le frottement.

Une large collection de modèles de robots librement modifiables est disponible avec le logiciel. En outre, il est également possible de construire de nouveaux modèles à partir de zéro. Lors de la conception d'un modèle de robot, l'utilisateur spécifie à la fois les propriétés graphiques et les propriétés physiques des objets. Les propriétés graphiques comprennent la forme, les dimensions, la position et l'orientation, les couleurs et la texture de l'objet. Les propriétés physiques comprennent la masse, le facteur de friction, ainsi que les constantes de ressort et d'amortissement.

Webots comporte un ensemble de capteurs et d'actionneurs fréquemment utilisés dans des expériences robotiques, par exemple capteurs de proximité, capteurs de lumière, capteurs tactiles, GPS, accéléromètres, des caméras, des émetteurs et des récepteurs, des servomoteurs (rotation et linéaire), des capteurs de position et de force, des LED, des pinces, des gyroscopes et compas.

Les programmes de contrôle du robot peuvent être écrites en C, C++, Java, Python et MATLAB. Les modèles AIBO, Nao et E-puck robot peuvent également être programmé avec le langage URBI.

Webots offre la possibilité de prendre des captures d'écran PNG et d'enregistrer les simulations sous la forme de films MPEG (Mac / Linux) ou AVI (Windows) films. Webots mondes sont stockés dans multiplate-forme. WBT fichiers dont le format est basé sur le langage VRML. Il est également possible d'importer et d'exporter des mondes Webots ou des objets dans le format VRML. Une autre caractéristique intéressante est que l'utilisateur peut interagir avec une simulation en cours à tout moment. Il a ainsi la possibilité de déplacer les robots et d'autres objets avec la souris.

Webots est utilisé dans plusieurs concours de programmation en ligne de robots. La compétition Robotstadium [1] est une simulation de la RoboCup Standard Platform League. Dans cette simulation, deux équipes de Nao jouent au football avec des règles similaires au football classique. Les robots utilisent des caméras simulées, des capteurs ultrasons et de pression. Dans le concours Rat's Life (La vie du Rat) [2] deux robots E-Puck simulés robots entrent en compétition pour les ressources énergétiques dans une labyrinthe construit en Lego. Les matchs se pratiquent tous les jours et les résultats peuvent être observés dans des vidéos en ligne.

Exemple de programmation du contrôleur

Voici un exemple simple de programmation en C/C++ du contrôleur avec Webots : un comportement trivial d'évitement de collision. Au départ, le robot se dirige en avant, puis quand un obstacle est détecté, il tourne autour de lui pendant un moment, puis reprend le mouvement en avant.

#include <webots/robot.h>
#include <webots/differential_wheels.h>
#include <webots/distance_sensor.h>

#define TIME_STEP 64

int main() {
  // initialize Webots
  wb_robot_init();

  // get handle and enable distance sensor
  WbDeviceTag ds = wb_robot_get_device("ds");
  wb_distance_sensor_enable(ds, TIME_STEP);

  // control loop
  while (1) {
    // read sensors
    double v = wb_distance_sensor_get_value(ds);

    // if obstacle detected
    if (v > 512) {
      // turn around
      wb_differential_wheels_set_speed(-600, 600);
    }
    else {
      // go straight
      wb_differential_wheels_set_speed(600, 600);
    }
    
    // run a simulation step
    wb_robot_step(TIME_STEP);
  }

  return 0;
}

Principaux domaines d'application

Références

  1. « Hand placement during quadruped locomotion in a humanoid robot: A dynamical system approach » [PDF], Biologically Inspired Robotics Group,
  2. « Distributed Adaptation in Multi-Robot Search using Particle Swarm Optimization », Swarm-Intelligent Systems Group,
  3. « Assembly of Configurations in a Networked Robotic System: A Case Study on a Reconfigurable Interactive Table Lamp » [PDF], DISAL - Distributed Intelligent Systems and Algorithms Laboratory,
  4. Louis-Emmanuel Martinet, Denis Sheynikhovich, Karim Benchenane, and Angelo Arleo (2011) Spatial Learning and Action Planning in a Prefrontal Cortical Network Model, PLoS Comput Biol 7(5): e1002045. DOI 10.1371/journal.pcbi.1002045
  5. Mannella F., Mirolli M., Baldassarre G., A computational model of the amygdala nuclei's role in second order conditioning. In M. Asada et al. (eds.), From Animals to Animats 10: Proceedings of the Tenth International Conference on the Simulation of Adaptive Behavior (SAB2008), pp. 321-330. LNAI 5040 Berlin: Springer.
  6. « An active connection mechanism for modular self-reconfigurable robotic systems based on physical latching » [PDF], Biologically Inspired Robotics Group,

Liens externes