Webots
Encyclopedia
Webots is a professional robot
Robot
A robot is a mechanical or virtual intelligent agent that can perform tasks automatically or with guidance, typically by remote control. In practice a robot is usually an electro-mechanical machine that is guided by computer and electronic programming. Robots can be autonomous, semi-autonomous or...

 simulator widely used for educational purposes.
The Webots project started in 1996, initially developed by Dr. Olivier Michel at the Swiss Federal Institute of Technology (EPFL) in Lausanne
Lausanne
Lausanne is a city in Romandy, the French-speaking part of Switzerland, and is the capital of the canton of Vaud. The seat of the district of Lausanne, the city is situated on the shores of Lake Geneva . It faces the French town of Évian-les-Bains, with the Jura mountains to its north-west...

, Switzerland
Switzerland
Switzerland name of one of the Swiss cantons. ; ; ; or ), in its full name the Swiss Confederation , is a federal republic consisting of 26 cantons, with Bern as the seat of the federal authorities. The country is situated in Western Europe,Or Central Europe depending on the definition....

.

Webots uses the ODE (Open Dynamics Engine
Open Dynamics Engine
The Open Dynamics Engine is a physics engine in C/C++. Its two main components are a rigid body dynamics simulation engine and a collision detection engine...

) for detecting of collisions and simulating rigid body dynamics. The ODE library allows one to accurately simulate physical properties of objects such as velocity, inertia and friction.

A large collection of freely modifiable robot models comes in the software distribution. In addition, it is also possible to build new models from scratch. When designing a robot model, the user specifies both the graphical and the physical properties of the objects. The graphical properties include the shape, dimensions, position and orientation, colors, and texture of the object. The physical properties include the mass, friction factor, as well as the spring and damping
Damping
In physics, damping is any effect that tends to reduce the amplitude of oscillations in an oscillatory system, particularly the harmonic oscillator.In mechanics, friction is one such damping effect...

 constants.

Webots includes a set of sensors and actuators frequently used in robotic experiments, e.g. proximity sensors, light sensors, touch sensors, GPS, accelerometer
Accelerometer
An accelerometer is a device that measures proper acceleration, also called the four-acceleration. This is not necessarily the same as the coordinate acceleration , but is rather the type of acceleration associated with the phenomenon of weight experienced by a test mass that resides in the frame...

s, cameras, emitters and receivers, servo motors (rotational & linear), position and force sensor, LEDs, grippers, gyros and compass.

The robot controller programs can be written in C, C++, Java, Python
Python (programming language)
Python is a general-purpose, high-level programming language whose design philosophy emphasizes code readability. Python claims to "[combine] remarkable power with very clear syntax", and its standard library is large and comprehensive...

 and MATLAB
MATLAB
MATLAB is a numerical computing environment and fourth-generation programming language. Developed by MathWorks, MATLAB allows matrix manipulations, plotting of functions and data, implementation of algorithms, creation of user interfaces, and interfacing with programs written in other languages,...

. The AIBO
AIBO
AIBO was one of several types of robotic pets designed and manufactured by Sony...

, Nao
Nao (robot)
Nao is an autonomous, programmable, medium-sized humanoid robot, developed by Aldebaran Robotics, a French startup company headquartered in Paris. Project Nao was launched in 2004. On August 15, 2007, Nao replaced Sony's robot dog Aibo as the robot used in the Robot Soccer World Cup Standard...

 and E-puck robot models can also be programmed with the URBI
URBI
Urbi is an open source cross-platform software platform in C++ used to develop applications for robotics and complex systems. Urbi is based on the UObject distributed C++ component architecture. It also includes the urbiscript orchestration language which is a parallel and event-driven script...

 language (URBI license required).

Webots offers the possibility to take PNG screen shots and to record the simulations as MPEG (Mac/Linux) and AVI
Audio Video Interleave
Audio Video Interleave , known by its acronym AVI, is a multimedia container format introduced by Microsoft in November 1992 as part of its Video for Windows technology. AVI files can contain both audio and video data in a file container that allows synchronous audio-with-video playback...

 (Windows) movies. Webots worlds are stored in cross-platform .wbt files which format is based on the VRML
