AEP Gruppe B6 - SoSe18: Unterschied zwischen den Versionen
(24 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 8: | Zeile 8: | ||
Damit am Ende des Praktikums auch jeder das Ergebnis des ganzen sehen kann, ist als weitere Aufgabe eine Erstellung eines YouTube-Videos geplant. | Damit am Ende des Praktikums auch jeder das Ergebnis des ganzen sehen kann, ist als weitere Aufgabe eine Erstellung eines YouTube-Videos geplant. | ||
== Gruppenmitglieder == | == Gruppenmitglieder == | ||
Zeile 16: | Zeile 17: | ||
#*Programmierung der Software | #*Programmierung der Software | ||
#*Erstellung von Fotos & Videos | #*Erstellung von Fotos & Videos | ||
#*Erstellung des Wiki-Artikels | |||
#'''[http://193.175.248.52/wiki/index.php/Benutzer:Rene_Katz René Katz]''' | #'''[http://193.175.248.52/wiki/index.php/Benutzer:Rene_Katz René Katz]''' | ||
#*Erstellung des Konzeptplans | #*Erstellung des Konzeptplans | ||
Zeile 21: | Zeile 23: | ||
#*Programmierung der Software | #*Programmierung der Software | ||
#*Erstellung des YouTube-Videos | #*Erstellung des YouTube-Videos | ||
#*Erstellung des Wiki-Artikels | |||
#'''[http://193.175.248.52/wiki/index.php/Benutzer:Benjamin_Kran Benjamin Kran]''' | #'''[http://193.175.248.52/wiki/index.php/Benutzer:Benjamin_Kran Benjamin Kran]''' | ||
#*Programmierung der Software | #*Programmierung der Software | ||
==Ziele und Aufgaben des Praktikums== | ==Ziele und Aufgaben des Praktikums== | ||
Zeile 34: | Zeile 36: | ||
• Erstellung eines [http://193.175.248.52/wiki/index.php/Hauptseite Wiki] Artikels <br/> | • Erstellung eines [http://193.175.248.52/wiki/index.php/Hauptseite Wiki] Artikels <br/> | ||
• Dokumentation des Einparkmanövers in einem Video <br/> | • Dokumentation des Einparkmanövers in einem Video <br/> | ||
== Hardware == | == Hardware == | ||
Bevor wir mit dem Programmieren starten konnten, musste zuerst ein fahrzeugähnlicher Roboter gebaut werden. | Bevor wir mit dem Programmieren starten konnten, musste zuerst ein fahrzeugähnlicher Roboter gebaut werden. | ||
Damit das Einparken realisiert werden konnte, musste ein Differential und ein Schneckengetriebe benutzt werden. | |||
<gallery widths="500" heights="400" perrow="3" caption=""> | |||
Differential.png | Differential | |||
Schneckengetriebe.png| Schneckengetriebe | |||
</gallery> | |||
Zeile 49: | Zeile 60: | ||
Für die Umsetzung des autonomen Fahrens werden lediglich ein Ultraschallsensor und ein Gyrosensor benötigt. | Für die Umsetzung des autonomen Fahrens werden lediglich ein Ultraschallsensor und ein Gyrosensor benötigt. | ||
Ultraschallsensor: Abstandsmessung mit einem Messbereich von 6-255 cm (Genauigkeit 1 cm ) | *Ultraschallsensor: Abstandsmessung mit einem Messbereich von 6-255 cm (Genauigkeit 1 cm ) | ||
Gyrosensor | |||
*Gyrosensor : für die Messung der Winkeländerung | |||
'''Aktuatoren''' | '''Aktuatoren''' | ||
Der Roboter benötigt zwei Motoren. | Der Roboter benötigt zwei Motoren. Den ersten Motor für den Antrieb und den zweiten Motor für die Lenkung. Die Motoren sind Servomotoren, die über einen Rotationssensor mit der Genauigkeit von 1° verfügen. | ||
== Software == | == Software == | ||
[[Datei:Simulinkprogramm.png|mini|Simulinkprogramm]] | |||
Die ersten | Die ersten vier Praktikumsterminen wurde mit Matlab und der zusätzichen Mindstorms NXT Toolbox der RWTH Aachen programmiert. Matlab ist eine Skript basierte Programmiersprache, die vorrangig genutzt wird um Probleme numerisch zu lösen. Hier wurde schrittweise ein Programm zum geregelten Fahren und autonomen Einparken mit Computeranbindung entwickelt. | ||
In den letzten beiden Praktikumsterminen wurde Simulink genutzt um den evaluierten Programmablaufplan auch ohne Computeranbindung nutzen zu können. Simulink ist eine Umgebung in Matlab, wo anhand von verschiedenen Schaltblöcken, welche logisch miteinander verbunden werden, Programme erstellt werden können. | In den letzten beiden Praktikumsterminen wurde Simulink genutzt um den evaluierten Programmablaufplan auch ohne Computeranbindung nutzen zu können. Simulink ist eine Umgebung in Matlab, wo anhand von verschiedenen Schaltblöcken, welche logisch miteinander verbunden werden, Programme erstellt werden können. | ||
==Fahrzeugabmessungen== | ==Fahrzeugabmessungen== | ||
Zeile 68: | Zeile 86: | ||
! style="width:60%"| Parameter !! style="width:30%"|Maße | ! style="width:60%"| Parameter !! style="width:30%"|Maße | ||
|- | |- | ||
| Länge in mm | | Länge in mm ||style="text-align:center"| 210 | ||
|- | |- | ||
| Breite in mm | | Breite in mm ||style="text-align:center"| 170 | ||
|- | |- | ||
| Höhe in mm | | Höhe in mm ||style="text-align:center"| 150 | ||
|- | |- | ||
| Spurweite in mm | | Spurweite in mm ||style="text-align:center"| 135 | ||
|- | |- | ||
| Max. | | Max. Radeinschlagswinkel Rechtseinschlag ||style="text-align:center"| 40° | ||
|- | |||
| Max. Radeinschlagswinkel Linkseinschlag ||style="text-align:center"| 40° | |||
|} | |} | ||
=== Bilder des Roboters === | |||
<gallery widths="500" heights="400" perrow="3" caption=""> | <gallery widths="500" heights="400" perrow="3" caption=""> | ||
Roboter1.png| Schrägansicht | Roboter1.png| Schrägansicht rechts | ||
Roboter2.png| Schrägansicht | Roboter2.png| Schrägansicht links | ||
</gallery> | </gallery> | ||
Zeile 101: | Zeile 121: | ||
Weitere Bilder und Programme befinden sich im SVN unter folgendem Link. | Weitere Bilder und Programme befinden sich im SVN unter folgendem Link. | ||
Um den Roboter nachzubauen haben wir auch eine Bauanleitung erstellt die im SVN einzusehen ist. | |||
* Link zum SVN mit den Dateien zur Abgabe: [https://svn.hshl.de/svn/Informatikpraktikum_2/trunk SVN] (nur mit Zugriffsberechtigung) | |||
* Link zum YouTube-Video : [https://www.youtube.com/watch?v=iJmMEQEQm-8 Video] | |||
→ | ---- | ||
→ zurück zum Hauptartikel: [[Autonomes_Fahren_SoSe18|Informatikpraktikum 2 SoSe18]] |
Aktuelle Version vom 8. August 2018, 14:35 Uhr
Vorwort
Im Informatikpraktikum II B des Studiengangs Mechatronik an der HSHL ist es unsere Aufgabe, einen Roboter mithilfe von LEGO Mindstorms zu konstruieren, der autonom in eine Parklücke einparkt. Das Praktikum ist in Kleingruppen zu je drei Personen aufgeteilt und für die Programmierung der Programme wurden "Matlab" und "Simulink" verwendet.
Zur Umsetzung des Projekts steht das Lego MindstormsTM Baukastensystem des Spielzeugherstellers LegoTM zur Verfügung.
Damit am Ende des Praktikums auch jeder das Ergebnis des ganzen sehen kann, ist als weitere Aufgabe eine Erstellung eines YouTube-Videos geplant.
Gruppenmitglieder
- Alexander Hammelbeck
- Konstruktion des Roboters
- Erstellung der Bauanleitung
- Programmierung der Software
- Erstellung von Fotos & Videos
- Erstellung des Wiki-Artikels
- René Katz
- Erstellung des Konzeptplans
- Konstruktion des Roboters
- Programmierung der Software
- Erstellung des YouTube-Videos
- Erstellung des Wiki-Artikels
- Benjamin Kran
- Programmierung der Software
Ziele und Aufgaben des Praktikums
• Konstruieren eines fahrzeugähnlichen Roboters mit Hilfe von Lego
• Einarbeiten in die Programmiersoftware Matlab & Simulink
• Pflege des Dateimanagementsystems "SVN"
• Grafische Darstellung von Messwerten
• Programmierung mit Matlab & Simulink
• Erstellung eines Wiki Artikels
• Dokumentation des Einparkmanövers in einem Video
Hardware
Bevor wir mit dem Programmieren starten konnten, musste zuerst ein fahrzeugähnlicher Roboter gebaut werden.
Damit das Einparken realisiert werden konnte, musste ein Differential und ein Schneckengetriebe benutzt werden.
-
Differential
-
Schneckengetriebe
NXT-Baustein
Der NXT-Baustein ist das Herzstück unseres Roboters. An diesem Baustein werden alle Aktoren und Sensoren angeschlossen.
Sensoren
Für die Umsetzung des autonomen Fahrens werden lediglich ein Ultraschallsensor und ein Gyrosensor benötigt.
- Ultraschallsensor: Abstandsmessung mit einem Messbereich von 6-255 cm (Genauigkeit 1 cm )
- Gyrosensor : für die Messung der Winkeländerung
Aktuatoren
Der Roboter benötigt zwei Motoren. Den ersten Motor für den Antrieb und den zweiten Motor für die Lenkung. Die Motoren sind Servomotoren, die über einen Rotationssensor mit der Genauigkeit von 1° verfügen.
Software
Die ersten vier Praktikumsterminen wurde mit Matlab und der zusätzichen Mindstorms NXT Toolbox der RWTH Aachen programmiert. Matlab ist eine Skript basierte Programmiersprache, die vorrangig genutzt wird um Probleme numerisch zu lösen. Hier wurde schrittweise ein Programm zum geregelten Fahren und autonomen Einparken mit Computeranbindung entwickelt.
In den letzten beiden Praktikumsterminen wurde Simulink genutzt um den evaluierten Programmablaufplan auch ohne Computeranbindung nutzen zu können. Simulink ist eine Umgebung in Matlab, wo anhand von verschiedenen Schaltblöcken, welche logisch miteinander verbunden werden, Programme erstellt werden können.
Fahrzeugabmessungen
Parameter | Maße |
---|---|
Länge in mm | 210 |
Breite in mm | 170 |
Höhe in mm | 150 |
Spurweite in mm | 135 |
Max. Radeinschlagswinkel Rechtseinschlag | 40° |
Max. Radeinschlagswinkel Linkseinschlag | 40° |
Bilder des Roboters
-
Schrägansicht rechts
-
Schrägansicht links
Programmablaufplan
Im Programmablaufplan (PAP) sieht man unsere Strategie, welche wir dann auch in den Programmen "Matlab" und "Simulink" umgesetzt haben.
Hinweise zum Artikel
Alle Fotos und Programme bzw. Quellcodes sind von uns selber entwickelt worden. Das Urheberrecht liegt bei Alexander Hammelbeck, René Katz und Benjamin Kran.
Weitere Bilder und Programme befinden sich im SVN unter folgendem Link.
Um den Roboter nachzubauen haben wir auch eine Bauanleitung erstellt die im SVN einzusehen ist.
- Link zum SVN mit den Dateien zur Abgabe: SVN (nur mit Zugriffsberechtigung)
- Link zum YouTube-Video : Video
→ zurück zum Hauptartikel: Informatikpraktikum 2 SoSe18