Webots

Artikel bearbeiten
Webots
Wbinterface.png Autonomes Auto in Webots
Entwickler Cyberbotics Ltd.
Stabile Version Webots R2021a / 15. Dezember 2020
Repository GitHub
Betriebssystem Windows 10, Linux 64 Bit, Mac OS X 10.14, 10.13
Art Robotik-Simulator
Lizenz Apache 2
Webseite Cyberbotics-Webseite

Webots ist ein kostenloser und Open-Source-3D- Robotersimulator, der in Industrie, Bildung und Forschung eingesetzt wird.

Das Webots-Projekt wurde 1996 gestartet und zunächst von Dr. Olivier Michel an der Eidgenössischen Technischen Hochschule ( EPFL ) in Lausanne ( Schweiz) und ab 1998 von Cyberbotics Ltd. als proprietäre lizenzierte Software entwickelt.Seit Dezember 2018 wird es unter der kostenlosen und Open-Source- Lizenz Apache 2 veröffentlicht.

Webots enthält eine große Sammlung frei modifizierbarer Modelle von Robotern, Sensoren, Aktoren und Objekten.Darüber hinaus ist es auch möglich, neue Modelle von Grund auf neu zu erstellen oder aus der 3D-CAD-Software zu importieren.Beim Entwerfen eines Robotermodells gibt der Benutzer sowohl die grafischen als auch die physikalischen Eigenschaften der Objekte an.Die grafischen Eigenschaften umfassen Form, Abmessungen, Position und Ausrichtung, Farben und Textur des Objekts.Die physikalischen Eigenschaften umfassen die Masse, den Reibungsfaktor sowie die Feder- und Dämpfungskonstanten. In der Software ist eine einfache Fluiddynamik vorhanden.

Webots verwendet eine Gabelung der ODE ( Open Dynamics Engine ) zur Erkennung von Kollisionen und zur Simulation der Starrkörperdynamik.Mit der ODE-Bibliothek können physikalische Eigenschaften von Objekten wie Geschwindigkeit, Trägheit und Reibung genau simuliert werden.

Webots umfasst eine Reihe von Sensoren und Aktoren, die häufig in Roboterexperimenten verwendet werden, z. B. Lidars, Radare, Näherungssensoren, Lichtsensoren, Berührungssensoren, GPS, Beschleunigungsmesser, Kameras, Sender und Empfänger, Servomotoren (rotierend und linear), Positions- und Kraftsensoren, LEDs, Greifer, Gyros, Kompass, IMU usw.

Die Robotersteuerungsprogramme könnenmithilfe einer einfachen APIaußerhalb von Webots in C, C ++, Python, ROS, Java und MATLAB geschrieben werden.

Webots bietet die Möglichkeit, Screenshots zu machen und Simulationen aufzuzeichnen.Webots-Welten werden in plattformübergreifenden *.wbt-Dateien gespeichert, deren Format auf der VRML- Sprachebasiert.Man kann auch Webots-Welten und -Objekte im VRML-Format importieren und exportieren.Benutzer können mit einer laufenden Simulation interagieren, indem sie Roboter und andere Objekte mit der Maus bewegen.Webots können mithilfe von WebGL auch eine Simulation in Webbrowsern streamen.

Simulation eines Robotis-Op3in Webots Simulation eines Pioneer 3-AT (Adept Mobile Robots) mit einem SICK LMS 291 in Webots Simulation eines Pioneer 3-DX (Adept Mobile Robots) in Webots Ein Simulationsmodell des PR2-Roboters in Webots. Ein Simulationsmodell des Khepera III-Roboters mit Greifer in Webots. Ein Simulationsmodell eines Salamander-Roboters in Webots mit einer deformierbaren Haut. Ein Simulationsmodell des Boston Dynamics Atlas-Roboters in Webots.

Inhalt

  • 1 Weboberfläche
  • 2 Beispiel für die Controller-Programmierung
  • 3 Hauptanwendungsfelder
  • 4 Enthaltene Robotermodelle
  • 5 Cross-Kompilierung und Fernsteuerungsunterstützung
  • 6 Siehe auch
  • 7 Referenzen
  • 8 Externe Links

Webschnittstelle

Seit dem 18. August 2017 bietet die Website robotbenchmark.net über die Webots-Weboberfläche freien Zugang zu einer Reihe von Robotik-Benchmarks, die auf Webots-Simulationen basieren.Webots-Instanzen werden in der Cloud ausgeführt und die 3D-Ansichten werden im Benutzerbrowser angezeigt.Über diese Weboberfläche können Benutzer Roboter in Python programmieren und Schritt für Schritt die Robotersteuerung erlernen.

Beispiel für die Controller-Programmierung

Dies ist ein einfaches Beispiel für die Programmierung von C / C ++ - Controllern mit Webots: ein triviales Verhalten zur Vermeidung von Kollisionen.Zunächst läuft der Roboter vorwärts. Wenn ein Hindernis erkannt wird, dreht er sich eine Weile um sich selbst und nimmt dann die Vorwärtsbewegung wieder auf.

#include lt;webots/robot.hgt;#include lt;webots/differential_wheels.hgt;#include lt;webots/distance_sensor.hgt;#define TIME_STEP 64int main() {// initialize Webotswb_robot_init();// get handle and enable distance sensorWbDeviceTag ds = wb_robot_get_device("ds");wb_distance_sensor_enable(ds, TIME_STEP);// control loopwhile (1) {// read sensorsdouble v = wb_distance_sensor_get_value(ds);// if obstacle detectedif (v gt; 512) {// turn aroundwb_differential_wheels_set_speed(-600, 600);}else {// go straightwb_differential_wheels_set_speed(600, 600);}// run a simulation stepwb_robot_step(TIME_STEP);}return 0;}

Hauptanwendungsgebiete

Enthaltene Robotermodelle

Eine vollständige und aktuelle Liste finden Sie im Webots-Benutzerhandbuch.

Cross-Kompilierung und Fernsteuerungsunterstützung

Siehe auch

Verweise

Externe Links

Wikimedia Commons hat Medien zu Webots.
Contacts: mail@wikibrief.org
Der Inhalt ist unter der CC BY-SA 3.0-Lizenz verfugbar (sofern nicht anders angegeben).