大赛规则

> 更多

大赛问答

> 更多

比赛照片

> 更多
  • 2022年大赛照片
  • 2022年大赛照片
  • 2022年大赛照片
  • 2022年大赛照片
  • 2022年大赛照片
  • 2022年大赛照片
  • 2022年大赛照片
  • 2020大赛活动照片
  • 2020大赛活动照片
  • 2020大赛活动照片
Webots series 1 - Software introduction, installation and demonstration - v1.1-Notifications-Robot competition-Robot competition
大赛通知 Notifications

Notifications

Webots series 1 - Software introduction, installation and demonstration - v1.1

2020-06-18

1.Introduction of simulation software webots

        Webots is an open-source 3D robot motion simulation platform, which provides a complete development environment for robot modeling, programming and simulation. The software was originally developed by the laboratory of micro Informatics (Lami) of the Federal Institute of Technology (EPFL) in Lausanne, Switzerland. It was used to study various control algorithms in mobile robots. Later, it was further developed and commercialized by cyber botics. Since December 2018, webots has been released as open source software under the Apache 2.0 license, and widely used in industry, education, research and other fields. It provides a rapid prototyping environment, users can create a 3D virtual world with physical characteristics (such as mass, joints, friction coefficient, etc.), and can add simple passive objects or active objects called mobile robots. These robots can have different mobile schemes (wheeled robots, legged robots or flying robots). They may also be equipped with many sensors and actuators, such as distance sensors, drive wheels, cameras, motors, touch sensors, transmitters, receivers, and so on. Finally, users can program and control each robot to achieve the corresponding functions.

01.jpg 

                Figure 1. Webots repository(Robots,Actuators,Sensors,Objects)

 

Function:

        (1) Webots has a rich resource base, including robots (Robotis series, Boston Dynamics Atlas, Kondo, etc.), sensors (accelerator, camara, gyro, GPS, etc.), actuators, objects, etc.

        (2) Supports importing existing CAD models (via blender or URDF) and openstreemap maps.

        (3) The attributes (shape, color, text, quality, etc.) of all objects in the environment can be configured independently.

        (4) Using Ode to detect the collision of objects and simulate the dynamic characteristics of rigid structures can accurately simulate the physical properties of objects such as velocity, inertia and friction.

        (5) Webots can be used to create robot prototypes, develop, test and validate control algorithms.

        (6) It provides a complete development environment for simulation, programming and Simulation of robot, vehicle and biomechanical system. It can model and simulate the robot including two wheeled table robot, industrial arm, biped robot, automobile, UAV, underwater robot, crawler robot, etc., and realize many functions such as mechanical contact, sensor visualization, multi robot cooperation, etc.


·Applicable platforms: support windows, Linux and Mac OS platforms at the same time.

·Programming language: support C, C + +, python, Java, MATLAB and other languages to program robots, and can use APIs covering basic robot requirements.


 02.jpg


Figure 2. The functions of webots

Top left: mechanical contact Top right: sensor visualization Bottom left: logistics Bottom right: multi robot cooperative confrontation

 

2. Download and installation guide

2.1 system requirements

        (1) The minimum configuration requirements are 2GHz dual core CPU and 2GB ram, and the recommended configuration is four core CPU or above.

        (2) NVIDIA or AMD OpenGL (minimum version 3.3) graphics adapter with at least 512MB ram. Other graphics adapters, including Intel, often lack good OpenGL support, which can cause 3D rendering problems and application crashes.

        (3) The following operating systems are supported:

        Linux: webots can run on the latest Ubuntu long-term support Version (current version 18.04), or on the latest major Linux distributions, including RedHat, Mandrake, Debian, Gentoo, arch, SUSE and Slackware. It is recommended to use the latest version of Linux. For Linux 64 (x86-64) systems. Webots cannot be run on Ubuntu before 16.04.

       Windows: Windows 10 and windows 8.1 (64 bit version only).

       Mac: Mac OS 10.15 "Catalina" and 10.14 "Mojave".

In earlier versions of the operating system mentioned above, webots may work, but they are not officially supported.

2.2 download and installation process

        (1) It is recommended to check and update the graphics card before downloading.

        (2) Open source simulation software webots (12-5-2020 version) supports windows, Linux and Mac OS. The download file is 1.6g, and the file after installation is 2.7g. It is recommended to reserve at least 5g of disk space.

        Choose the webots version for your computer system to download and install.


Download path and website:

        1. Download on the official website: http://www.cyberbotics.com/ 

        2. GitHub Download: link: https://github.com/cyberbotics/webots/releases   After entering the page, you can choose different versions to download. It is recommended to choose the latest version to download. Webots version update is particularly fast. Select the black font assets, open the black triangle symbol, and select the installation method. It is recommended to select the executable file installation under windows, that is, the second webots-r2020a-rev2_ setup.exe File, as shown in the figure below. The remaining versions can be installed from https://www.cyberbotics.com/doc/guide/installation-procedure  .

       3. Baidu online disk download: link: https://pan.baidu.com/s/1MkBHXTYs5mifPDSVHDU9AA    Extraction code: kas0


03.jpg

Figure 3. Downloading webots

