[Tutorial] webots over details of about webots

This article will be on webots ultra detail, what he is, he can be doing? Eleven will learn in this article

More details can be webots official document acquisition

First, what is Webots?

Webots is a professional mobile robot simulation software package. It provides a rapid prototyping environment that allows users to create 3D physical characteristics (such as quality, joints, friction coefficient, etc.) in the virtual world. Users can add a simple passive objects or objects called active mobile robot. These robots may have different mobility solutions (wheeled robot, the legged robot or a flying robots). Moreover, they may be equipped with many sensors and actuators of the machine, such as a distance sensor, a drive wheel, a camera, a motor, a touch sensor, a transmitter, a receiver and the like. Finally, the user can be individually programmed for each robot to exhibit the desired behavior. Webots contains a large robot controller model and example programs to help users get started.

Webots also contains many interfaces and real mobile robots, so once you simulate a robot exhibit the expected behavior, you can transfer it to a control program such as e-puck, DARwIn-OP, Nao and other real robots. You can add a new interface through the relevant system.

Second, what can I do with Webots?

Webots very suitable for mobile robot-related research and education programs. Over the years, many rely on mobile robotics projects in the following areas Webots:

  • Mobile robot prototyping (academic research, automotive, aerospace, industrial vacuum cleaners, toys, amateurs, etc.)
  • Movement robot (legged, humanoid, quadruped robot, etc.)
  • Multi-subject research (swarm intelligence, collaborative mobile robots groups, etc.)
  • Adaptive Behavior (genetic algorithms, neural networks, artificial intelligence, etc.).
  • Professor of Robotics (Robotics course, C / C ++ / Java / Python programming lectures, etc.)
  • Competition robot (e.g., Robotstadium and Rat's Life)

Third, the use Webot What do I need to know?

If you want to develop your own simulation, you need to speak the following description, knowledge about the most basic aspects:

  • To write your own robot controller, you must have a basic knowledge of C, C ++, Java, Python or MATLAB programming language. However, even if you do not understand these languages, you can still e-puck and Hemisson program the robot using a simple graphical programming language called BotStudio of.
  • If you do not want to use an existing robot model Webots provided, but you want to create your own robot model, or add special objects in a simulated environment, you need a basic knowledge of 3D computer graphics and VRML97 description language. This way, you can create 3D models in Webots or import them from a 3D modeling software.

Four, Webots simulation

Webots simulation consisting of:

  • Webots a world file (.wbt), which defines one or more robots and their environment. .wbt files are sometimes dependent on external PROTO file (.proto) and texture.
  • One or several robot controller program (in C / C ++ / Java / Python / MATLAB in).
  • An optional physical plug may be used to modify the behavior of conventional physical Webots (in the C / C ++ in).

Fifth, what is Webots world file (.wbt)?

Webots in the world is a 3D description of the robot and its environment. It contains a description of each object: position, orientation, geometry, appearance (e.g., color or brightness), physical attributes, the object type and the like. World organized into hierarchies, in which an object can contain other objects (such as VRML97). For example, a robot may comprise two wheels, one distance sensor and a joint, wherein the joint itself comprises a camera. A world file does not contain the robot controller code; it is only necessary to specify the name of each robot controller. Save the World ".wbt" file. ".Wbt" file stored in each Webots project "worlds" subdirectory.

Sixth, what is the controller?

The controller is to control the world file specified in the computer program the robot. You can use any programming language supported by Webots write controller: C, C ++, Java, Python or MATLAB. When the simulation starts, Webots start the specified controllers, each is a separate process, and the process controller and associated simulation of the robot. Note that multiple robots can use the same controller code, but will start a different process for each robot.

Some programming languages ​​need to compile (C and C ++), other languages ​​need to explain (Python and MATLAB), while others need to compile and interpret (Java). For example, binary executable files C and C ++ controller is compiled to platform-dependent ( ".exe" for example, under Windows). MATLAB Python and interpreted by a respective system controller (must be installed) is running. The controller requires Java compiled to bytecode ( ".class" file or ".jar"), and then interpreted by the Java virtual machine.

The controller for each source and binary files is stored in the directory controller. The controller directory placed in each Webots project "controllers" subdirectory.

Seven, what is the controller in charge?

The controller is in charge of controlling the robot, its supervisor field is set to TRUE, it usually can only be performed, rather than operated by manual operation of a real robot. The head of the controller can be written in any of these programming languages. However, compared to conventional Robot Controller, Supervisor controller will have access to privileged operations. Simulation control privileged operations include, for example, the robot moves to a random position, the simulation video capture and the like.


If you feel ok, point a praise, a point of concern, and also welcomes give a reward to support the work of the editor about
Published 65 original articles · won praise 500 · views 130 000 +

Guess you like

Origin blog.csdn.net/weixin_41045354/article/details/105163233