MINT-Tag 2023

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Abb. 1: Mechatronische Projekte mit dem Arduino
Autor: Prof. Dr.-Ing. Schneider
Termin: 01.02.2024
Raum: L3.1-E02-180 (Labor Robotik)
Thema: Arduino Workshop
Betreuer: Prof. Dr.-Ing. Schneider, Tel. 806
Tabelle 1: Ablauf des Workshops
Gruppe A Gruppe B Inhalt Dauer
12:00 13:30 Begrüßung 5 Min.
12:05 13:35 Einführung Mikrocontroller 5 Min.
12:10 13:40 Open Roberta Lab, "Hello World!" 10 Min.
12:20 13:50 Blinkende LED (D13) 10 Min.
12:40 14:10 Wechselblinker 15 Min.
12:55 14:25 LED pulsieren lassen 15 Min.
13:10 14:40 LED mit Potentiometer dimmen 15 Min.
13:25 14:55 Verabschiedung 5 Min.


Motivation

Mikrocontroller sind in unserer modernen Welt überall etwas versteckt zu finden. Sie steuern Kaffeemaschinen, Lichtschalter, Staubsauger, Kühlschränke, Waschmaschinen bis hin zu Rasenmähern. Sie bewässern automatisch unsere Pflanzen und prüfen den Kalkgehalt unseres Wassers. Dieser Workshop gibt einen Einblick in die Funktion eines Mikrocontrollers am Beispiel der Plattform Arduino.

Was als Experimentierprojekt für Elektronikbegeisterte begann, ist mittlerweile zur professionellen Lösung für industrielle Anwendungen geworden – der Microcontroller Arduino. In praktischen Versuchen erlernst Du das Programmieren des beliebten Microcontrollers. Vorkenntnisse sind nicht notwendig – Schritt für Schritt erklären wir Dir den Arduino und seine Komponenten – und warum Programmierung kein Hexenwerk ist.

Software

Der Arduino lässt sich mir viele Entwicklungsumgebungen programmieren. Die einfachste Umgebung stellt das Open Roberta Lab bereit.

Vorbereitung im PC-Pool

  • Pro zweier Team einen PC mit USB-Eingang und Internetzugang
  • Auf den PCs muss der Open Roberta Connector in der neuesten Version (1.6.8) und Java installiert sein.
  • Eine Anleitung gibt es hier.
  • Die Seite Open Roberta Lab muss erreichbar sein, da wir mit dieser programmieren wollen.
  • Dozenten-PC und Beamer für die visuelle Anleitung müssen verfügbar sein.

Aufgabe 1: Blinkende LED

Abb. 3: Blinkende Leuchten werden im Verkehr
Abb. 4: LED

Auf dem Arduino ist an Pin 13 bereits eine LED eingebaut (siehe Abb. 3). Häufig blinkt diese Lampe schon, wenn man ein neues Arduino-Board anschließt, da das Blink-Programm zum Testen des Boards je nach Hersteller bereits vorab installiert ist. Wir werden dieses Blinken jetzt selbst programmieren.

  1. Roboterkonfiguration (LED an D13)
  2. In einer Schleife - LED einschalten, 1 s warten, LED ausschalten, 1 s warten,usw.
  3. Programm auf Arduino übertragen

Aufgabe 2: Wechselblinker

Abb. 7: Blinkende Leuchten werden im Verkehr

Zwei Leuchtdioden sollen abwechselnd blinken. Blinkende Leuchten werden im Verkehr als Warnsignal an Fußgängerüberwegen und an Bahnübergängen eingesetzt (vgl. Abb. 6).

  1. Schalte eine LED mit Vorwiderstand über D8 gegen GND.
  2. Schalte eine LED mit Vorwiderstand über D7 gegen GND.
  3. Passe die Roboterkonfiguration entsprechend an.
  4. Schalte im Sekundentakt wechselnd eine LED an und die andere aus.
  5. Übertrage das Programm auf den Arduino.

Frage: Wieso hat die LED unterschiedlich lange Beine (vgl. Abb. 4)?

Aufgabe 3: LED pulsieren lassen

Abb. 10: Pulsweitenmodulation zur Einstellung der Helligkeit einer LED

Eine LED soll pulsierend heller und dunkler werden (engl. faden).

  1. Schalte eine LED mit Vorwiderstand über D6 gegen GND.
  2. Passe die Roboterkonfiguration entsprechend an (s. Abb. 12).
  3. Schicke Werte von 0..255 an die LED.
  4. Übertrage das Programm auf den Arduino.
  5. Bonus: Erweitern Sie Ihr Programm, so dass die LED abwechselnd heller und wieder dunkler wird.

Aufgabe 4: LED mit Potentiometer dimmen

Eine LED soll gedimmt werden. Die Helligkeit soll mit einem Drehregler (Potentiometer) eingestellt werden.

Lerninhalt: Spannung eines Drehreglers auslesen, Sensorwerte mathematisch verarbeiten und für eine Ausgabe verwenden.

Ein Drehregler hat drei Anschlüsse. Außen wird rechts + und links – angeschlossen. Von dem mittleren Pin geht ein Kabel zu einem analogen Eingangspin am Mikrocontroller-Board. Wenn man den Drehregler dreht, dann gibt der mittlere Pin eine Spannung zwischen 0 und 5 Volt aus. Drehregler ganz links: 0 V und Drehregler ganz rechts: 5 V, bzw. seitenverkehrt, je nach Verkabelung. Der 10-Bit Analog-Digital-Wandler wandelt die gemessene Spannung in einen Wertebereich um.

  1. Schalte eine LED mit Vorwiderstand über D6 gegen GND.
  2. Schließe das Potentiometer an A0 an und Versorge es mit 5V.
  3. Passe die Roboterkonfiguration entsprechend an (s. Abb. 15).
  4. Messe die Eingangswerte des Potentiometers. Welchen Wertebereich hat A0?
  5. Rechne die Eingangswerte in die Ausgangswerte um.
  6. Schicke Werte von 0..255 an die LED.
  7. Übertrage das Programm auf den Arduino.

Weiterführende Links

Programmheft