Anleitung zum einfachen Einstieg in ROS2: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
 
(185 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
[[Kategorie:Projekte]]  
[[Kategorie:Projekte]]  
<!-- Kopieren Sie diesen Header in Ihren Artikel, damit er aufgelistet wird. 
 
[[Datei:Speedy.jpg|mini|200px|Abb. 1: Speedy das Tempomessgerät]]-->
[[Datei:Csm_ROS2_de25589e21.png|right|mini|500px|Abb.1: ROS 2<nowiki></nowiki>]]
'''Autor:''' Marius Küpper<br/>
 
 
'''Autor:''' [[Benutzer:Marius_Kuepper| Marius Küpper]]<br/>
'''Art:''' Projektarbeit<br>
'''Art:''' Projektarbeit<br>
'''Dauer:''' April - September 2022<br>
'''Dauer:''' April - September 2022<br>
Zeile 9: Zeile 11:


== Thema ==
== Thema ==
 
Das Unternehmen '''Hanning Elektro-Werke GmbH & Co. KG''' hat der Hochschule Hamm-Lippstadt ein Fahrerloses Transportfahrzeug '''(FTF)''', sowie eine Simulation von diesem zu Forschungszwecken zur Verfügung gestellt. Diese Projektarbeit soll als Anleitung dienen die Simulation in Betrieb zu nehmen und auf dem Weg dahin das verwendete Robot Operating System 2 '''(ROS2)''' zu vermitteln. Es wird unter anderem erklärt, wie Sie dazu eine virtuelle Maschine '''(VM)''' nutzen können, das Linux-Betriebssystem installieren, an das benötigte Repository kommen, '''ROS2''' und alle anderen benötigten Programme und Pakete installieren, die Simulation des '''FTF''' starten und sich darin zurechtfinden und arbeiten können.


== Aufgabenstellung ==
== Aufgabenstellung ==
Zeile 17: Zeile 19:
* Optimierung des Artikels
* Optimierung des Artikels
* optional: Bereitstellung von Demoprogrammen zum einfachen Einstieg
* optional: Bereitstellung von Demoprogrammen zum einfachen Einstieg
 
<br clear = all>
 
== Anforderungen ==
 
 
 
 
== Anforderungen an die Projektarbeit ==
== Anforderungen an die Projektarbeit ==
* Wissenschaftliche Vorgehensweise (Projektplan, etc.), nützlicher Artikel: [[Gantt-Diagramm| Gantt Diagramm erstellen]]
* Wissenschaftliche Vorgehensweise (Projektplan, etc.), nützlicher Artikel: [[Gantt-Diagramm| Gantt Diagramm erstellen]]
Zeile 30: Zeile 26:
*[[Studentische_Arbeiten_bei_Prof._Schneider|Studentische Arbeiten bei Prof. Schneider]]
*[[Studentische_Arbeiten_bei_Prof._Schneider|Studentische Arbeiten bei Prof. Schneider]]
*[[Anforderungen_an_eine_wissenschaftlich_Arbeit| Anforderungen an eine wissenschaftlich Arbeit]]
*[[Anforderungen_an_eine_wissenschaftlich_Arbeit| Anforderungen an eine wissenschaftlich Arbeit]]
*[[Software_Versionsverwaltung_mit_SVN|Regeln zum Umgang mit SVN]]
<br clear = all>
==Projektplan==
[[Datei:MK-Projektplan_neu.png|900px|thumb|left|Abb.2: Projektplan<nowiki></nowiki>]]
<br clear = all>
== Anforderungen ==
=== Hardwareanforderungen ===
'''[https://www.virtualbox.org/wiki/End-user_documentation VirtualBox]:'''
*'''Prozessor:''' aktuellere AMD- oder Intel-Prozessoren sind ausreichend. <br>
*'''Arbeitsspeicher:''' 8 GB Minimum, aber je mehr, desto besser. <br>
*'''Festplattenspeicherplatz:''' Für die Installation werden nur etwa 30 MB benötigt. Für das Gastbetriebssystem wird allerdings deutlich mehr Speicherplatz benötigt. Sie sollten mindestens 20-30 GB einplanen, je nachdem was Sie vorhaben zu installieren. <br>
'''[https://www.cyberbotics.com/doc/guide/system-requirements?version=develop WeBots]:'''
*'''Prozessor:''' Aktuellere AMD- oder Intel-Prozessoren sind ausreichend. Eine CPU mit vier Kernen wird empfohlen. <br>
*'''Grafikkarte/ -chip:''' Eine NVIDIA oder AMD [https://support.esri.com/de/technical-article/000011375 OpenGL-fähige] (Minimum Version 3.3) Grafikkarte mit mindestens 512 MB Grafikspeicher ist erforderlich. <br>


== Projektplan ==
=== Softwareanforderungen ===
Nützlicher Artikel: [[Gantt-Diagramm| Gantt Diagramm erstellen]]
* [https://www.virtualbox.org/ VirtualBox] '''(Version 6.1.36!)'''
[[Datei:Projektplan MariusKüpper.png|rahmenlos|rechts]]
* [https://docs.ros.org/ ROS2]
 
* [https://tortoisesvn.net/ TortoiseSVN]
 
* [https://cyberbotics.com/doc/guide/installation-procedure#installing-the-debian-package-with-the-advanced-packaging-tool-apt WeBots]
 
 


== [[Installation der virtuellen Maschine VirtualBox|Installation der virtuellen Maschine VirtualBox]] ==
== [[ROS2 in Ubuntu einbinden|ROS2 in Ubuntu einbinden]] ==
== [[SVN-Repository in Linux erstellen|SVN-Repository in Linux erstellen]] ==
== [[Inbetriebnahme unserer WeBots-Simulation|Inbetriebnahme unserer WeBots-Simulation]] ==
== [[Der Umgang mit ROS2|Der Umgang mit ROS2]] ==
== [[Steuerung des FTF in der Simulation|Steuerung des FTF in der Simulation]] ==
== [[Knoten, Nachrichten und Beziehungen|Knoten, Nachrichten und Beziehungen]] ==
== [[Mögliche Alternativen|Mögliche Alternativen]] ==




== Evaluation anderer Studierender ==


=== Evaluationen ===


'''"'''Nach der Installation der richtigen Version von VirtualBox konnte ich der Anleitung gut folgen und habe besonders durch die Bilder einfach durch den Installationsprozess gefunden. Die Befehle in den grauen Kästen haben am Ende immer zum gewünschten Ziel geführt. Mir war manchmal nicht klar, welche Version von ROS ich installieren sollte, wenn man die Wahl hatte, zwischen Galactic oder Humble. Da würde ich mir eine bessere Erklärung wünschen. Im Github konnte ich mir den Roboter Epuk herunterladen und mit Hilfe der Anleitung auch steuern. Ohne einmal mit Ubuntu gearbeitet zu haben, konnte ich nach kurzer Zeit und ein bisschen Probieren eine Simulation starten und ein paar Funktionen ausprobieren.'''"'''
Aykut Ersoy, studiert WING an der HSHL im 7. Semester


'''"'''Im Allgemeinen eine gut und detailierte Anleitung für die Einrichtung einer virtuellen Maschine mit ROS2. Der Step by Step Guide hilft immer mit passenden Bildern, um schnell durch die Installation zu finden. Ein Nachteil der VM ist die schlechte Skalierung der Fenster und dadurch halb verdeckte „Akzeptieren“ Felder. Dieses Problem wird jedoch, sobald es möglich ist mit Hilfe der Anleitung gelöst. Die Einbindung in ROS2 klappte danach problemlos. Leider musste ich mich einer Alternative zu Webots bedienen, die sich durch das passende Grundgerüst, leicht mit kleinen Modifikationen installieren und ausführen ließ. Hier hilft es im Zweifelsfall die VM als Administrator zu starten.'''"'''
Marten Eilers, studiert INFO/ MATH an der RWTH Aachen


== Installation der virtuellen Maschine VirtualBox ==
=== Optimierung des Artikels aufgrund der Evaluationen: ===
 
*Kompatible VirtualBox-Version besser gekennzeichnet
* 1. Download der Software
*ROS2-Version besser gekennzeichnet
  VirtualBox: [[https://download.virtualbox.org/virtualbox/6.1.36/VirtualBox-6.1.36-152435-Win.exe]]
*Problem mit verdeckten Fenstern erläutert
* 2. Nach dem Download das Setup ausführen und abschließen.
*VM als Administrator ausführen hinzugefügt
* 3. Wenn möglich, Virtualization oder SVM im BIOS aktivieren. (Befindet sich im BIOS unter den CPU-Einstellungen. Dies sorgt dafür, dass man Virtualbox später mehr Ressourcen zuweisen kann.)
* 4. Download des Betriebssystems.
  Ubuntu 20.04.4 LTS (Focal Fossa): [[https://releases.ubuntu.com/20.04/ubuntu-20.04.4-desktop-amd64.iso]]
  Ubuntu 22.04.1 LTS: [[https://releases.ubuntu.com/22.04.1/ubuntu-22.04.1-desktop-amd64.iso?_ga=2.104294080.1746881759.1661265452-1939419577.1661265452]]
 
<gallery mode="slideshow" caption="Installationsablauf und Einrichtung von VirtualBox" style="max-width:1000px">
MK-1.png|Abb.1: Man beginnt die Installation von Ubuntu, indem man oben auf die Schaltfläche "Neu" mit dem blauen Stern drückt. 
MK-2.png|Abb.2: Nach Eingabe des Installationspfades und dem Namen des Betriebssystems werden die Felder "Typ" und "Version" automatisch ergänzt.
MK-3.png|Abb.3: Im nächsten Schritt entscheidet man, wie viel Arbeitsspeicher man der virtuellen Maschine zuweist. Man sollte den Schieber in jedem Falle im "grünen Bereich" lassen, da es sonst möglicherweise zu Leistungseinbußen mit dem Computer kommen könnte.
MK-4.png|Abb.4: "Festplatte erzeugen" übernehmen.
MK-5.png|Abb.5: "VDI (VirtualBox Disk Image)" übernehmen.
MK-6.png|Abb.6: "dynamisch alloziert" übernehemen. Die virtuelle Maschine verwendet somit nur den Platz, den sie benötigt. Im nächsten Schritt wird also nur die maximale nutzbare Größe ausgewählt.
MK-7.png|Abb.7: Hier wählt man den Ordner, in dem Dateien von Ubuntu gespeichert werden. Außerdem wählt man die Größe der virtuellen Festplatte aus. Ubuntu benötigt für die ausschließliche Verwendung von ROS2 nur sehr wenig Speicherplatz. 10 GB - 20 GB sind ausreichend.
MK-8.png|Abb.8: Nach erfolgreichem Erstellen der virtuellen Maschine werden jetzt noch die Einstellungen dieser verändert um Ubuntu starten zu können. Dazu klickt man oben auf die Schaltfläche "Ändern" mit dem orangen Zahnrad.
MK-9.png|Abb.9: Im Pfad "Allgemein", unter dem Reiter "Erweitert" wählt man nun bei "Gemeinsame Zwischenablage, sowie "Drag'n'Drop" die Option "bidirektional" aus. Dadurch hat man die Möglichkeit zwischen seiner virtuellen Maschine, auf der Ubuntu läuft und seinem primären Betriebssystem Dateien und alle Inhalte der Zwischenablage zu teilen.
MK-10.png|Abb.10:
MK-11.png|Abb.11:
MK-12.png|Abb.12:
MK-13.png|Abb.13:
MK-14.png|Abb.14:
MK-15.png|Abb.15:
MK-16.png|Abb.16:
MK-17.png|Abb.17:
MK-18.png|Abb.18:
MK-19.png|Abb.19:
MK-20.png|Abb.20:
MK-21.png|Abb.21:
MK-22.png|Abb.22:
MK-23.png|Abb.23:
MK-24.png|Abb.24:
MK-25.png|Abb.25:
MK-26.png|Abb.26:
MK-27.png|Abb.27:
MK-28.png|Abb.28:
MK-29.png|Abb.29:
MK-30.png|Abb.30:
MK-31.png|Abb.31:
</gallery>
 
 
== Funktionaler Systementwurf / Technischer Systementwurf ==
 
== Komponentenspezifikation ==
 
== Programmierung ==
 
== Komponententest ==
 
 
== Ergebnis ==
 


== Zusammenfassung ==
== Zusammenfassung ==
Im Rahmen der Projektarbeit werden alle notwendigen Anforderungen aufgezeigt und schrittweise erläutert. Die virtuelle Maschine VirtualBox, welche sich aufgrund ihrer vielen Features und Einstellmöglichkeiten sehr gut zur Benutzung eignet, wird vorgestellt und die Installation und Einrichtung gezeigt. Um die Simulation von Hanning in Betrieb zu nehmen, wird die Installation von ROS2 erklärt und vorgestellt, wie ein Workspace mit den benötigten Dateien aus SVN aufgebaut wird. Anhand der bereitgestellten Simulation von Hanning wird gezeigt, welche Möglichkeiten zur Steuerung des FTF zur Verfügung stehen. Durch die Steuerung mit SLAM wird das Thema Navigation aufgegriffen und erläutert. Zum Schluss werden Tools (RQt, RViz, roswtf) zur Anschauung von Knoten, Themen und Abhängigkeiten, sowie zum Debugging aufgezeigt und erklärt.


=== Lessons Learned ===
*Da ich vor Beginn der Projektarbeit wenig Berührungspunkte mit Linux, Java und ROS2 hatte, war es zunächst schwierig für mich einige Inhalte zu durchdringen. Dies wiederum hat mich motiviert, mich besonders eingehend und strukturiert mit dem Thema zu befassen. Durch die intensive Auseinandersetzung konnte ich viele Dinge neu lernen und anwenden. Die Tutorials auf der [[https://docs.ros.org/ ROS2-Seite]], sowie die interaktiven Tutorials von [[https://www.theconstructsim.com/ TheConstruct]] habe ich als besonders hilfreich wahrgenommen. Für zukünftige Aufgaben im Studium, aber auch im späteren Arbeitsleben nehme ich mit, dass es für mich besonders motivierend ist, wenn ich vor komplexe Aufgaben gestellt werde. Außerdem nehme ich mit, dass es eine intensive und strukturierte Erarbeitung möglich macht, sehr komplexe Themen zu erschließen.
*Die Verwendung einer VM hat sich als großer Vorteil herausgestellt, da man Abbilder des Betriebssystems erstellen kann und die Integrität der Simulation durch Veränderungen von Softwareversionen nicht gefährdet.
*Der Installationsvorgang bis zum Starten der Simulation kann mit einer VM umgangen werden, indem ein Abbild einer funktionsfähigen VM erstellt und zur Verfügung gestellt wird.
*Die Verwendung von Docker, um ein Systemabbild zu erstellen, hat sich als kompliziert herausgestellt, da gewisse Container auf dem Dockerhub gar nicht, oder nicht als kompatible Version vorhanden sind.
*Als Neueinsteiger ins Thema ROS2 und geringen Kenntnissen in Python, sowie dem Betriebssystem Linux empfiehlt sich zunächst der Umgang mit den Grundlagen, bevor man sich an eine komplexe Simulation, wie die von Hanning, begibt.


=== Ausblick ===
*Mir war es nicht möglich einen lauffähigen Docker-Container für die Simulation des FTF zu erstellen, daher könnte das Thema "Docker" vom Umfang und der Komplexität als eigenständiges Projekt bearbeitet werden, mit dem Ziel eine dauerhaft lauffähige Simulation als "Abbild" (ohne VM) für spätere Studierende zu ermöglichen.


=== Lessons Learned ===
== Projektunterlagen ==
 
*[https://svn.hshl.de/svn/Robotik_und_Autonome-Systeme/trunk/Projekte/FTF_Hanning/FTS/src/ Link zu dem SVN_Ordner des Projekts.]
*[https://hshl.sciebo.de/s/M6TQL4AxqOP9aU1 VM Appliance]


== Weblinks ==
<div class="toccolours mw-collapsible mw-collapsed">
'''Verwendete Software'''
<div class="mw-collapsible-content">
*https://www.virtualbox.org/
*https://docs.ros.org/
*https://tortoisesvn.net/
*https://cyberbotics.com/doc/guide/installation-procedure#installing-the-debian-package-with-the-advanced-packaging-tool-apt
*https://ubuntu.com/
*https://rapidsvn.org/
*https://code.visualstudio.com/</div>
</div>


== Projektunterlagen ==
<div class="toccolours mw-collapsible mw-collapsed">
Link zu dem SVN_Ordner des Projekt.  
'''ROS2'''
<div class="mw-collapsible-content">
*https://docs.ros.org/en/foxy/index.html
*https://docs.ros.org/en/galactic/index.html
*https://docs.ros.org/en/humble/index.html
*https://www.theconstructsim.com/
*http://wiki.ros.org/ROS/Tutorials/InstallingandConfiguringROSEnvironment</div>
</div>


== YouTube Video ==
<div class="toccolours mw-collapsible mw-collapsed">
Das Video von diesem Projekt finden Sie auf Youtube unter dem Link:
'''SVN'''
<div class="mw-collapsible-content">
*https://rapidsvn.org/
*https://tortoisesvn.net/</div>
</div>


== Weblinks ==
<div class="toccolours mw-collapsible mw-collapsed">
*
'''WeBots'''
<div class="mw-collapsible-content">
*https://cyberbotics.com/doc/reference/webots-world-files
*https://docs.ros.org/en/foxy/Tutorials/Advanced/Simulators/Webots.html
*https://cyberbotics.com/doc/guide/tutorials</div>
</div>


<div class="toccolours mw-collapsible mw-collapsed">
'''Der Umgang mit ROS2'''
<div class="mw-collapsible-content">
*https://code.visualstudio.com/
*http://wiki.ros.org/catkin/package.xml
*https://roboticscasual.com/tutorial-ros2-launch-files-all-you-need-to-know/
*https://docs.ros.org/en/foxy/Tutorials/Intermediate/Launch/Creating-Launch-Files.html</div>
</div>


== Literatur ==
<div class="toccolours mw-collapsible mw-collapsed">
'''Steuerung des FTF in der Simulation'''
<div class="mw-collapsible-content">
*https://github.com/ros-teleop/teleop_twist_keyboard</div>
</div>


<div class="toccolours mw-collapsible mw-collapsed">
'''Knoten, Nachrichten und Beziehungen'''
<div class="mw-collapsible-content">
*https://en.wikipedia.org/wiki/Monte_Carlo_localization
*http://wiki.ros.org/rviz
*https://docs.ros.org/en/foxy/Concepts/About-RQt.html
*http://wiki.ros.org/roswtf
*http://wiki.ros.org/roswtf/Plugins
*https://pypi.org/
*https://pypi.org/project/pip/</div>
</div>




----
----
→ zurück zum Hauptartikel: [[Studentische_Arbeiten|Studentische Arbeiten]]
→ zurück zum Hauptartikel: [[Studentische_Arbeiten|Studentische Arbeiten]]

Aktuelle Version vom 26. Februar 2023, 14:24 Uhr


Abb.1: ROS 2


Autor: Marius Küpper
Art: Projektarbeit
Dauer: April - September 2022
Betreuer: Prof. Schneider


Thema

Das Unternehmen Hanning Elektro-Werke GmbH & Co. KG hat der Hochschule Hamm-Lippstadt ein Fahrerloses Transportfahrzeug (FTF), sowie eine Simulation von diesem zu Forschungszwecken zur Verfügung gestellt. Diese Projektarbeit soll als Anleitung dienen die Simulation in Betrieb zu nehmen und auf dem Weg dahin das verwendete Robot Operating System 2 (ROS2) zu vermitteln. Es wird unter anderem erklärt, wie Sie dazu eine virtuelle Maschine (VM) nutzen können, das Linux-Betriebssystem installieren, an das benötigte Repository kommen, ROS2 und alle anderen benötigten Programme und Pakete installieren, die Simulation des FTF starten und sich darin zurechtfinden und arbeiten können.

Aufgabenstellung

  • Einarbeitung in ROS 2 mit Tutorials
  • Dokumentation der wesentlichen Anleitungen bezogen auf das FTF im HSHL Wiki
  • Evaluation durch andere(n) Studierende
  • Optimierung des Artikels
  • optional: Bereitstellung von Demoprogrammen zum einfachen Einstieg


Anforderungen an die Projektarbeit


Projektplan

Abb.2: Projektplan


Anforderungen

Hardwareanforderungen

VirtualBox:

  • Prozessor: aktuellere AMD- oder Intel-Prozessoren sind ausreichend.
  • Arbeitsspeicher: 8 GB Minimum, aber je mehr, desto besser.
  • Festplattenspeicherplatz: Für die Installation werden nur etwa 30 MB benötigt. Für das Gastbetriebssystem wird allerdings deutlich mehr Speicherplatz benötigt. Sie sollten mindestens 20-30 GB einplanen, je nachdem was Sie vorhaben zu installieren.

WeBots:

  • Prozessor: Aktuellere AMD- oder Intel-Prozessoren sind ausreichend. Eine CPU mit vier Kernen wird empfohlen.
  • Grafikkarte/ -chip: Eine NVIDIA oder AMD OpenGL-fähige (Minimum Version 3.3) Grafikkarte mit mindestens 512 MB Grafikspeicher ist erforderlich.

Softwareanforderungen

Installation der virtuellen Maschine VirtualBox

ROS2 in Ubuntu einbinden

SVN-Repository in Linux erstellen

Inbetriebnahme unserer WeBots-Simulation

Der Umgang mit ROS2

Steuerung des FTF in der Simulation

Knoten, Nachrichten und Beziehungen

Mögliche Alternativen

Evaluation anderer Studierender

Evaluationen

"Nach der Installation der richtigen Version von VirtualBox konnte ich der Anleitung gut folgen und habe besonders durch die Bilder einfach durch den Installationsprozess gefunden. Die Befehle in den grauen Kästen haben am Ende immer zum gewünschten Ziel geführt. Mir war manchmal nicht klar, welche Version von ROS ich installieren sollte, wenn man die Wahl hatte, zwischen Galactic oder Humble. Da würde ich mir eine bessere Erklärung wünschen. Im Github konnte ich mir den Roboter Epuk herunterladen und mit Hilfe der Anleitung auch steuern. Ohne einmal mit Ubuntu gearbeitet zu haben, konnte ich nach kurzer Zeit und ein bisschen Probieren eine Simulation starten und ein paar Funktionen ausprobieren."

Aykut Ersoy, studiert WING an der HSHL im 7. Semester

"Im Allgemeinen eine gut und detailierte Anleitung für die Einrichtung einer virtuellen Maschine mit ROS2. Der Step by Step Guide hilft immer mit passenden Bildern, um schnell durch die Installation zu finden. Ein Nachteil der VM ist die schlechte Skalierung der Fenster und dadurch halb verdeckte „Akzeptieren“ Felder. Dieses Problem wird jedoch, sobald es möglich ist mit Hilfe der Anleitung gelöst. Die Einbindung in ROS2 klappte danach problemlos. Leider musste ich mich einer Alternative zu Webots bedienen, die sich durch das passende Grundgerüst, leicht mit kleinen Modifikationen installieren und ausführen ließ. Hier hilft es im Zweifelsfall die VM als Administrator zu starten."

Marten Eilers, studiert INFO/ MATH an der RWTH Aachen

Optimierung des Artikels aufgrund der Evaluationen:

  • Kompatible VirtualBox-Version besser gekennzeichnet
  • ROS2-Version besser gekennzeichnet
  • Problem mit verdeckten Fenstern erläutert
  • VM als Administrator ausführen hinzugefügt

Zusammenfassung

Im Rahmen der Projektarbeit werden alle notwendigen Anforderungen aufgezeigt und schrittweise erläutert. Die virtuelle Maschine VirtualBox, welche sich aufgrund ihrer vielen Features und Einstellmöglichkeiten sehr gut zur Benutzung eignet, wird vorgestellt und die Installation und Einrichtung gezeigt. Um die Simulation von Hanning in Betrieb zu nehmen, wird die Installation von ROS2 erklärt und vorgestellt, wie ein Workspace mit den benötigten Dateien aus SVN aufgebaut wird. Anhand der bereitgestellten Simulation von Hanning wird gezeigt, welche Möglichkeiten zur Steuerung des FTF zur Verfügung stehen. Durch die Steuerung mit SLAM wird das Thema Navigation aufgegriffen und erläutert. Zum Schluss werden Tools (RQt, RViz, roswtf) zur Anschauung von Knoten, Themen und Abhängigkeiten, sowie zum Debugging aufgezeigt und erklärt.

Lessons Learned

  • Da ich vor Beginn der Projektarbeit wenig Berührungspunkte mit Linux, Java und ROS2 hatte, war es zunächst schwierig für mich einige Inhalte zu durchdringen. Dies wiederum hat mich motiviert, mich besonders eingehend und strukturiert mit dem Thema zu befassen. Durch die intensive Auseinandersetzung konnte ich viele Dinge neu lernen und anwenden. Die Tutorials auf der [ROS2-Seite], sowie die interaktiven Tutorials von [TheConstruct] habe ich als besonders hilfreich wahrgenommen. Für zukünftige Aufgaben im Studium, aber auch im späteren Arbeitsleben nehme ich mit, dass es für mich besonders motivierend ist, wenn ich vor komplexe Aufgaben gestellt werde. Außerdem nehme ich mit, dass es eine intensive und strukturierte Erarbeitung möglich macht, sehr komplexe Themen zu erschließen.
  • Die Verwendung einer VM hat sich als großer Vorteil herausgestellt, da man Abbilder des Betriebssystems erstellen kann und die Integrität der Simulation durch Veränderungen von Softwareversionen nicht gefährdet.
  • Der Installationsvorgang bis zum Starten der Simulation kann mit einer VM umgangen werden, indem ein Abbild einer funktionsfähigen VM erstellt und zur Verfügung gestellt wird.
  • Die Verwendung von Docker, um ein Systemabbild zu erstellen, hat sich als kompliziert herausgestellt, da gewisse Container auf dem Dockerhub gar nicht, oder nicht als kompatible Version vorhanden sind.
  • Als Neueinsteiger ins Thema ROS2 und geringen Kenntnissen in Python, sowie dem Betriebssystem Linux empfiehlt sich zunächst der Umgang mit den Grundlagen, bevor man sich an eine komplexe Simulation, wie die von Hanning, begibt.

Ausblick

  • Mir war es nicht möglich einen lauffähigen Docker-Container für die Simulation des FTF zu erstellen, daher könnte das Thema "Docker" vom Umfang und der Komplexität als eigenständiges Projekt bearbeitet werden, mit dem Ziel eine dauerhaft lauffähige Simulation als "Abbild" (ohne VM) für spätere Studierende zu ermöglichen.

Projektunterlagen

Weblinks

Steuerung des FTF in der Simulation



→ zurück zum Hauptartikel: Studentische Arbeiten