User manual
So funktioniert das Programm
r = 24
g = 23
b = 18
rk = 12
gk = 16
bk = 21
Dieses Programm verwendet mehr Variablen als die vorherigen Programme.
Auch hier werden am Anfang Bibliotheken importiert und Variablen ange-
legt. r, g und b enthalten die Nummern der verwendeten GPIO-Pins der
RGB-LED, rk, gk und bk die Nummern der GPIO-Pins der Knetekontakte.
r0 = 14
g0 = 13
b0 = 11
r1 = 1
g1 = 5
b1 = 3
Die Variablen r0, g0 und b0 enthalten die Farben der ausgeschalteten Blö-
cke und r1, g1 und b1 die der eingeschalteten.
rx = -8
gx = -9
bx = -10
y = 3
z = 21
Die Lage der Blöcke wird ebenfalls in Variablen gespeichert. Jede Farbe hat
ihre eigene x-Koordinate, die Variable z bezeichnet den Anfang der Reihen
links und y die Höhe im Raum.
rl = 0
bl = 0
gl = 0
Die Variablen rl, gl und bl enthalten später die eingestellten Werte für die
drei Farbkomponenten.
Nach der Definition der Variablen werden die GPIO-Pins initialisiert, und für
jede Farbe der RGB-LED wird ein PWM-Objekt gestartet.
try:
while True:
if GPIO.input(rk) == False:
if rl < 10:
rl += 1
else:
rl = 0
Die Endlosschleife prüft als Erstes, ob der rote Knetekontakt berührt wurde.
Hat die Variable rl den Maximalwert 10 noch nicht erreicht, wird sie um 1
erhöht. Beim nächsten Antippen des Knetekontakts nach dem Wert 10 wird
sie auf 0 zurückgesetzt.
for i in range(rl):
mc.setBlock(rx, y, z+i, block.WOOL.id, r1)
for i in range(10-rl):
mc.setBlock(rx, y, z+rl+i, block.WOOL.
id, r0)
Zwei Schleifen setzen die Blöcke der roten Blockreihe passend zum einge-
stellten Wert.
rp.ChangeDutyCycle(rl*10)
time.sleep(0.05)
Jetzt wird noch der PWM-Wert der roten Farbe der RGB-LED auf das Zehn-
fache des eingestellten Werts gesetzt. Die Werte auf den Blockleisten be-
wegen sich zwischen 0 und 10, PWM-Werte liegen dagegen im Bereich
zwischen 0 und 100. Zum Schluss wartet das Programm 0,05 Sekunden, um
zu lange Berührungen des Knetekontakts nicht mehrfach auszuwerten. Bei
Bedarf können Sie diese Zeit verlängern.
Nach dem gleichen Schema werten zwei weitere if-Abfragen die Knete-
kontakte für die grüne und die blaue Farbe der RGB-LED aus.
Jetzt wird geprüft, ob der grüne Knetekontakt berührt wird. Hat die Variab-
le gl den Maximalwert 10 noch nicht erreicht, wird sie um 1 erhöht. Beim
nächsten Antippen des Knetekontakts nach dem Wert 10 wird sie auf 0 zu-
rückgesetzt.
if GPIO.input(gk) == False:
if gl < 10:
gl += 1
else:
gl = 0
Eine Schleife setzt alle Blöcke vom linken Ende der Reihe bis zum Block, der
der Variable gl entspricht, auf die Farbe g1, was einem leuchtenden Grün
entspricht.
for i in range(gl):
mc.setBlock(gx, y, z+i, block.WOOL.id, g1)
Eine zweite Schleife setzt alle Blöcke vom Block, der der Variable gl ent-
spricht bis zum rechten Ende der Reihe auf die Farbe g0, was einem ausge-
schalteten Grün entspricht.
for i in range(10-gl):
mc.setBlock(gx, y, z+gl+i, block.WOOL.
id, g0)
Am Ende wird der PWM-Wert der grünen Farbe der RGB-LED auf das Zehnfa-
che des eingestellten Werts gesetzt.
gp.ChangeDutyCycle(gl*10)
time.sleep(0.05)
Bei der blauen Reihe bezeichnet die Variable bl den Helligkeitswert, b1 und
b0 sind die beiden Farben der blauen Blöcke.
if GPIO.input(bk) == False:
if bl < 10:
bl += 1
else:
bl = 0
for i in range(bl):
mc.setBlock(bx, y, z+i, block.WOOL.
id, b1)
for i in range(10-bl):
mc.setBlock(bx, y, z+bl+i, block.WOOL.
id, b0)
bp.ChangeDutyCycle(bl*10)
time.sleep(0.05)
Der Tag 16 in der Minecraft
TM
-Welt
Schon gewusst...?
Minecraft
TM
ist in verschiedenen Editionen für zahlreiche Hard-
wareplattformen erhältlich.
Edition Plattform Aktuelle Version
Windows 10 Windows 10 1.0.5
Java Windows 1.11.2
Java Mac 1.11.2
Java Linux 1.11.2
Konsole Xbox One CU41
Konsole Xbox 360 TU51
Konsole Playstation 3 1.44
Konsole Playstation 4 1.44
Konsole Playstation Vita 1.44
Konsole Wii U Patch 20
Pocket Android 1.0.5
Pocket iOS 1.0.5
Pocket Windows Phone 1.0.5
Pocket Kindle Fire 1.0.5
Pocket (VR) Gear VR 1.0.5
Pocket Apple TV 1.0.5
Pi Raspberry Pi 0.1.1










