Webots: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Zeile 141: Zeile 141:
  Folgendermaßen sollt die Vorgehensweise aussehen : ➜ (file / Save text file ) ➜ Build ➜ Reset  
  Folgendermaßen sollt die Vorgehensweise aussehen : ➜ (file / Save text file ) ➜ Build ➜ Reset  
Das Build Menü findet man unter Abbildung 11.
Das Build Menü findet man unter Abbildung 11.
Sollten sich Fehler während der Simulation ergeben werden sie rot in der Konsolenausgabe angezeigt .


[[Datei:Build Menü .png|right|mini|400px|Abb.11:Build Menü <nowiki></nowiki>]]
[[Datei:Build Menü .png|right|mini|400px|Abb.11:Build Menü <nowiki></nowiki>]]

Version vom 21. Februar 2022, 11:51 Uhr

Autoren: Armel Talovic
Betreuer: Prof. Göbel
Art: Praxissemester
Projektlaufzeit: 02.11.2021-20.02.2022

Abb.1: Webots


Einleitung

Dieser Artikel dient zur Einarbeitung und Erklärung rund um das Programm Webots. Webots ist ein Simulationsprogramm, welches dem Benutzer ermöglicht eine virtuelle 3D-Welt zu erstellen. In Webots lassen sich sehr viele physikalische Eigenschaften , die es in der Realität gibt verwenden wie zum Beispiel Masse, Dämpfung und Dichte usw. In Webots kann man Wände beziehungsweise Hindernisse erstellen , diese werden als passive Objekte in der Software bezeichnet. Wiederum gibt es aktive Objekte wie den sogenannten mobilen Roboter , der unterschiedlichen Fortbewegungsmöglichkeiten besitzt.(Roboter mit Rädern , mit Beinen etc. ).Ebenfalls lassen sich die mobilen Roboter mit Sensoren und Aktoren ausstatten . Webots bietet sich besonders im Bereich der mobilen Robotik für Forschungs-und Bildungsprojekte optimal an . Einige Projekte setzen seit Jahren auf Webots z.B. im Bereich Prototyping von mobilen Robotern (Automobilindustrie , Luft- und Raumfahrt).

Übersicht

Dokumentation

https://wiki.hshl.de/wiki/index.php/Modellsimulation_in_Webots_und_Simulationen_mit_ROS2

Demo

Software

Weiterführende Links

Installation von Webots

Unter folgendem Link lässt sich das Programm downloaden :[1]

Nachdem man die Datei heruntergeladen hat , kann man sie an einem beliebigen Ort verlegen . Durch einen Doppelklick auf die Datei , lässt sich Webots schließlich installieren.

World

Eine World in Webots beinhaltet eine Beschreibung jedes Objekts : Aussehen , Position , Art des Objekts usw. Worlds sind gegliedert aufgebaut , das bedeutet das Objekte andere Objekte enthalten können z.B kann ein Roboter aus 4 Rädern , ein Bewegungssensor und ein Gelenk enthalten , das wiederum eine Kamera enthält

Controller

Ein Controller ist ein Programm , welches den Roboter steuert . Folgende Programmiersprachen können in Webots verwendet werden :

  • C ,
  • C++ ,
  • Java ,
  • Python oder
  • MATLAB.

Die Quell- und Binärdateien eines jeden Controllers werden zusammen in einem Controller-Verzeichnis gespeichert. Das Controller-Verzeichnis findet man im Unterverzeichnis " Controllers " .

Supervisor Controller

Der Supervisor Controller kann in jeder der vorher erwähnten Programmiersprachen geschrieben werden . Im Unterschied zu einer normalen Robotersteuerung hat der Supervisor Controller die Möglichkeit auf besondere Operationen zurückzugreifen , die sonst nur von einem menschlichen Bediener und nicht von einem echten Roboter durchgeführt werden können. Dazu gehört z.B. die Steuerung der Simulation . In der kann man den Roboter in eine gewünschte Position bewegen oder eine Videoaufzeichnung des Prozesses machen .

Webots Hauptmenü

Abb.2: Webots Menü




Das Hauptmenü von Webots besteht aus vier Hauptfenstern :

1. Das 3D-Fenster , welches die Simulation anzeigt

2. Das Scene Tree , welches eine hierarchische Darstellung der aktuellen Welt ist

3. Der Texteditor , mit dem man den Quellcode bearbeiten kann

4. Die Konsole , die die Steuerungsausgabe anzeigt während der Simulation

Ebenfalls befinden sich im GUI neun Menüs : File , Edit , View , Simulation , Build , Overlays , Tools , Wizards und Help.

