AEP Gruppe B2: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
 
(3 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 26: Zeile 26:


== Bauplan ==
== Bauplan ==
Hier ist der Bauplan für den LEGO Digital Designer zu finden. [[Datei:AEP Gruppe B2.lxf.zip]]
Hier ist der Bauplan für den LEGO Digital Designer zu finden. [[Medium:AEP Gruppe B2.lxf.zip]]
 
== Software ==
== Software ==
Programmiert wurde der NXT mithilfe von Matlab 2014a 32-Bit und [[RWTH_Aachen_Toolbox_meets_NXT]].
Programmiert wurde der NXT mithilfe von Matlab 2014a 32-Bit und [[RWTH_Aachen_Toolbox_meets_NXT]].
== Konzept ==
== Konzept ==
[[Datei:AEP Gruppe B2 UML.jpg|750px]]
[[Datei:AEP Gruppe B2 UML.jpg|750px]]
== Quellcode (Auszug)==
<syntaxhighlight lang="matlab" style="background-color: #EFF1C1; font-size:larger">
Parameter eingeben
  power = 50;
  durchmesser = 0.056; %im Meter
  radumfang = durchmesser * pi;
  fahrzeuglaenge = 0.32; %in m
  luecke = fahrzeuglaenge * 1.3; %1,5 fache größe des fahrzeugs
  lueckegrad = round(luecke/radumfang * 360);
  strecke = 1; %in m
  StreckeVorfahren = 0.1; % 10 cm vorfahren
  grad  = round(strecke/radumfang * 360);      %2046 ;    % 2046,28 Grad(errechnet durch den Radumfang) entspricht 1m
Motorfunktionen
  motorA = NXTMotor(MOTOR_A, 'Power',  power, 'TachoLimit', 0,'SmoothStart', true); %% Unendlich lange fahren
  motorC = NXTMotor(MOTOR_C,'HoldBrake');
  motorA.SendToNXT();
  motorC.SendToNXT();
Motor vorbereiten
  bParklueckeGefunden = false;
  XStart =0;
Parlücke suchen
  while(bParklueckeGefunden == false)
Messwerte holen
    if (distance < 15) % Parklücke besetzt
    else
        % Parklücke frei
        if LueckenLaenge > luecke
            bParklueckeGefunden = true;         
        end
    end
  end
10 cm vorfahren
  motorA = NXTMotor(MOTOR_A, 'Power',  power, 'TachoLimit', round(StreckeVorfahren/radumfang * 360)); %% Unendlich lange fahren
  motorA.SendToNXT();
  motorA.WaitFor();
Einparken State Machine
Gyro reset -> Winkel = 0
  CalibrateGyro(nGyroPort, 'AUTO');
  pause(1) % NICHT BEWEGEN
Erst jetzt wieder Motor an!!!!
  nState = 1;
  bEinparkenErfolgreich = false;
  while(bEinparkenErfolgreich==false)
    switch nState
        case 1
                nState = 2;
        case 2
                nState = 3;
        case 3
                nState = 4;
        case 4
            NXT_PlayTone(440, 100); % Fanfare
            bEinparkenErfolgreich = true;% Parkvorgang abgeschlossen     
    end
  end; 
</syntaxhighlight>




Zeile 99: Zeile 42:
* Teammitglieder auf USER-Seite verlinken
* Teammitglieder auf USER-Seite verlinken
* Veröffentlichen Sie nicht den Quelltext, sondern das Konzept und die PAP. Sonst kopieren in einem Jahr alle Studierenden Ihren Quelltext.
* Veröffentlichen Sie nicht den Quelltext, sondern das Konzept und die PAP. Sonst kopieren in einem Jahr alle Studierenden Ihren Quelltext.
== YouTube Video ==
{{#ev:youtube|http://youtu.be/eUJa_hfXg5Q | 720 | | Autonomes Einparken - Team B2|frame}}




----
----
→ zurück zum Hauptartikel: [[Autonomes_Fahren_SoSe14| Informatikpraktikum 2 - SoSe14]]
→ zurück zum Hauptartikel: [[Autonomes_Fahren_SoSe14| Informatikpraktikum 2 - SoSe14]]

Aktuelle Version vom 27. Februar 2024, 10:16 Uhr

Vorderansicht

Im SoSe14 wurde im Rahmen des Informatikpraktikums II die Aufgabe gestellt, ein autonom einparkendes Fahrzeug zu entwickeln. Als Grundlage diente ein Lego_Mindstorms_NXT. Entwickelt wurde dieses Fahrzeug von Dominik Bräker, Nina Gorski und Sebastian Henneböhl.

Aufbau

Seitenansicht

Das Fahrzeug wurde zunächst mit einer 1:1 Übersetzung über eine Kette zu einem Differential angetrieben, allerdings erwies sich diese Art von Antrieb als zu störanfällig und wurde durch einen 1:1 Zahnradantrieb zu einem Differential ersetzt. Die Lenkung wurde zunächst von Zahnräder übersetzt, welches allerdings Aufgrund der Genauigkeit durch eine Direktlenkung ersetzt wurde.

Es wurden neben dem NXT-Baustein an sich ein Antriebs- und ein Lenkungsmotor, ein Gyrosensor, ein Abstandssensor und ein Differential verbaut.


Die Abmessungen betragen:


Fahrzeuglänge: 31mm

Fahrzeugbreite: 15,5mm

Spurweite vorn: 12mm

Spurweite hinten: 12mm

Achsabstand: 22mm

Max. Radeinschlagswinkel Linkseinschlag: 20°

Max. Radeinschlagswinkel Rechtseinschlag: 20°

Bauplan

Hier ist der Bauplan für den LEGO Digital Designer zu finden. Medium:AEP Gruppe B2.lxf.zip

Software

Programmiert wurde der NXT mithilfe von Matlab 2014a 32-Bit und RWTH_Aachen_Toolbox_meets_NXT.

Konzept


--Ulrich Schneider (Diskussion) 08:31, 19. Jun. 2014 (CEST)

Tipps:

  • Quellcode absetzen (s.o.)
  • Inhalt ist übnersichtlich
  • Teammitglieder auf USER-Seite verlinken
  • Veröffentlichen Sie nicht den Quelltext, sondern das Konzept und die PAP. Sonst kopieren in einem Jahr alle Studierenden Ihren Quelltext.

YouTube Video

Autonomes Einparken - Team B2




→ zurück zum Hauptartikel: Informatikpraktikum 2 - SoSe14