AlphaBot: Bluetooth Datenlogger

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Abb. 1: Bluetooth Modul HC-05
Autor: Prof. Dr.-Ing. Schneider
Modul: Praxismodul II
Lektion: 8
Lehrveranstaltung: Mechatronik, Informatik Praktikum 2, 2. Semester

Inhalt

Autonome Mobile Roboter müssen zur Erfüllung von Aufgaben im Raum navigieren. Der einfachste Weg ist über Odometrie. In dieser Lektion fahren wir feste Figuren im Raum ab und versuchen d. Sie haben den Auftrag bekommen ein Fahrerloses Transportfahrzeug (FTF) zu entwickeln. Nutzen Sie den AlphaBot um die Funktion Ihrer Programmierung nachzuweisen.

Lernziele

Nach Durchführung dieser Lektion können Sie

  • Ihren Roboter eine vorgegebene Strecke geradeaus fahren lassen.
  • Daten via Bluetooth mit MATLAB® analysieren und anzeigen.
  • Messwerte in einer MAT-Datei speichern.


Vorbereitung

  • Studieren Sie den Artikel Bluetooth Module HC-05.
  • Versetzen Sie den AlphaBot in den Sendemodus.
  • Koppeln Sie das Notebook mit dem AlphaBot.
  • Senden Sie den Inhalt eines 8-Bit Zählers.
  • Empfangen Sie den Zähler mit MATLAB®.
  • Visualisieren Sie den Zähler in einem Plot.
  • Sichern Sie die Daten in der Datei Messdaten.mat.

Tutorial

Versuchsdurchführung

Aufgabe 8.1: Bluetooth Datenlogger

  • Verbinden Sie den AlphaBot mit MATLAB®.
  • Übertragen Sie die vom linken und rechten Rad gefahrene Strecke.
  • Errechnen Sie daraus die Geschwindigkeit und Beschleunigung.
  • Zeigen Sie das Ergebnis entsprechend Abb. 2 mit MATLAB® an.
  • Sichern Sie Ihr Ergebnis in der Datei Messung.mat.

Arbeitsergebnisse: BluetoothDatenlogger.ino, zeigeMesswerte.m, Messung.mat

Aufgabe 8.2: Geregelte Geradeausgfahrt mit Radencoder

Nutzen Sie die Erkenntnisse aus Aufgabe 8.1, um geregelt geradeaus zu fahren. Vergleichen Sie hierzu die gefahrene Strecke beider Räder. Ist diese gleichgroß, fährt der AlphaBot eine Gerade. Verändern Sie adaptiv die Motorgeschwindigkeit abhängig von der Streckenabweichung.

Aufgabe 8.3: Längsregelung

Aufgabe 6.1: Geradeausfahrt von Feld A zu Feld B

  1. Das FTF muss exakt 1,5 m kontinuierlich vorwärts geradeaus von Feld A zu Feld B fahren (a=1,5 m, b=0 m, c=0 m, vgl. Abb. 1).
  2. Das FTF muss langsam anfahren, so dass erst nach 20 cm die Maximalgeschwindigkeit erreicht wird und 20 cm vor dem Ziel verzögern.
  3. Die Messwerte Zeitstempel in s und die gefahrene Strecke des linken und rechten Rades müssen in der ASCII-Datei Geradeausfahrt.txt gespeichert werden.

Arbeitsergebnis: FTF.ino

Aufgabe 6.2: Analyse der Streckendaten

In MATLAB® muss aus der Strecke die Geschwindigkeit und Beschleunigung des AMR berechnet und als Plot (1x3) untereinander Strecke in m, Geschwindigkeit in ms und Beschleunigung in ms2 über der Zeit in s dargestellt werden.

Was fällt Ihnen auf?

Arbeitsergebnisse: Geradeausfahrt.txt, zeigeMesswerte.m

Aufgabe 6.3: Geregelte Geradeausfahrt

Nutzen Sie die Erkenntnisse aus Aufgabe 6.2, um geregelt geradeaus zu fahren. Vergleichen Sie hierzu die gefahrene Strecke beider Räder. Ist diese gleichgroß, fährt der AlphaBot eine Gerade. Verändern Sie adaptiv die Motorgeschwindigkeit abhängig von der Streckenabweichung.

Aufgabe 6.4: Hinderniserkennung

Ein Hindernis erscheint plötzlich in Ihrem Fahrschlauch. Sie reagieren mit einer Notbremsung, um den Unfall zu vermeiden. Verlässt das Hindernis die Fahrbahn, kann die geplante Fahrt weitergehen.

  1. Nutzen Sie fahreZumStartpunkt.ino aus Übungsaufgabe 6.1.
  2. Stoppen Sie, falls weniger als 20 cm vor Ihnen ein Hindernise auftaucht/steht (Notbremse).
  3. Fahren Sie weiter, sobald das Hindernis entfernt wurde.
  4. Fehlbremsungen müssen durch geeignete Signalfilterung (z. B. Tiefpassfilter) vermieden werden.

Arbeitsergebnis: Notbremsassistent.ino

Arbeitsergebnis: FTF_mit_Hinderniserkennung.ino

Aufgabe 6.5: Nachhaltige Doku

Arbeitsergebnis in SVN: SVN Log

Demos

  • E01_MotorenTest
  • E15_RadInkrementalgeberFahrt
  • E33_Unterfunktion

Ausblick zur nächsten Lektion

In der nächsten Lektion wird der AlphaBot geregelt, um einer schwarzen Linie zu folgen.


→ Termine 1 2 3 4 5 6 7 8 9 10 11 12
→ zurück zum Hauptartikel: Informatik Praktikum 2
→ Haben Sie Fragen? Informatik Praktikum FAQ