Menü 1: Mit dem File Menü lassen sich die üblichen Optionen durchführen : Laden , Speichern und eine neue Welt erstellen .

Abb.3: Webots Menü

Menü 2: Das Menü Edit bietet die Funktionen Kopieren , Ausschneiden , Einfügen usw. an

Menü 3: Durch das View Menü lassen sich unterschiedliche Perspektiven einstellen wie etwa die Vorderansicht des Objektes , Draufsicht etc.

Menü 4: Im Simulationsmenü lässt sich das Geschehen simulieren und bei Bedarf auch pausieren .

Menü 5: Im Menü Build lässt sich der Controller-Code zu erzeugen .

Menü 6: Im Menü Overlays gibt es eine Darstellung der Elemente Kamera , Display und Entfernungsmesser . In jeder dieser Elemente gibt es eine Liste , welche anzeigt welche Geräte aktiv sind und welche nicht .

Menü 7: Im Menü Tools lassen sich verschiede Webots-Fenster öffnen unter anderem eine Interaktion mit der 3D-Simulation . Ebenso lässt sich die virtuelle Welt im Scene Tree bearbeiten .

Menü 8: Der zuvor erwähnte Controller lässt sich schließlich im Wizards Menü erstellen .

Anleitung

Um sich in Webots zurecht zu finden helfen folgende Tutorials.[2]

Erste eigene Welt erstellen, einen e-puck Roboter hinzufügen und einen Controller kreieren.


Ein neues Projekt erstellen

➜ Das Wizard Menü anklicken , New Project Directory auswählen und daraufhin alle verfügbaren Kästchen auswählen .


Die Maße der Arena ändern

➜ Mit einem Doppelklick auf die Node RectangleArena und in den Unterpunkten floorTileSize und wallHeight lassen sich die x , y , z Koordinaten ändern .(Siehe Abbildungen 4 und 5)


Abb.4:Maße ändern der Arena
Abb.5:Maße ändern der Arena


Koordinatensystem

Das Koordinatensystem in Webots ist fest und lässt sich nicht ändern . 
Dabei stellt der rote Pfeil die x-Achse dar und der grüne Pfeil die z-Achse .
Der blaue Pfeil gibt die y-Achse an .
Abb:6:Koordinatensystem


Beliebige Objekte in die Arena einfügen

➜ Den Add Button auswählen , daraufhin die Option PROTO nodes ( Webots Projects ) anklicken und zum Schluss die Auswahl Objects bedienen . (Siehe Abbildugen 7-10)


Abb.7:Objekte einfügen Schritt 1
Abb.8:Objekte einfügen Schritt 2
Abb.9:Objekte einfügen Schritt 3
Abb.10:Auswahl an verschieden Möglichkeiten an Objekten


Maße der Objekte ändern

Ebenfalls lassen sich zu jedem beliebigen hinzugefügten Objekt die jeweiligen Maße ändern . Nachdem man das Objekt hinzugefügt hat , tritt im Scene Tree eine neue Node auf . Mit einem Klick auf die neue Node , lassen sich dann die Maße ändern 
Abb.11: Maße der Objekte ändern


Controller kreieren

Um einen Controller in Webots kreieren zu können , muss man folgende Vorgehensweise vornehmen . Zunächst klickt man auf das Wizard Menü und wählt die Option New Robot Controller aus . Daraufhin gibt Webots eine Anzahl von verschieden Programmiersprachen an und man kann sich die gewünschte aussuchen . Infolgedessen lässt sich der Controller benennen . Damit man später den Alphabot mit dem Controller verbinden kann , muss man im Scene Tree auf die Alphabot Node klicken , dann die Option Controller auswählen , dann auf Select und folglich auf die Datei , die man vorher benannt hat . Damit der ganze Prozess abgeschlossen ist , muss man noch die World speichern .
Nachdem man all die Schritte durchgegangen ist , kann man nun im Texteditor den gewünschten Code aufschreiben . Dabei ist zu beachten , dass bevor die Simulation starten kann der Controller Code explizit gespeichert werden muss .

Folgendermaßen sollt die Vorgehensweise aussehen : ➜ (file / Save text file ) ➜ Build ➜ Reset 

Das Build Menü findet man unter Abbildung 11. Sollten sich Fehler während der Simulation ergeben werden sie rot in der Konsolenausgabe angezeigt .

Abb.11:Build Menü







Weiterführende Links


→ zurück zum Hauptartikel: Praxissemester Projektteam WS2021