AlphaBot: Bluetooth Datenlogger: Unterschied zwischen den Versionen
| (7 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 38: | Zeile 38: | ||
= Versuchsdurchführung = | = Versuchsdurchführung = | ||
'''Start:''' Aktualisieren Sie Ihre Arduino-Bibliothek unter <code>c:\Users\HSHL-User\Documents\Arduino\libraries\</code>. | |||
== Aufgabe 8.1: Bluetooth Datenlogger == | == Aufgabe 8.1: Bluetooth Datenlogger == | ||
* Verbinden Sie den AlphaBot mit MATLAB<sup>®</sup>. | * Verbinden Sie den AlphaBot mit MATLAB<sup>®</sup>. | ||
| Zeile 50: | Zeile 51: | ||
== Aufgabe 8.2: Geregelte Geradeausfahrt mit Radencoder (Querregelung) == | == Aufgabe 8.2: Geregelte Geradeausfahrt mit Radencoder (Querregelung) == | ||
* Nutzen Sie die Erkenntnisse aus Aufgabe 8.1, um geregelt geradeaus zu fahren. | * Nutzen Sie die Erkenntnisse aus Aufgabe 8.1, um geregelt geradeaus zu fahren. | ||
* Messen Sie die Istgeschwindigkeit beider Räder anhand der Inkrementalgeber. | * Messen Sie mit dem Programm <code>Geradeausfahrt.ino</code> die Istgeschwindigkeit beider Räder anhand der Inkrementalgeber. | ||
* Ist die Geschwindigkeit beider Räder gleich, fährt der AlphaBot geradeaus. | * Ist die Geschwindigkeit beider Räder gleich, fährt der AlphaBot geradeaus. | ||
* Regeln Sie die Radgeschwindigkeiten mit einem Proportionalregler und realisieren Sie eine Geradeausfahrt. | * Regeln Sie die Radgeschwindigkeiten mit einem Proportionalregler und realisieren Sie eine Geradeausfahrt. | ||
| Zeile 59: | Zeile 60: | ||
'''Arbeitsergebnisse:''' <code>Geradeausfahrt.ino</code>, <code>zeigeGeradeausfahrt.m</code>, <code>Messung_8_2.mat</code> | '''Arbeitsergebnisse:''' <code>Geradeausfahrt.ino</code>, <code>zeigeGeradeausfahrt.m</code>, <code>Messung_8_2.mat</code> | ||
'''Musterlösung:''' <code>https://svn.hshl.de/svn/Informatikpraktikum_1/trunk/Arduino/ArduinoLibOrdner/AlphaBot/examples/E39_RegelungRadgeschwindigkeit/E39_RegelungRadgeschwindigkeit.ino</code> | |||
<!-- | |||
== Aufgabe 8.3: Längs- und Querregelung == | == Aufgabe 8.3: Längs- und Querregelung == | ||
* Definieren Sie im Programm <code>LaengsQuerRegelung.ino</code> eine <code>Sollgeschwindigkeit</code> in m/s. | * Definieren Sie im Programm <code>LaengsQuerRegelung.ino</code> eine <code>Sollgeschwindigkeit</code> in m/s, die beim Anfahren langsam auf <code>vMax</code> ansteigt. | ||
* Messen Sie die Istgeschwindigkeit anhand der Inkrementalgeber. | * Messen Sie die Istgeschwindigkeit anhand der Inkrementalgeber. | ||
* Regeln Sie die AlphaBot-Geschwindigkeit in Längsrichtung mit einem Proportionalregler. | * Regeln Sie die AlphaBot-Geschwindigkeit in Längsrichtung mit einem Proportionalregler. | ||
* Regeln Sie die Geradeausfahrt in Querrichtung mit eine Proportionalregler. | * Regeln Sie die Geradeausfahrt in Querrichtung mit eine Proportionalregler. | ||
* Fahren Sie 2 m geradeaus, wenden Sie und fahren Sie in das Startfeld zurück. | * Fahren Sie 2 m geradeaus, wenden Sie und fahren Sie in das Startfeld zurück. | ||
* Senden Sie dabei die Daten via Bluetooth an MATLAB<sup>®</sup>. | * Senden Sie dabei die Daten (vIst, vSoll) via Bluetooth an MATLAB<sup>®</sup>. | ||
* Stellen Sie die gefahrene Trajektorie in MATLAB<sup>®</sup> als x-y-Plot dar (<code>zeigeTrajektorie.m</code>). | * Stellen Sie die gefahrene Trajektorie in MATLAB<sup>®</sup> als x-y-Plot dar (<code>zeigeTrajektorie.m</code>). | ||
* Sichern Sie die Messwerte in der Datei <code>Messung_8_3.mat</code>. | * Sichern Sie die Messwerte in der Datei <code>Messung_8_3.mat</code>. | ||
'''Arbeitsergebnisse:''' <code>LaengsQuerRegelung.ino</code>, <code>zeigeTrajektorie.m</code>, <code>Messung_8_3.mat</code> | '''Arbeitsergebnisse:''' <code>LaengsQuerRegelung.ino</code>, <code>zeigeTrajektorie.m</code>, <code>Messung_8_3.mat</code> | ||
--> | |||
== Aufgabe 8. | == Aufgabe 8.3: Nachhaltige Doku == | ||
* Sichern Sie alle Ergebnisse mit beschreibendem Text (<code>message</code>) in SVN. | * Sichern Sie alle Ergebnisse mit beschreibendem Text (<code>message</code>) in SVN. | ||
* Halten Sie die Regeln für den [[Software_Versionsverwaltung_mit_SVN|Umgang mit SVN]] ein. | * Halten Sie die Regeln für den [[Software_Versionsverwaltung_mit_SVN|Umgang mit SVN]] ein. | ||
Aktuelle Version vom 14. Juni 2026, 19:40 Uhr

| 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 via Bluetooth (Kennworte für die Bluetooth-Module).
- 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
Start: Aktualisieren Sie Ihre Arduino-Bibliothek unter c:\Users\HSHL-User\Documents\Arduino\libraries\.
Aufgabe 8.1: Bluetooth Datenlogger
- Verbinden Sie den AlphaBot mit MATLAB®.
- Übertragen Sie mit der Datei
BluetoothDatenlogger.inodie vom linken und rechten Rad gefahrene Strecke an MATLAB® via Bluetooth. - Empfangen Sie die Daten mit dem Skript
zeigeMesswerte.m. - Berechnen Sie aus den Strecken die Geschwindigkeiten und Beschleunigungen.
- Zeigen Sie das Ergebnis als 3x2 Subplot mit MATLAB® an.
- Sichern Sie Ihr Ergebnis in der Datei
Messung_8_1.mat.
Arbeitsergebnisse: BluetoothDatenlogger.ino, zeigeMesswerte.m, Messung_8_1.mat
Aufgabe 8.2: Geregelte Geradeausfahrt mit Radencoder (Querregelung)
- Nutzen Sie die Erkenntnisse aus Aufgabe 8.1, um geregelt geradeaus zu fahren.
- Messen Sie mit dem Programm
Geradeausfahrt.inodie Istgeschwindigkeit beider Räder anhand der Inkrementalgeber. - Ist die Geschwindigkeit beider Räder gleich, fährt der AlphaBot geradeaus.
- Regeln Sie die Radgeschwindigkeiten mit einem Proportionalregler und realisieren Sie eine Geradeausfahrt.
- Senden Sie dabei Radgeschwindigkeiten (
vL, vR) via Bluetooth an MATLAB®. - Zeigen Sie das Ergebnis mit MATLAB® an (
zeigeGeradeausfahrt.m). - Sichern Sie Ihr Ergebnis in der Datei
Messung_8_2.mat.
Arbeitsergebnisse: Geradeausfahrt.ino, zeigeGeradeausfahrt.m, Messung_8_2.mat
Aufgabe 8.3: Nachhaltige Doku
- Sichern Sie alle Ergebnisse mit beschreibendem Text (
message) in SVN. - Halten Sie die Regeln für den Umgang mit SVN ein.
- Halten Sie die Programmierrichtlinie für C und die Programmierrichtlinien für MATLAB® ein.
- Versehen Sie jedes Programm mit einem Header (Header Beispiel für MATLAB, Header Beispiel für C).
- Kommentiere Sie den Quelltext umfangreich.
Arbeitsergebnis in SVN: SVN Log
Demos
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