VRML
VRML is a standard file format for representing 3-dimensional interactive vector graphics, designed particularly with the World Wide Web in mind...

 language. It is also possible to import and export Webots worlds or objects in the VRML format. Another useful feature is that the user can interact with a running simulation at any time, i.e. it possible to move the robots and other object with the mouse.

Webots is used in several online robot programming contests. The Robotstadiumhttp://www.robotstadium.org competition is a simulation of the RoboCup
RoboCup
RoboCup is an international robotics competition founded in 1997. The aim is to develop autonomous soccer robots with the intention of promoting research and education in the field of artificial intelligence...

 Standard Platform League. In this simulation two teams of Nao
Nao (robot)
Nao is an autonomous, programmable, medium-sized humanoid robot, developed by Aldebaran Robotics, a French startup company headquartered in Paris. Project Nao was launched in 2004. On August 15, 2007, Nao replaced Sony's robot dog Aibo as the robot used in the Robot Soccer World Cup Standard...

 play soccer with rules similar to regular soccer. The robots use simulated cameras, ultrasound and pressure sensors. In the Rat's Lifehttp://www.ratslife.org competition two simulated e-puck robots compete for energy resources in a Lego
Lego
Lego is a line of construction toys manufactured by the Lego Group, a privately held company based in Billund, Denmark. The company's flagship product, Lego, consists of colorful interlocking plastic bricks and an accompanying array of gears, minifigures and various other parts...

 maze. Matches are run on a daily basis and the results can be watched in online videos.


Controller Programming Example

This is a simple example of C/C++ controller programming with Webots: a trivial collision avoidance behavior. Initially, the robot runs forwards, then when an obstacle is detected it rotates around itself for a while and then resumes the forward motion.
  1. include
  2. include
  3. include

  1. 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;
}

Main Fields of Application

  • Fast prototyping of wheeled and legged robots
  • Research on robot locomotion
  • Swarm intelligence
    Swarm intelligence
    Swarm intelligence is the collective behaviour of decentralized, self-organized systems, natural or artificial. The concept is employed in work on artificial intelligence...

     (Multi-robot simulations)
  • Artificial life
    Artificial life
    Artificial life is a field of study and an associated art form which examine systems related to life, its processes, and its evolution through simulations using computer models, robotics, and biochemistry. The discipline was named by Christopher Langton, an American computer scientist, in 1986...

     and evolutionary robotics
    Evolutionary robotics
    Evolutionary robotics is a methodology that uses evolutionary computation to develop controllers for autonomous robots. Algorithms in ER frequently operate on populations of candidate controllers, initially selected from some distribution. This population is then repeatedly modified according to...

  • Simulation of adaptive behaviour
  • Self-Reconfiguring Modular Robotics
    Self-Reconfiguring Modular Robotics
    Modular self-reconfiguring robotic systems or self-reconfigurable modular robots are autonomous kinematic machines with variable morphology...

  • Experimental environment for computer vision
    Computer vision
    Computer vision is a field that includes methods for acquiring, processing, analysing, and understanding images and, in general, high-dimensional data from the real world in order to produce numerical or symbolic information, e.g., in the forms of decisions...

  • Teaching and robot programming contests

