AEP Gruppe C1: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „In diesem Wiki-Beitrag möchten wir, die Gruppe C1 des Informatikpraktikum II des SoSe14, unsere Ergebnisse des Projektes Autonomes Einparken (AEP) mit Lego Mi…“)
 
Keine Bearbeitungszusammenfassung
Zeile 13: Zeile 13:
*Programmierung in MATLAB und Simulink
*Programmierung in MATLAB und Simulink
<br /><br />
<br /><br />
== Meilensteine ==
'''1. Meilenstein:'''
* Konstruktion des Fahrzeuges mit folgenden Eigenschaften:
**Realitätsnah mit einer Antriebs- und Lenkachse
** Max Radeinschlag 40°
** Achsenabstand zur Spurweite im Verhältnis 2:1
** Anbringung des Ultraschallsensors und des Gierratensensors
* Entwicklungsumgebung (MATLAB) einrichten
* Einarbeitung in MATLAB:
** Batteriestand des NXT Bausteins auslesen und diesen in einem Graphen über der Zeit plotten
* Auseinandersetzen mit den Eigenschaften des Ultraschallsensors
* Einarbeitung in [http://193.175.248.171/wiki/index.php/Software_Versionsverwaltung SVN]
<br />
'''2. Meilenstein:'''
* Auseinandersetzen mit dem Gierratensensor
* Geradeausfahrt mit dem Fahrzeug und plotten der Gierrate, Gierwinkel, gefahrenen Strecke und der Geschwindigkeit über der Zeit
* Offsetkalibrierung  des Gierratensensors
<br />
'''3. Meilenstein:'''
* Ultraschallmesswerte plotten
* Parklücken mithilfe des Ultraschallsensors vermessen und erkennen
* Geregeltes Geradeausfahren mithilfe des Gierratensensors
<br />
'''4. Meilenstein:'''
* Das Einparken mithilfe einer Zustandsmaschine realisieren
* Speichern von Daten in einer Textdatei
[[Datei:Meilensteine_Gruppe_C4.png|miniatur|Meilensteine der Gruppe C4]]
<br />
'''5. Meilenstein:'''
* Einarbeitung in [http://193.175.248.171/wiki/index.php/NXT_mit_Simulink_programmieren Simulink]
* Geradeausfahrt, Parklücke finden und das Einparken mit Simulink realisieren
<br />
== Hardwarelösungen ==
[[Datei:Legofahrzeug_Gruppe_C4.jpg|miniatur|links|Legofahrzeug der Gruppe C4]]
Für den Antrieb des Fahrzeuges wurde ein Differentialgetriebe gebaut und angebracht, damit bei einer Kurve sich die Räder zwar mit derselben Vortriebskraft, jedoch mit unterschiedlicher Geschwindigkeit drehen.
[[Datei:LEGO_Differentialgetriebe_Gruppe_C4.png|miniatur|Differentialgetriebe aus LEGO]]
Für die Lenkung wurden auf einer Welle Zahnräder angebracht, die auf einer Zahnradschiene laufen und somit den vorderen Teil des Fahrzeuges inklusive der Vorderreifen um ± 40° verschieben können.
[[Datei:LEGO_Lenkung_Gruppe_C4.png|miniatur|Lenkung aus LEGO]]
Der Ultraschallsensor wurde an der rechten Seite des Fahrzeuges angebracht, da man bei einer Einparksituation die rechte Seite nach Parklücken untersucht. Der Gierratensensor wurde auf der linken Seite angebracht.
<br /><br /><br /><br /><br />
'''Weitere Fahrzeugdaten:'''
* Fahrzeuglänge: 300mm
* Fahrzeugbreite: 170mm
* Spurweite vorne: 170mm
* Spurweite hinten: 155mm
* Achsabstand: 255mm
* Max. Radeinschlagswinkel Linkseinschlag: 40°
* Max. Radeinschlagswinkel Rechtseinschlag: 40°
<br />
== Softwarelösungen ==
[[Datei:Konzeptplan_Gruppe_C4_Parklücke_finden.png|miniatur|Konzeptplan für den Task: Autonome Parklückensuche]]
Anfangs liest der Ultraschallsensor den Abstand aus und speichert diesen in einen Sollwert und fährt dann los. Sollte der Ultraschallsensor einen größeren Abstand messen (größer als Sollwert + Konstante) wird diese Lücke mithilfe der Berechnung der Motorumdrehungen ausgemessen. Ist die Lücke groß genug (1,5fach größer als Fahrzeug), bleibt das Fahrzeug stehen. Ist dies nicht der Fall, fährt es weiter und wiederholt diesen Vorgang.
<br />
Danach folgt das eigentliche Einparken, was mithilfe einer Zustandsmaschine programmiert wurde. Im ersten Zustand schlägt die Lenkung maximal nach rechts ein und das Fahrzeug fährt solange rückwärts, bis der Gierratensensor einen Wert >= 40° misst. Im folgenden Zustand wird die Lenkung maximal nach links gesteuert, so dass sich das Fahrzeug beim Rückwärtsfahren wieder gerade bei 0° aufstellt. Im anschließenden Zustand wird die Lenkung wieder mittig eingestellt und das Fahrzeug fährt ein wenig nach vorne, so dass es vorzugsweise mittig in der Parklücke steht. Am Ende wird dann noch eine Fanfare abgespielt.
[[Datei:Konzeptplan_Gruppe_C4_Zustandsmaschine.png|miniatur|Konzeptplan für den Task: Autonomes Einparken]]
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
== Projektgruppe ==
'''Projektgruppe C4 (SoSe 2014):'''
* Niklas Lingenauber (2.Fachsemester MTR)
* Kevin Penner (2.Fachsemester MTR)
<br />
== Downloads ==
Anleitung für den Nachbau des Fahrzeuges (.html Datei): [[Datei:Anleitung_Fahrzeugbau_Gruppe_C4.zip]]
<br />
Passwort zum Entpacken: '''HSHL'''
<br />
== Weblinks ==
* [http://www.mindstorms.rwth-aachen.de/trac/wiki/Download4.07 RWTH Toolbox für Matlab]
* [http://ldd.lego.com/de-de/ LEGO Digital Designer]
== Feedback zum Artikel ==
--[[Benutzer:Ulrich Schneider|Ulrich Schneider]] ([[Benutzer Diskussion:Ulrich Schneider|Diskussion]]) 08:31, 19. Jun. 2014 (CEST)
* Vorbildlich!
* Ich habe die Links umformatiert.
* Sie könnten sich noch USER Seiten anlegen und auf diese verlinken.
----
→ zurück zum Hauptartikel: [[Autonomes_Fahren_SoSe14|Autonomes Fahren SoSe14]]

Version vom 19. Juni 2014, 10:41 Uhr

In diesem Wiki-Beitrag möchten wir, die Gruppe C1 des Informatikpraktikum II des SoSe14, unsere Ergebnisse des Projektes Autonomes Einparken (AEP) mit Lego Mindstorms präsentieren. Das Praktikum wurde von Prof. Schneider betreut.



Projektziele

  • Entwicklung und Programmierung eines mobilen, autonom einparkenden Roboters
  • Fahrzeugbau soll sich an der Realität orientieren
  • Verwendung von Lego Mindstorms
    • Ultraschallsensor
    • Gierratensensor
    • NXT-Motoren
  • Programmierung in MATLAB und Simulink