MINT-Tag 2023: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Zeile 67: Zeile 67:
|-
|-
|}
|}
== Aufgabe 1: Blinkende LED ==
[[Datei:Arduino-onboard-led-pin13-blink.jpg|thumb|rigth|300px|Abb. 3: Blinkende Leuchten werden im Verkehr]]
[[Datei:Anode Kathode.png|thumb|rigth|100px|Abb. 4: LED]]
Auf dem Arduino ist an Pin 13 bereits eine LED eingebaut (siehe Abb. 2). 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
{| role="presentation" class="wikitable mw-collapsible mw-collapsed"
{| role="presentation" class="wikitable mw-collapsible mw-collapsed"
| <strong>Einführung: Steckbrett&thinsp;</strong>
| <strong>Einführung: Steckbrett&thinsp;</strong>
|-
|-
|
|
[[Datei:Datei:Steckbrett.png|mini|links|Abb. 3: Auf dem Steckbrett werden experimentelle Schaltungen aufgebaut]]
[[Datei:Datei:Steckbrett.png|mini|links|Abb. 4: Auf dem Steckbrett werden experimentelle Schaltungen aufgebaut]]
|-
|-
|}
|}
== Aufgabe 1: Blinkende LED ==
[[Datei:Arduino-onboard-led-pin13-blink.jpg|thumb|rigth|300px|Abb. 2: Blinkende Leuchten werden im Verkehr]]
[[Datei:Anode Kathode.png|thumb|rigth|100px|Abb. 3: LED]]
Auf dem Arduino ist an Pin 13 bereits eine LED eingebaut (siehe Abb. 2). 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&#8239;s warten, LED ausschalten, 1&#8239;s warten,usw.
# Programm auf Arduino übertragen
{| role="presentation" class="wikitable mw-collapsible mw-collapsed"
{| role="presentation" class="wikitable mw-collapsible mw-collapsed"
| <strong>Musterlösung&thinsp;</strong>
| <strong>Musterlösung&thinsp;</strong>
|-
|-
|
|
[[Datei:ORL A1 Roboterkonfiguration.jpg|mini|links|Abb. 4: Roboterkonfiguration für die interne LED]]
[[Datei:ORL A1 Roboterkonfiguration.jpg|mini|links|Abb. 5: Roboterkonfiguration für die interne LED]]
[[Datei:ORL A1 Programm.jpg|mini|links|Abb. 5: Testprogramm gibt "Hallo Welt!" auf dem seriellen Monitor aus.]]
[[Datei:ORL A1 Programm.jpg|mini|links|Abb. 6: Testprogramm gibt "Hallo Welt!" auf dem seriellen Monitor aus.]]
|-
|-
|}
|}


== Aufgabe 2: Wechselblinker ==
== Aufgabe 2: Wechselblinker ==
[[Datei:Blinker Ueberweg.jpg|thumb|rigth|300px|Abb. 6: Blinkende Leuchten werden im Verkehr]]
[[Datei:Blinker Ueberweg.jpg|thumb|rigth|300px|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).
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 D8 gegen GND.
Zeile 119: Zeile 119:
|-
|-
|
|
[[Datei:ORL A2 Schaltplan.jpg|mini|links|Abb. 7: Schaltplan für den Wechselblinker]]
[[Datei:ORL A2 Schaltplan.jpg|mini|links|Abb. 8: Schaltplan für den Wechselblinker]]


|-
|-
Zeile 127: Zeile 127:
|-
|-
|
|
[[Datei:ORL_A2_Programm.jpg|mini|links|Abb. 8: Programm für den Wechselblinker]]
[[Datei:ORL_A2_Programm.jpg|mini|links|Abb. 9: Programm für den Wechselblinker]]
|-
|-
|}
|}


== Aufgabe 3: LED pulsieren lassen ==
== Aufgabe 3: LED pulsieren lassen ==
[[Datei:FAQ PWM dimmen DE.PNG|thumb|rigth|450px|Abb. 9: Pulsweitenmodulation zur Einstellung der Helligkeit einer LED]]
[[Datei:FAQ PWM dimmen DE.PNG|thumb|rigth|450px|Abb. 10: Pulsweitenmodulation zur Einstellung der Helligkeit einer LED]]
Eine LED soll pulsierend heller und dunkler werden (engl. faden).
Eine LED soll pulsierend heller und dunkler werden (engl. faden).
# Schalte eine LED mit Vorwiderstand über D6 gegen GND.
# Schalte eine LED mit Vorwiderstand über D6 gegen GND.
Zeile 158: Zeile 158:
|-
|-
|
|
[[Datei:ORL A3 Schaltplan.jpg|mini|links|Abb. 10: Schaltplan für die pulsierende LED]]
[[Datei:ORL A3 Schaltplan.jpg|mini|links|Abb. 11: Schaltplan für die pulsierende LED]]
|-
|-
|}
|}
Zeile 176: Zeile 176:
|-
|-
|
|
[[Datei:ORL A3 Roboterkonfiguration.jpg|mini|links|Abb. 11: Roboterkonfiguration]]
[[Datei:ORL A3 Roboterkonfiguration.jpg|mini|links|Abb. 12: Roboterkonfiguration]]
[[Datei:ORL_A3_Programm.jpg|mini|links|Abb. 12: Programm für die pulsierende LED]]
[[Datei:ORL_A3_Programm.jpg|mini|links|Abb. 13: Programm für die pulsierende LED]]
|-
|-
|}
|}
Zeile 217: Zeile 217:
|-
|-
|
|
[[Datei:ORL A4 Schaltplan.jpg|mini|links|Abb. 13: Schaltplan für die gedimmte LED]]
[[Datei:ORL A4 Schaltplan.jpg|mini|links|Abb. 14: Schaltplan für die gedimmte LED]]
|-
|-
|}
|}
Zeile 237: Zeile 237:
|-
|-
|
|
[[Datei:ORL A4 Roboterkonfiguration.jpg|mini|links|Abb. 14: Roboterkonfiguration]]
[[Datei:ORL A4 Roboterkonfiguration.jpg|mini|links|Abb. 15: Roboterkonfiguration]]
[[Datei:ORL_A4_Programm.jpg|mini|links|Abb. 15: Programm für die gedimmte LED]]
[[Datei:ORL_A4_Programm.jpg|mini|links|Abb. 16: Programm für die gedimmte LED]]
|-
|-
|}
|}

Version vom 1. Februar 2024, 08:19 Uhr

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. 2). 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. 3)?

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. 11).
  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. 9).
  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