Summer am Raspberry Pi

rbpbuzzerFür ein neues Projekt wollte ich bei bestimmten Interaktionen mit dem Raspberry eine akustische Rückmeldung haben, ob die Aktion ordnungsgemäß ausgeführt wurde. Nach langer Recherche stieß ich auf die hier vorgestellten 5V-Buzzer, die es günstig aus Fernost zu beziehen gibt. Der Anschluss sowie die Ansteuerung dieser kleinen Pieper wird in dieser Anleitung beschrieben.

 

 

 

 

Einkaufsliste

Für unser Vorhaben benötigen wir

  1. einen 5v-Buzzer
  2. optional eine Lochrasterplatine zum einfacheren Verlöten
  3. einen 10K-Ohm Widerstand und
  4. einen BC547 NPN Transistor

Alle Produkte befinden sich auch oben im Slider.

 

 

Buzzer anschließen

Da der Buzzer mit 5V betrieben wird und wir mit unseren GPIO-Ports 3,3V schalten, benötigen wir einen Transistor. Diesen verlöten wir über einen Widerstand mit dem Buzzer und schließen unser Ergebnis an den Raspberry an. Dazu folgende Schaltung:

 

Schaltung

 

 

wiringPi installieren

Zum einfacheren Ansteuern unseres Buzzers installieren wir die wiringPi-Bibliothek. Dies ist in dieser Anleitung ausführlich beschrieben.

 

GPIO-Port initialisieren

Um den Buzzer über den GPIO-Port zu steuern, muss der entsprechende Port als Ausgangsport definiert werden. Dies erreichen wir mit

da wir in dieser Anleitung den GPIO-Port 17 nutzen, was dem wiringPi-Port 0 entspricht. Eine Übersicht der verfügbaren Ports gibt es hier. Die gezeigte Befehlszeile kann auch in die Datei „/etc/rc.local“ eingetragen werden, damit der entsprechende GPIO-Port auch bei einem Neustart als ausgehender Port definiert wird.

 

Buzzer schalten

Nun können wir den Buzzer mit

einschalten, uns über den wunderbaren Klang fernöstlicher Akustik erfreuen und diesen mit

wieder ausschalten.

 

Piep-Folgen mittels Script

Für akustische Rückmeldung reicht meist ein zweifacher, kurzer Piep, den wir am besten in ein kleines Script verpacken, damit wir dieses in unseren zukünftigen Projekten aufrufen können. Meine Version eines solchen Scripts sieht wie folgt aus:

 

Als weiteres, kleines Beispiel benötigte ich einen langen Piep, der im Script so aussieht:

 

Dem Script muss nun die Ausführung erlaubt werden:

 

Wenn ein Programm, dass das Script ausführen soll, unter einem anderen Nutzer läuft, bedarf es noch eines

 

 

DSC00844