MINT-Tag 2023: Unterschied zwischen den Versionen
Zeile 79: | Zeile 79: | ||
|- | |- | ||
| | | | ||
[[ | [[Datei:Steckbrett.png|mini|links|Abb. 4: Auf dem Steckbrett werden experimentelle Schaltungen aufgebaut]] | ||
|- | |- | ||
|} | |} |
Aktuelle Version vom 1. Februar 2024, 11:34 Uhr
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 |
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.
Funktionstest: Hallo Welt! |
|
Aufgabe 1: Blinkende 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.
- Roboterkonfiguration (LED an D13)
- In einer Schleife - LED einschalten, 1 s warten, LED ausschalten, 1 s warten,usw.
- Programm auf Arduino übertragen
Einführung: Steckbrett |
Musterlösung |
Aufgabe 2: Wechselblinker
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).
- Schalte eine LED mit Vorwiderstand über D8 gegen GND.
- Schalte eine LED mit Vorwiderstand über D7 gegen GND.
- Passe die Roboterkonfiguration entsprechend an.
- Schalte im Sekundentakt wechselnd eine LED an und die andere aus.
- Übertrage das Programm auf den Arduino.
Frage: Wieso hat die LED unterschiedlich lange Beine (vgl. Abb. 4)?
Stückliste | |||||||||
|
Schaltplan |
Musterlösung |
Aufgabe 3: LED pulsieren lassen
Eine LED soll pulsierend heller und dunkler werden (engl. faden).
- Schalte eine LED mit Vorwiderstand über D6 gegen GND.
- Passe die Roboterkonfiguration entsprechend an (s. Abb. 12).
- Schicke Werte von 0..255 an die LED.
- Übertrage das Programm auf den Arduino.
- Bonus: Erweitern Sie Ihr Programm, so dass die LED abwechselnd heller und wieder dunkler wird.
Stückliste | |||||||||
|
Schaltplan |
Tipp 1 |
Die LED benötigt einen 100 Ω Vorwiderstand, damit Sie nicht kaputt geht (Farbcode: Braun-Schwarz-Braun). |
Das lange Beinchen der Diode ist Plus (+) und das Kurze Minus (-, GND). |
Mit einer Pulsweitenmodulation (s. Abb. 10) lässt sich eine LED dimmen. |
Die PWM-fähigen Ports sind mit ~ markiert. Wir nehmen Digitalport ~6. |
Musterlösung |
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.
- Schalte eine LED mit Vorwiderstand über D6 gegen GND.
- Schließe das Potentiometer an A0 an und Versorge es mit 5V.
- Passe die Roboterkonfiguration entsprechend an (s. Abb. 15).
- Messe die Eingangswerte des Potentiometers. Welchen Wertebereich hat A0?
- Rechne die Eingangswerte in die Ausgangswerte um.
- Schicke Werte von 0..255 an die LED.
- Übertrage das Programm auf den Arduino.
Stückliste | ||||||||||||
|
Schaltplan |
Tipp 1 |
Die LED benötigt einen 100 Ω Vorwiderstand, damit Sie nicht kaputt geht (Farbcode: Braun-Schwarz-Braun). |
Das lange Beinchen der Diode ist Plus (+) und das Kurze Minus (-, GND). |
Mit einer Pulsweitenmodulation (s. Abb. 9) lässt sich eine LED dimmen. |
Die PWM-fähigen Ports sind mit ~ markiert. Wir nehmen Digitalport ~6 (vgl. Abb. 134). |
Das Potentiometer hat drei Beinchen: rechts (5 V), mitte (A0), links (GND) (vgl. Abb. 14). |
Tipp 2 |
Am Analogeingang A0 ist ein 10-Bit Analog-Digital-Wandler verbaut. 0 V wird zum Digitalwert 0 und 5 V zum Digitalwert 1023 (). |
0..1023 wird über die Division durch 4 ungefähr zum Wertebereich 0..255 für die PWM. |
Musterlösung |