Included Robots Models

  • AIBO
    AIBO
    AIBO was one of several types of robotic pets designed and manufactured by Sony...

     ERS7 and ERS210, Sony
    Sony
    , commonly referred to as Sony, is a Japanese multinational conglomerate corporation headquartered in Minato, Tokyo, Japan and the world's fifth largest media conglomerate measured by revenues....

     Corporation
  • Bioloids (dog), Robotis
  • Boe-Bot
  • DARwIn-OP, Robotis
  • E-puck
  • Hemisson
  • HOAP-2, Fujitsu
    Fujitsu
    is a Japanese multinational information technology equipment and services company headquartered in Tokyo, Japan. It is the world's third-largest IT services provider measured by revenues....

     Limited
  • iCub
    ICub
    An iCub is a 1 metre high humanoid robot testbed for research into human cognition and artificial intelligence.It was designed by the RobotCub Consortium, of several European universities and is now supported by other projects such as ITALK. The robot is open-source, with the hardware design,...

    , RobotCub Consortium
    RobotCub Consortium
    RobotCub was a 5 years long project funded by the European Commission through Unit E5 "Cognition" of the IST. The project started in 2004 and terminated in January 2010...

  • iRobot Create
    IRobot Create
    iRobot Create is a hobbyist robot manufactured by iRobot that is based on the Roomba platform and was introduced in 2007. However, iRobot Create is explicitly designed for robotics development, rather than simply hacking the Roomba...

    , iRobot
    IRobot
    iRobot Corporation is an American advanced technology company founded in 1990 and incorporated in Delaware in 2000, the iRobot Corporation designs robots such as an autonomous home vacuum cleaner , the Scooba that scrubs and cleans hard floors, and military and police robots, such as the PackBot...

  • Katana IPR, Neuronics AG
  • Khepera mobile robot
    Khepera mobile robot
    The Khepera is a small differential wheeled mobile robot that was developed at the LAMI laboratory of Prof. Jean-Daniel Nicoud at EPFL in the mid '90s. It was developed by Edo...

     I, II, III, K-Team Corporation
  • KHR-2HV, KHR-3HV, Kondo
  • Koala, K-Team Corporation
  • Lego Mindstorms
    Lego Mindstorms
    The LEGO Mindstorm series of kits contain software and hardware to create small, customizable and programmable robots. They include a programmable 'Brick' computer that controls the system, a set of modular sensors and motors, and LEGO parts from the Technics line to create the mechanical...

     (RCX Rover model)
  • Magellan
  • Nao
    Nao (robot)
    Nao is an autonomous, programmable, medium-sized humanoid robot, developed by Aldebaran Robotics, a French startup company headquartered in Paris. Project Nao was launched in 2004. On August 15, 2007, Nao replaced Sony's robot dog Aibo as the robot used in the Robot Soccer World Cup Standard...

     V2, V3, Aldebaran Robotics
  • MobileRobots Inc Pioneer 2
  • Puma 560, Unimate
    Unimate
    Unimate was the first industrial robot,which worked on a General Motors assembly line at the Inland Fisher Guide Plant in Ewing Township, New Jersey, in 1961.It was created by George Devol in the 1950s using his original patents...

  • Scout 2
  • Shrimp III, BlueBotics SA
  • Surveyor SRV-1, Surveyor Corporation
  • youBot, KUKA
    KUKA
    KUKA is a leading German producer of industrial robots for a variety of industries - from automotive and fabricated metals to food and plastics...


Cross Compilation Support

  • AIBO
    AIBO
    AIBO was one of several types of robotic pets designed and manufactured by Sony...

     ERS7 and ERS210
  • E-puck
  • Khepera mobile robot
    Khepera mobile robot
    The Khepera is a small differential wheeled mobile robot that was developed at the LAMI laboratory of Prof. Jean-Daniel Nicoud at EPFL in the mid '90s. It was developed by Edo...

  • Lego Mindstorms
    Lego Mindstorms
    The LEGO Mindstorm series of kits contain software and hardware to create small, customizable and programmable robots. They include a programmable 'Brick' computer that controls the system, a set of modular sensors and motors, and LEGO parts from the Technics line to create the mechanical...

     RCX (using leJOS
    LeJOS
    leJOS is a firmware replacement for Lego Mindstorms programmable bricks. It currently supports the LEGO RCX brick and leJOS NXJ supports the NXT brick. It includes a Java virtual machine, which allows Lego Mindstorms robots to be programmed in the Java programming language. It is often used for...

    )

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK