Calliope mini

Bistabiler Schalter

Ziel: Mit der Taste A soll die RGB-LED ein- oder ausgeschaltet werden und der Zustand nach dem Loslassen der Taste erhalten bleiben.


Dieses Verhalten wird in der Technik durch ein bistabiles Relais realisiert. Bistabil bedeutet, der Schalter hat zwei stabile Zustände und jeder Tastendruck bringt ihn in den anderen stabilen Zustand. Der Einsatz ist z.B. eine Treppenhausbeleuchtung, wo man von jeder Stelle des Treppenhauses das Licht Ein- oder Ausschalten kann.

Bistabiler Schalter A

Es ist nicht möglich, im Programm den Zustand der LED abzufragen. Es gibt also keinen Befehl wie z.B. wenn die LED an, mache... Deshalb muss man sich den Zustand der LED in einer Variablen merken!

Variable sind wie Merkzettel, auf denen man sich Dinge aufschreibt, von denen man weiß, dass man sie vergessen wird.

Bei jedem Druck auf die Taste A wird der Inhalt der Variablen led_an abgefragt. Je nach dem Inhalt (wahr oder falsch) wird die LED aus- oder eingeschaltet. Danach wird der Inhalt der Variablen gewechselt, da sich ja auch der Zustand der LED gewechstelt hat. Die Variable led_an merkt sich den Zustand der LED, da der Zustand der LED im Programm nicht abgefragt werden kann.

Damit beim Drücken der Taste A die LED nicht ständig an- und ausgeht, muss zum Schluss noch gewartet werden, bis die Taste A wieder losgelassen wird.

Calliope mini-Programmablaufplan

Die Begriffe wahr und falsch bedeuten nicht, dass etwas richtig oder falsch ist. Sie beschreiben den Zustand einer logischen Variablen und sind vielleicht nicht ganz glücklich gewählt..

Zustand 1 Zustand 2
0 1
Aus An
true false
wahr falsch

 

Noch kürzer wäre diese Variante. Da sich der Inhalt der Variablen led_an bei jedem Drücken von A wechselt, kann der Inhalt jedesmal negiert werden. Aus wahr wird dann immer falsch und umgekehrt.
Calliope mini-Programmablaufplan

Bistabiler Schalter B

Aufgabe: Erweitere das Programm so, dass sich mit der Taste B die RGB-Led ebenfalls bistabil schalten lässt.

Bistabiler Schalter A und B

Aufgabe: Erweitere das Programm so, dass mit der Taste B die RGB-Led bistabil in Rot aufleuchtet.

Dazu sind zwei Variablen notwendig, denn das Programm muss sich jetzt merken, in welcher Farbe die LED leuchtet.

Beachte: Wenn die LED grün leuchtet, muss sie mit dem Drücken der Taste B sofort in rot aufleuchten. Dazu muss beim Einschalten der LED in grün die Variable für die rote LED auf falsch gesetzt werden. Entsprechend muss dann bei der Taste B mit der Variable für die grüne LED verfahren werden.

Calliope mini-Programmablaufplan

zurück