Geplaatst op Geef een reactie

Zoemer met Raspberry Pi gebruiken

Raspberry Pi buzzer

In deze tutorial gebruiken we een 5V actieve zoemer. Met een Python-script op je Raspberry Pi, laten we de zoemer pieptonen maken. Wanneer je deze tutorial hebt voltooid, kan je via de GPIO-pinnen een actieve zoemer aansluiten op je Pi. Je hebt ook de basiscode om een wederkerende pieptoon te produceren.

Wat je nodig hebt voor deze tutorial

Allereerst moet je een Raspberry Pi 3 hebben die op de nieuwste versie van Raspbian draait. Deze versie bevat “Thonny”. We zullen deze gebruiksvriendelijke IDE gebruiken om onze Python-code te schrijven. Als je niet bekend bent met Python of met Thonny en de GPIO-pinnen, raad ik je aan onze volgende tutorials te bekijken “Eerste Python programma op de Raspberry Pi” en “Starten met GPIO op de Raspberry Pi” voor een snelle introductie.

Vervolgens heb je wat extra hardware nodig:

  • een breadboard (we gebruiken een breadboard van 400 punten)
  • een actieve zoemer (=buzzer)
  • Dupont jumper kabels
  • NPN transistor (optioneel)
  • een T-cobbler (optioneel)
  • een 40 pins GPIO-kabel (optioneel)

Raspberry Pi GPIO discovery kit

 

Indien je dingen zou missen, aarzel dan niet om onze shop te bezoeken. We hebben een goed bedachte kit die alle nodige componenten bevat .

 

Over de 5V actieve zoemer

active buzzer

Er zijn 2 soorten zoemers: passieve en actieve. Actieve zoemers zijn gemakkelijker te gebruiken en laten ons toe om ze zelfstandig te gebruiken, zelfs bij een gewone constante gelijkspanning. Dat is net wat we willen doen in deze tutorial. Dus we gebruiken een actieve zoemer. Met een continue DC-spanning zal de zoemer zoemen op een vooraf gedefinieerde frequentie van ongeveer 2300 Hz. In het ideale geval werkt de zoemer op 5V. De uitgangsspanning van de GPIO-pinnen van onze Raspberry Pi is slechts 3,3V. Dit is dus iets te laag voor onze 5V-zoemer. Maar de zoemer werkt ook op 3,3V. Niettemin is het volume van het geproduceerde geluid bij 3,3V minder sterk. Dus, als je een NPN-transistor hebt, kan je de zoemer met van 5V voorzien en is dit uiteraard beter.

In deze tutorial zullen we beide hardwareconfiguraties illustreren: 1e optie : gebruik van 5V (met transistor) en 2e optie : gebruik van 3,3V

Het hardware gedeelte opzetten

Voordat je begint met het aansluiten van kabels op de GPIO-pinnen van je Raspberry Pi, dien je ervoor te zorgen dat je de Pi goed afsluit en de voedingskabel van het bordje hebt verwijderd!

1e optie : 5V voeding aan de hand van een NPN-transistor

buzzer_transistor
  • sluit de 40-pins kabel op de GPIO-pinnen van je Pi aan (verwijder indien nodig eerst het deksel van je Pi)
  • sluit de T-cobbler op het breadboard aan zoals wordt weergegeven in de afbeelding hierboven of hieronder
  • sluit het andere uiteinde van de 40-pins kabel aan op de T-cobbler
  • plaats de zoemer op het breadboard, de lange poot is positief, plaats het in de buurt van de rand van het breadboard
  • plaats de NPN-transistor: op ons beeld stroomt de stroom van de rechterpin (3) naar de linkerpin (1), de middelste pin (2) is de poort
  • verbind transistorpen (3) met een 5V pin van de Pi (rode draad)
  • sluit transistorpen (2) aan op pin 23 (gele draad)
  • kijk na of de lange poot (+) van de zoemer in dezelfde rij geplaatst werd als de transistorpin (1)
  • sluit de korte poot (-) van de zoemer op een GPIO GND-pin aan (zwarte draad)

 

 

buzzer with transistor

2e optie : 3,3V voeding

buzzer
  • sluit de 40-pins kabel op de GPIO-pinnen van je Pi aan (verwijder indien nodig eerst het deksel van je Pi)
  • sluit de T-cobbler op het breadboard aan zoals wordt weergegeven in de afbeelding hierboven of hieronder
  • sluit het andere uiteinde van de 40-pins kabel aan op de T-cobbler
  • plaats de zoemer op het breadboard, de lange poot is positief, plaats het in de buurt van de rand van het breadboard
  • sluit de lange poot (+) van de zoemer aan op pin 23 (gele draad)
  • sluit de korte poot (-) van de zoemer op een GPIO GND-pin aan (zwarte draad)

 

 

buzzer

De code schrijven

Het doel van deze tutorial is om een heel eenvoudig Python-programma te schrijven waarmee we een wederkerende pieptoon kunnen produceren. Om de code te schrijven, gebruiken we de Thonny IDE. Je vindt Thonny onder het applicatiemenu van je Raspberry Pi.

Schrijf of plak de volgende code in de IDE:

import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
BUZZER= 23
buzzState = False
GPIO.setup(BUZZER, GPIO.OUT)

while True:
    buzzState = not buzzState
    GPIO.output(BUZZER, buzzState)
    time.sleep(1)

Wat verklaringen over de code:

  • GPIO.setmode (GPIO.BCM): De GPIO.BCM-optie betekent dat we naar de pinnen verwijzen via het “Broadcom SOC-kanaal” -nummer, dit zijn de cijfers na “GPIO”
  • GPIO.setwarnings (False): we gebruiken deze coderegel om waarschuwingsberichten te vermijden. Dit is nodig omdat we de GPIO-verbinding niet goed beëindigen tijdens het onderbreken van het programma
  • GPIO.setup(BUZZER, GPIO.OUT): We definiëren de BUZZER-pin (= 23) als een uitvoerpin
  • while True: is een oneindige lus (totdat we het programma onderbreken)
  • Wees voorzichtig, Python is witruimte gevoelig. Verwijder de “tab” niet vóór de volgende regels code
  • GPIO.output(BUZZER, buzzState): hier wijzen we de waarde van de variabele “buzzState” aan de pin toe. True = 3,3 V en False = 0 V
  • time.sleep (1): wacht 1 seconde
Python script buzzer

 

Wanneer je klaar bent met de code, klik je op de Run knop. Je hoort de zoemer elke seconde een pieptoon produceren. Om de pieptonen te stoppen, klik je gewoon op de STOP-knop op het ogenblik dat er geen pieptoon is.

Gefeliciteerd! Met deze opstelling kan je nu met je Pi een pieptoon produceren. Je kan het script gebruiken om het te integreren in een toepassing waar je bijvoorbeeld gewaarschuwd wil worden door een piepgeluid. Nog veel plezier met je volgend project!

Deel een reactie

Your email address will not be published. Required fields are marked *

Abonneer u op onze nieuwsbrief

Door u te abonneren, gaat u akkoord met ons privacy beleid.