AlphaBot: Hardware Support Package für MATLAB: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Zeile 93: Zeile 93:


== Aufgabe 2.3: AlphaBot Ultraschall ==
== Aufgabe 2.3: AlphaBot Ultraschall ==
# Machen Sie sich mit dem Demo <code>E05_Ultraschall_Entfernungsmessung.ino</code> vertraut, so dass Sie jede Zeile erläutern können.
# Lesen Sie die Messwerte des Ultraschallsensor ein [https://de.mathworks.com/help/matlab/supportpkg/arduinoio.ultrasonic.html?searchHighlight=arduino+matlab+ultrasonic&s_tid=srchtitle_support_results_2_arduino+matlab+ultrasonic].
# Kopieren Sie das Beispiel in Ihren Ordner und erweitern Sie es.
# Zeigen Sie die Distanzwerte in cm über der Zeit an.
# Lesen Sie die Messwerte des Ultraschallsensors aus.
# Stellen Sie den Wert des Ultraschallsensors in MATLAB<sup>®</sup> live dar.
 
'''Lernzielkontrollfragen:'''
* An welchen Pins sind <code>Trigger</code> und <code>Echo</code> angeschlossen? Wie lässt sich das anpassen?
 
'''Arbeitsergebnisse''' in SVN: <code>messeUltraschall.ino, zeigeUltraschall.m</code>


'''Arbeitsergebnisse''' in SVN: <code>zeigeUltraschall.m</code>
<!--
{| role="presentation" class="wikitable mw-collapsible mw-collapsed"
{| role="presentation" class="wikitable mw-collapsible mw-collapsed"
| <strong>Tipp 1&thinsp;</strong>
| <strong>Tipp 1&thinsp;</strong>
Zeile 114: Zeile 109:
| Wenn der serielle Monitor offen ist, kann der Arduino Uno nicht mit der Arduino IDE 2.0.4 programmiert werden. Schließen Sie zum Hochladen den Monitor.
| Wenn der serielle Monitor offen ist, kann der Arduino Uno nicht mit der Arduino IDE 2.0.4 programmiert werden. Schließen Sie zum Hochladen den Monitor.
|}
|}
 
-->
----
----



Version vom 2. April 2025, 12:26 Uhr

Abb. 1: MATLAB® als serieller Monitor
Autor: Prof. Dr.-Ing. Schneider
Modul: Praxismodul II, MTR-B-2-2.11
Lehrveranstaltung: Mechatronik, Informatik Praktikum 2, 2. Semester


Inhalt

  • Nutzung von MATLAB® als seriellen Monitor.
  • Inbetriebnahme des AlphaBot
  • Einbindung der Bibliotheken für den AlphaBot
  • Auslesen eine Potentiometers
  • Ansteuern einer RGB-LED
  • Statische und dynamische Messung mit dem Ultraschallsensor
  • Anwendung rekursiver Filter auf Echtzeitdaten

Lernziele

Nach Durchführung dieser Lektion können Sie

  • Debug-Daten speichern und via MATLAB® visualisieren.
  • direkt MATLAB® als seriellen Monitor nutzen.
  • den AlphaBot sicher in Betrieb nehmen, das Potentiometer auslesen und eine RGB-LED ansteuern.
  • Entfernungen mit dem Ultraschall-Sensor messen.
  • Messwerte in Echtzeit filtern.

Versuchsvorbereitung

  • Das MATLAB Support Package für Arduino Hardware muss unter MATLAB installiert werden
    • Starten Sie MATLAB
    • Wählen Sie unter Add-Ons das Get Hardware Support Packages aus.
    • Installieren Sie das MATLAB Support Package für Arduino Hardware.
  • Verbinden Sie Arduino und PC via USB.
  • Bringen Sie mit dem Geräte-Manager den COM-Port des Arduino in Erfahrung.
  • Testen Sie die Verbindung mit >> h = arduino('COM5','Uno') für Ihren COM-Port.

Versuchsdurchführung

Aufgabe 2.1: MATLAB® als serieller Monitor

  1. Nutzen Sie MATLAB® um die Messdaten direkt (live) darzustellen.
  2. Verbinden Sie den Arduino mit dem PC via USB.
  3. Greifen Sie hierzu auf die serielle Schnittstelle zu.
  4. Stellen Sie sicher, das die Multisensorerweiterung auf dem Alphabot steckt.
  5. Drehen Sie, während der Messung am Potentiometer und Visualisieren Sie die Spannung über der Zeit an A0.

Nützlich MATLAB®-Befehle: arduino, tic, toc, readVoltage, plot, xlabel, ylabel, legend

Arbeitsergebnisse in SVN: lesePoti.m


Aufgabe 2.2: Inbetriebnahme des AlphaBot

  1. Arbeiten Sie sich anhand des Wiki-Artikels in den AlphaBot ein. Beachten Sie besonders die Ausrichtung der Akkus. ACHTUNG BRANDGEFAHR!
  2. Binden Sie die AlphaBot Bibliothek nach Anleitung in die Arduino IDE ein.
  3. Machen Sie sich mit der Multisensorerweiterung vertraut.
  4. Lesen Sie den Taster des Joysticks ein (A4).
  5. Zeigen Sie den Spannungswert über der Zeit während der Messung an.
  6. Lesen Sie das Potentiometer ein (A4).
  7. Bei Tasterdruck ertönt der Summer an D11.
  8. regeln Sie mit dem Potentiometers die Lautstärke des Summers.

Arbeitsergebnisse: leseJoystick.m


Aufgabe 2.3: AlphaBot Ultraschall

  1. Lesen Sie die Messwerte des Ultraschallsensor ein [1].
  2. Zeigen Sie die Distanzwerte in cm über der Zeit an.

Arbeitsergebnisse in SVN: zeigeUltraschall.m


Aufgabe 2.4: Glättung der Ultraschallmessung

  1. Nutzen Sie Ihre Ergebnisse aus Aufgabe 2.3, um die Messwerte in Echtzeit zu glätten.
  2. Vergleichen Sie die Ergebnisse des Tiefpasses mit denen des gleitenden Mittelwertfilters in einem Plot mit Achsenbeschriftung und Legende.

Arbeitsergebnisse in SVN: messeUltraschall.ino, filtereUltraschall.m

Lernzielkontrollfragen:

  1. Wurde das Signalrauschen geglättet?
  2. Ist das gefilterte Signal verzögert?
  3. Welchen Einfluss haben die Filterparameter?
  4. Wie verhalten sich die gefilterten Signal bei Ausreißern?

Aufgabe 2.5: Nachhaltige Doku

Sichern Sie alle Ergebnisse mit beschreibendem Text (message) in SVN.

Arbeitsergebnis in SVN: SVN Log

Tutorials

Demos



→ Termine 1 2 3 4 5 6 7 8 9 10 11
→ zurück zum Hauptartikel: Informatik Praktikum 2