Der vorliegende Kurs realisiert die Vorlesung "Softwareprojekt" an der TU Bergakademie Freiberg auf der Basis von LiaScript. Eine interaktive Darstellung der Inhalte ist unter
zu finden.
Datum | Titel |
---|---|
18.10.2022 | Einführung |
25.10.2022 | Klassen und Strukturen |
01.11.2022 | Speicher und Pointer |
08.11.2022 | Templates |
15.11.2022 | Vererbung und C++ Standardbibliothek |
22.11.2022 | Entwurfsmodelle |
29.11.2022 | Einführung ROS2 |
06.12.2022 | ROS2 Entwicklungsprozess |
13.12.2022 | ROS2 Entwicklungsprozess Beispiele |
20.12.2022 | ROS2 Kommunikation |
10.01.2023 | Sensoren |
17.01.2023 | Sensoren |
24.01.2023 | Sensordatenverarbeitung |
31.02.2023 | Regelungstechnik |
07.02.2023 | Datenfusion |
{{0}}
Dozenten
Name | |
---|---|
Sebastian Zug | [email protected] |
Georg Jäger | [email protected] |
Gero Licht | [email protected] |
{{1}}
Zielstellung der Veranstaltung
Die Veranstaltung richtet sich an Informatiker und Mathematiker und adressiert die folgenden Punkte:
-
aufbauend auf dem vorangegangenen Kurs Softwareentwicklung werden die Konzepte von C++ erläutert
-
Einführung in das Robot Operating System (ROS)
-
Gegenüberstellung von ROS1 und ROS2
-
Elemente von Robotersystemen und deren Implementierung wie
- Grundlagen der Sensoren und deren Einbettung in ROS
- Sensordatenverarbeitung und Fusion
- Aktoren und deren Regelung
Die Vorlesungen und Übungen dienen der Vorbereitung auf die praktischen Aufgaben im Sommersemester.
Demo - ROS Integration von Sensoren
{{2}}
Prüfungsleistungen
Die Veranstaltung ist in zwei Teile gegliedert. Im Wintersemester werden Sie zunächst mit den Grundlagen vertraut gemacht, um :
- als Informatiker schließen Sie die Veranstaltung am Ende des Sommersemesters mit der praktischen Arbeit ab,
- als Mathematiker mit einer kleineren Aufgabe am Ende des Wintersemesters
Zeitaufwand und Engagement
Die Veranstaltung wird mit 9 CP in Ihrem Studienverlauf abgebildet. Entsprechend beträgt der Zeitaufwand insgesamt 270 Stunden und setzt sich aus 105h Präsenzzeit und 165h Selbststudium zusammen.
Die eigene Beschäftigung mit der C++ Programmierung und den Konzepten von ROS ist für das erfolgreiche Bestehen der Veranstaltung unabdingbar!
{{3}}
Ablaufplan Übungen
Wir beginnen zunächst mit den Übungen zur Verwendung von C++ (November) und starten im Dezember mit der Verwendung des "persönlichen" Roboters. Dafür stellen wir Ihnen ab November einen TurtleBot 3 zur Verfügung, den Sie für die Realsierung der Aufgaben nutzen können.
Tragen Sie sich bitte in den Kurs Softwaretechnologie-Projekt (Prototyp) im e-learning System OPAL ein.
Vorlesungen
- Vorlesung "Objektorientierte Programmierung mit C++ " der Universität Ulm (Dr. Andreas F. Borchert) Link
- Vorlesung "Programmieren in C++" der Universität Freiburg (Frau Prof. Dr. Hannah Bast) Link
Videotutorials
Talks
- Stroustrup, Bjarne - "The Essence of C++" , Link
- Stroustrup, Bjarne - "Learning and Teaching Modern C++", Link
Bücher
- Torsten T. Will, "C++ - Das umfassende Handbuch", Rheinwerk Computing 2019
- Legen Sie sich ein Repository an, mit dem Sie gemiensam mit Kommilitonen arbeiten!
- Entscheiden Sie sich für Linux als Betriebssystem auf Ihrem Rechner :-), in diesem Fall sind alle Tools die Sie im Laufe des Semesters benötigen, sofort greifbar.
- Starten Sie mit kleinen Beispielen, um Ihre algorithmischen Fähigkeiten zu schulen und sich zum anderen mit der Semantik von C++ vertraut zu machen.
Wenn Sie Punkt 2. nicht uneingeschränkt folgen wollen, hätten Sie zumindest für die Einführung zu C++ unter Windows folgende Möglichkeiten:
Toolchain | Link | Bemerkung |
---|---|---|
Visual Studio Code | Tutorial | für C++ Teil zu empfehlen |
Visual Studio | ||
MinGW | MinGW Webseite | |
Cygwin | Cygwin Webseite | |
Linux-Subsystem | Microsoft Dokumentation | zu empfehlen |
WSL Vergleich |
Unter cygwin muss zunächst der Compiler gcc-g++
installiert werden. Für Rekonfigurationen und neues Pakete führen Sie einfach den Installer nochmals aus. Zudem sollten Sie in Ihrem Home einen symbolischen Link anlegen, der auf Ihren Arbeitsordner verweist.
$ ln -s /cygdrive/c/Users/Sebas/OneDrive/Desktop/Softwareprojekt/ mySoftware
Hinsichtlich Ihres Lieblingseditors haben Sie sicher schon eine Wahl getroffen :-)
- Stellen Sie Fragen, seinen Sie kommunikativ!
- Organisieren Sie sich in Arbeitsgruppen!
- Experimentieren Sie mit verschiedenen Entwicklungsumgebung um "Ihren Editor" zu finden
- Machen Sie Verbesserungsvorschläge für die Vorlesungsfolien!
-
... als studentischer Mitarbeiter
-
... in einem studentischen Projekt
... mit dem Thema