Caution:

        1. After downloading the installation package, specify the installation location and install directly. After installation, it is recommended to update the graphics card driver if you observe 3D rendering exception or webots crash.

        2. The download of official website and GitHub website may be slow or fail, which can be downloaded from Baidu online disk link.

        3. When webots is installed in win10 and there are a little more nodes in the scene tree, click the "reset" button (not the reload button, but the reset button) and the software will flash back.... the solution is as follows:

New variable name in system variable: webots_ SAFE_ Mode; variable value (V): C: usersdongjianappdatalocalprogramswepotsmsys64mingw64 inwebots.exe

(installation directory, not necessarily the same) can solve the problem.

        4. If you open the software after downloading and installing, it will stay in this interface for a few seconds, and you can't click anything, and then it will flash back to the desktop, because: there may be Chinese in the installation directory and download directory path.

        5. In the following cases, my solution is to install the disk, i.e. change the installation path. Maybe there is a problem in the installation process.


04.jpg  

Figure 4. Software installation error

Summary: 

        There should be no Chinese characters in the installation directory and download directory path. Set the environment variables before running the software. When webots is opened for the first time in demonstration project 1, it may prompt that the video memory is small or there is no independent video card, but as long as the interface can be opened normally.


3. Demonstration project

1 open webots for the first time

        When opening webots for the first time, you may be prompted that the video memory is small or there is no independent video card, but as long as you can open the interface normally.



05.jpg

Figure 5. Software starts running

2. The first time the upper finger guide is opened

        The software will automatically open the guide. The built-in world shows various models and functions of webots. You can try demo yourself. In addition, after entering the software, you can open the boot example through the help / webots boot tour. Common keywords of a webots project include: 

        - World: a file containing descriptions of robots and their surroundings. 

        -Controller: the controller code written to control any robot in the world. 

        -Supervisor controller: when the supervisor field of the robot is set to true, the controller can obtain higher permissions and more functions that the robot itself does not have, such as forcibly changing the robot position, refreshing the environment, obtaining the robot position speed, etc.

         -Node: every object in the world is a node.

         -Field: variable field in node. 

3.Webots interface introduces        

        -Main toolbar: save, refresh the world, control the simulation speed, screen capture and other functions;

        -Scene tree: it includes worldinfo, viewpoint and each robot, object, environment and other nodes in the world. Worldinfo defines parameters such as simulation step size and gravity of the world, and viewpoint defines parameters related to the perspective of software interface.

       - Domain editor: edit the field parameters of each node, such as modifying position coordinates and rotation angles, etc

       -3D window: display simulation screen

       -Control panel: display the results printed when robot controller is running

       -Text editor: edit the robot controller. You can write and modify the controller code directly on it.

menu bar

       -File: new, open, save, reload world, screenshot, etc

      -Edit: copy, paste, find, comment, etc

      -View: follow view angle, restore view angle, select projection method, etc

      -Simulation: select pause, step, real-time, fast and other operation modes

      -Build: a solution for generating and cleaning C + + code

     -Overlays: control the display window of camera, display, etc

     -Tools: control window layout, etc

     -Wizard: create a new project directory, controller, and physical plug-in

     -Help: teaching, database, Q & A, etc

06.jpg

Figure 6. Software interface

 

 

4. Webots project demonstration (help / webots guide tour)

(1) UAV Control

        Webots/projects/robots/dji/mavic/worlds/mavic_ 2_ pro.wbt

        The example robot is a mavic2pro UAV, which uses keyboard keys to control the UAV's forward, backward, left turn, right turn and other operations. Its main principle is to enable and set the UAV equipment, adjust the corresponding roll, pitch, yaw and vertical input according to the keyboard keys, and drive the UAV's four steering engines to complete the corresponding operation according to the calculated input.


- 'up': forward.                                         - 'down': back.

- 'right': turn right.                                   - 'left': turn left.

- 'shift+ up': increase target height.         - 'shift + down': reduce target height.

- 'shift + right': right translation.             - 'shift + left': left translation.


07.jpg

Figure 7. UAV demonstration interface

(2)Action demonstration of Robotis-op3 biped robot

08.jpg

Figure 8. Bipedal robot demonstration interface

Webots/projects/robots/robotis/darwin-op/worlds/robotis_op3.wbt

       In this example, the robot-op3 robot of robots company is used. The action Manager Robot op2motionmanager is built in webots, and the action group of webots is called through the action manager (the action file is "motion_ 4095. Bin "), perform the actions of waving, left kicking, right kicking, bowing, etc.


(3) Urban road vehicle driving

 Webots/projects/vehicles/worlds/city.wbt

   This example controls the vehicle driving in the modeled urban road environment, uses the keyboard direction key to control the vehicle, up corresponds to acceleration, down corresponds to deceleration, left and right correspond to left and right turn of steering wheel. Obstacle avoidance and follow the yellow line of the road. in the process of vehicle control

09.jpg

Figure 9. Demonstration of vehicles on urban roads

(4)Logistics demonstration

        Webots/projects/robots/kinematics/tinkerbots/worlds/tinkerbots_demo.wbt

    This example is a logistics demonstration that controls the robot arm to grab objects and place them on the conveyor belt.

 10.jpg

Figure 10. Demonstration of logistics vehicles