User manual
Heute im Adventskalender
1 Piezo-Summer
Töne mit dem Piezo-Summer
Der im Paket enthaltene Piezo-Summer macht elektrische Schwingungen
hörbar. Legt man eine pulsierende Gleichspannung zwischen die beiden
Pole des Summers, wird er in Schwingung versetzt. Je nach Frequenz sind
einzelne Klicks oder ein durchgängiger Ton zu hören. Frequenzen von weni-
gen Hertz (Schwingungen pro Sekunde) nimmt das menschliche Ohr noch
als einzelne Töne wahr, Frequenzen zwischen etwa 20 Hertz und 16 Kilo-
hertz werden als durchgehender Ton unterschiedlicher Tonhöhe wahrge-
nommen.
Bauteile
1 Steckbrett
1 LED gelb mit eingebautem Vorwiderstand
1 LED blau mit eingebautem Vorwiderstand
1 Piezo-Summer
4 GPIO-Verbindungskabel
Zwei Blöcke, die verschiedene Töne erzeugen.
Das Programm
Neben der Zahl 17 in der Minecraft
TM
-Welt befinden sich zwei metallische
Blöcke. Schlägt die Spielfigur mit dem Schwert darauf, leuchten sie auf, und
das Programm 17mc_beep01.py erzeugt zwei verschiedene Töne.
#!/usr/bin/python
import mcpi.minecraft as minecraft
import mcpi.block as block
import RPi.GPIO as GPIO
import time
mc = minecraft.Minecraft.create()
g = 23
b = 18
pi = 12
GPIO.setmode(GPIO.BCM)
GPIO.setup(g, GPIO.OUT, initial=False)
GPIO.setup(b, GPIO.OUT, initial=False)
GPIO.setup(pi, GPIO.OUT, initial=False)
gf = 500
bf = 1000
p = GPIO.PWM(pi, 1)
try:
while True:
for hit in mc.events.pollBlockHits():
bl = mc.getBlockWithData(hit.pos.x, hit.
pos.y, hit.pos.z)
if bl.id == block.IRON_ORE.id:
mc.setBlock(hit.pos.x, hit.pos.y, hit.
pos.z, block.GOLD_ORE.id)
GPIO.output(g,True)
p.ChangeFrequency(gf)
p.start(1)
time.sleep(0.2)
mc.setBlock(hit.pos.x, hit.pos.y, hit.
pos.z, block.IRON_ORE.id)
GPIO.output(g,False)
p.stop()
if bl.id == block.COAL_ORE.id:
mc.setBlock(hit.pos.x, hit.pos.y, hit.
pos.z, block.DIAMOND_ORE.id)
GPIO.output(b,True)
p.ChangeFrequency(bf)
p.start(1)
time.sleep(0.2)
mc.setBlock(hit.pos.x, hit.pos.y, hit.
pos.z, block.COAL_ORE.id)
GPIO.output(b,False)
p.stop()
except KeyboardInterrupt:
GPIO.cleanup()
So funktioniert das Programm
g = 23
b = 18
pi = 12
Nachdem die Bibliotheken importiert sind, werden drei Variablen für die
GPIO-Pins der gelben und blauen LED sowie für den Piezo-Summer ange-
legt. Die Pins werden als Ausgänge initialisiert und ausgeschaltet.
gf = 500
bf = 1000
Die Variablen gf und bf legen die Frequenzen der beiden Töne fest, die
beim Schlag auf den gelben und den blauen Klotz zu hören sind.
p = GPIO.PWM(pi, 1)
Piezo-Summer und zwei LEDs.










