AlphaBot: MATLAB als serieller Monitor: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Keine Bearbeitungszusammenfassung |
|||
Zeile 52: | Zeile 52: | ||
'''Arbeitsergebnisse''' in SVN: <code>zeigeArduinoDaten.pap, zeigeArduinoDaten.m</code> | '''Arbeitsergebnisse''' in SVN: <code>zeigeArduinoDaten.pap, zeigeArduinoDaten.m</code> | ||
=== Aufgabe 3.2: | === Aufgabe 3.2: Inbetriebnahme des AlphaBot === | ||
# | # Arbeiten Sie sich anhand des [[AlphaBot|Wiki-Artikels]] in den AlphaBot ein. Beachten Sie besonders die Ausrichtung der Akkus. '''ACHTUNG BRANDGEFAHR!''' | ||
# | # Binden Sie die AlphaBot Bibliothek nach [[Erste_Schritte_mit_der_Arduino_IDE|Anleitung]] in die Arduino IDE ein. | ||
# Machen Sie sich mit <code>E23_RGB_LED</code> vertraut, so dass Sie jede Zeile erläutern können. | |||
# Kopieren Sie das Beispiel in Ihren Ordner und erweitern Sie es. | |||
# Am Analogport <code>A0</code> ist das Potentiometer des Erweiterungsborts angeschlossen. Nutzen Sie das Potentiometer, um die Blinkfrequenz der RGB LED zu verändern. | |||
# Stellen Sie den Wert des Potentiometers an <code>A0</code> in MATLAB<sup>®</sup> live dar. | |||
''' | '''Arbeitsergebnisse:''' <code>testeLichtschranke.ino, zeigePotiWert.m</code> | ||
''' | '''Demos:''' E23, E24 | ||
=== Aufgabe 3.3: | === Aufgabe 3.3: AlphaBot Ultraschall === | ||
# Machen Sie sich mit dem Demon <code>E05_Ultraschall_Entfernungsmessung<code> vertraut, so dass Sie jede Zeile erläutern können. | |||
# | # Kopieren Sie das Beispiel in Ihren Ordner und erweitern Sie es. | ||
# Lesen Sie die Messwerte des Ulrtraschallsensors 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? | |||
* Was ist ein Interrupt und wozu dient er? | |||
* Wozu dient die Funktion attachInterrupt()? | |||
* Was ist bei der Verwendung von Interrupts zu beachten? | |||
''' | '''Arbeitsergebnisse''' in SVN: <code>messeUltraschall.ino, zeigeUltraschall.m</code> | ||
'''Demo:''' E05 | |||
=== Aufgabe 3.4: Nachhaltige Doku === | |||
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 [[Medium:Programmierrichtlinie.pdf|Programmierrichtlinie für C]] und die [[Medium:Programmierrichtlinien_für_Matlab.pdf|Programmierrichtlinien für MATLAB<sup>®</sup>]] 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: <code>SVN Log</code> | ||
</ | |||
== Tutorials == | == Tutorials == | ||
* [https:// | * [[Erste_Schritte_mit_der_Arduino_IDE|Erste Schritte mit der Arduino IDE]] | ||
* [[https://wiki.hshl.de/wiki/index.php/Arduino:_Interrupts|Arduino: Interrupts]] | |||
* [[Ultraschallsensor_HC-SR04| HSHL-Wiki: Ultraschallsensor HC-SR04]] | * [[Ultraschallsensor_HC-SR04| HSHL-Wiki: Ultraschallsensor HC-SR04]] | ||
== Demos == | == Demos == | ||
* [https://svn.hshl.de/svn/Informatikpraktikum_1/trunk/ | * [https://svn.hshl.de/svn/Informatikpraktikum_1/trunk/AlphaBot/ArduinoLibOrdner/AlphaBot/examples/E05_Ultraschall_Entfernungsmessung SVN: E05_Ultraschall_Entfernungsmessung] | ||
* [https://svn.hshl.de/svn/Informatikpraktikum_1/trunk/AlphaBot/ArduinoLibOrdner/AlphaBot/examples/E23_RGB_LED SVN: E23_RGB_LED] | |||
* [https://svn.hshl.de/svn/Informatikpraktikum_1/trunk/AlphaBot/ArduinoLibOrdner/AlphaBot/examples/E24_Servo_Knop E24_Servo_Knop] | |||
* [https://svn.hshl.de/svn/Informatikpraktikum_1/trunk/ | |||
* [https://svn.hshl.de/svn/Informatikpraktikum_1/trunk/ | |||
---- | ---- | ||
→ zurück zum Hauptartikel: [[AlphaBot_SoSe23|Informatik Praktikum 2]] | → zurück zum Hauptartikel: [[AlphaBot_SoSe23|Informatik Praktikum 2]] |
Version vom 24. März 2023, 09:34 Uhr
Autor: Prof. Dr.-Ing. Schneider
Modul: Praxismodul I
Lehrveranstaltung: Mechatronik, Informatik Praktikum 2, 2. Semester
Aufgabenstatus: In Bearbeitung
Inhalt
- Statische und dynamische Messung mit dem Ultraschallsensor
- Nutzung von MATLAB® als seriellen Monitor.
- Programmierung und Anwendung eines gleitenden Mittelwertfilters
Lernziele
Nach Durchführung dieser Lektion
- können Sie Debug-Daten speichern und via MATLAB® visualisieren.
- können Sie direkt MATLAB® als seriellen Monitor nutzen.
- können Sie Entfernungen mit dem Ultraschall-Sensor messen.
- können Sie Messwerte in Echtzeit filtern.
- können Sie Software mit einem PAP planen.
Versuchsdurchführung
Aufgabe 3.1: MATLAB® als serieller Monitor
- Nutzen Sie MATLAB® um die Messdaten direkt (live) darzustellen.
- Planen Sie als ersten Schritt das MATLAB®-Programm als PAP.
- Greifen Sie hierzu auf die serielle Schnittstelle zu während der Arduino Daten sendet.
- Nutzen Sie das Demo
DemoDebug2MATLAB
im SVN-Verzeichnis.
Nützlich MATLAB®-Befehle: fopen, feof, fgetl, strfind, isempty, plot, xlabel, ylabel, legend
Arbeitsergebnisse in SVN: zeigeArduinoDaten.pap, zeigeArduinoDaten.m
Aufgabe 3.2: Inbetriebnahme des AlphaBot
- Arbeiten Sie sich anhand des Wiki-Artikels in den AlphaBot ein. Beachten Sie besonders die Ausrichtung der Akkus. ACHTUNG BRANDGEFAHR!
- Binden Sie die AlphaBot Bibliothek nach Anleitung in die Arduino IDE ein.
- Machen Sie sich mit
E23_RGB_LED
vertraut, so dass Sie jede Zeile erläutern können. - Kopieren Sie das Beispiel in Ihren Ordner und erweitern Sie es.
- Am Analogport
A0
ist das Potentiometer des Erweiterungsborts angeschlossen. Nutzen Sie das Potentiometer, um die Blinkfrequenz der RGB LED zu verändern. - Stellen Sie den Wert des Potentiometers an
A0
in MATLAB® live dar.
Arbeitsergebnisse: testeLichtschranke.ino, zeigePotiWert.m
Demos: E23, E24
Aufgabe 3.3: AlphaBot Ultraschall
- Machen Sie sich mit dem Demon
E05_Ultraschall_Entfernungsmessung
vertraut, so dass Sie jede Zeile erläutern können.
- Kopieren Sie das Beispiel in Ihren Ordner und erweitern Sie es.
- Lesen Sie die Messwerte des Ulrtraschallsensors aus.
- Stellen Sie den Wert des Ultraschallsensors in MATLAB® live dar.
Lernzielkontrollfragen:
- An welchen Pins sind
Trigger
und Echo
angeschlossen? Wie lässt sich das anpassen?
- Was ist ein Interrupt und wozu dient er?
- Wozu dient die Funktion attachInterrupt()?
- Was ist bei der Verwendung von Interrupts zu beachten?
Arbeitsergebnisse in SVN: messeUltraschall.ino, zeigeUltraschall.m
Demo: E05
Aufgabe 3.4: 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
Tutorials
Demos
→ zurück zum Hauptartikel: Informatik Praktikum 2