In der folgenden Übung lernen wir ein neues Grove-Modul kennen: den Grove Button.
Dieses Bauteil ist ein einfacher Taster, mit dem zum Beispiel eine LED ein- und ausgeschaltet werden kann:
Ein Taster mit einem solchen Verhalten nennen wir Ein-/ Ausschalter.
Es gibt Taster, die eine andere Wirkung haben. Bei einem Radio wird mit einem Tastendruck das Gerät eingeschaltet und mit einem erneuten Tastendruck ausgeschaltet. Bei einem solchen Schaltverhalten spricht man von einem Umschalter.
Eine Übung für die Unter- und Mittelstufe. Programmierkenntnisse werden nicht vorausgesetzt.
Zusätzliche Informationen zum Thema Drucktaster findest du hier:
Didaktisch methodische Einordnung
In dieser Übung lernst du …
Schaue dir das Modul erst einmal in Ruhe an und beschreibe, was du dort siehst. Ins Auge stechen drei Bauteile:
In dieser Übung wird ein Programm entwickelt und besprochen, mit dem sich eine LED ein- und ausschalten lässt.
Übung: Taster - Ein- /Ausschalter (UM) | |
Material |
|
Aufgaben |
|
Schaltungsaufbau
Wie könnten Handlungsanweisungen an den Controller aussehen?
Eine mögliche Lösung ist:
In der Funktion SETUP
In der Funktion LOOP
Welche Anweisungen werden dazu benötigt?
Mit
wird Pin D6 als Eingang deklariert.
Mit der Programmanweisung
wird der an D6 anliegende Wert (0 oder 1) gelesen und im Speicher <speichername> abgelegt.
Eine Wenn … Dann – Entscheidung wird in Arduino C durch
Das Programm "LED_Taster"
Wie funktioniert das Programm "LED_Taster"?
Programmzeilen 2 und 3
Programmzeilen 7 bis 12
Lesbarkeit eines Programms erhöhen
Das Programm LED_Taster ist besser zu lesen, wenn man ein paar zusätzliche Vereinbarungen in das Programm hineinschreibt. Mit dem Nummernkreuz oder Hashtag # und dem nachfolgenden Wort define findet eine Textersetzung statt.
Im Programm sieht das dann so aus:
Eine Übung für die Mittel- und Oberstufe. Programmierkenntnisse werden vorausgesetzt.
Didaktisch methodische Einordnung
In dieser Übung lernst du …
In dieser Übung wird ein Programm entwickelt und besprochen, mit dem sich eine LED mit Hilfe eines Tasters, der wie ein Lichtschalter wirkt, umschalten lässt.
Die Schaltung und das damit benötigte Material ist identisch mit dem aus Übung UM Taster – Ein- / Ausschalter. Hier geht es darum, ein neues Programm aus einer vorgegebenen Handlungsabfolge zu entwickeln, bei dem der Taster so reagiert, dass er eine LED mit einem ersten Tastendruck ein- und mit einem folgenden Tastendruck wieder ausschaltet.
Aufgaben
Schaltungsaufbau
Identisch mit Übung UM Taster – Ein- /Ausschalter.
Eine mögliche Ablauffolge zur Programmentwicklung
Funktion setup
Funktion loop
dann setze schalter auf TRUE
Das Programm „Taster_Umschalter“
Wie reagiert die Schaltung bei diesem Programm auf Tastendruck?
Mit dem vorliegenden Programm lässt sich eine LED mit Hilfe eines Taster ein- bzw. ausschalten. Jeder Tastendruck kehrt den momentanen Schaltzustand der LED um: leuchtet die LED, wird sie mit dem folgenden Tastendruck ausgeschaltet; leuchtet sie nicht, wird sie eingeschaltet.
Es fällt auf, dass das Umschalten sehr störanfällig ist. Mal gelingt das Umschalten, mal gelingt es nicht. Bei meinen eigenen Versuchen erzielte ich die besten Ergebnisse mit einem delay(100) Wert und kurzen schnellen Tastendrucken. Befriedigend ist diese Softwarelösung auf keinen Fall!
Die Ursache für dieses unkontrollierte Verhalten des Taster lässt sich mit dem Stichwort Tastenprellen umschreiben. Umfangreiche Informationen zu diesem Stichwort und wie man es über ein Programm umgehen kann, findest du im Internet oder hier im Abschnitt über die Hausflurbeleuchtung.
Lösung zur Erweiterungsaufgabe aus dem Kapitel LED
Versuche – ähnlich wie es bei der Besprechung zum Programm „Blinker LED“ erfolgte – jede Programmzeile zu verstehen, indem du jede Anweisung des Programms mit eigenen Worten noch einmal beschreibst. Als Hilfe dient dir in jeder Programmzeile ein Kommentar, der mit dem Zeichen "//" vom eigentlichen Programmcode getrennt ist.
Hier geht es weiter zum Kapitel "Pulsweitenmodulation/ Servo".