Raspberry Pi - Geluidssensor

De geluidssensor heeft de mogelijkheid om het aanwezig zijn van geluid in zijn omgeving te detecteren. U kunt hem gebruiken voor projecten die reageren op geluid, zoals lampen die aangaan bij een klap of een voerautomaat voor huisdieren die reageert op geluidssignalen.

Deze handleiding leert u hoe u de Raspberry Pi en een geluidssensor gebruikt om geluid te detecteren. We bekijken:

Daarna kunt u de code aanpassen en het systeem zo instellen dat bijvoorbeeld een LED of een lamp (via een relais) aangaat bij het detecteren van geluid. U kunt het ook instellen om de rotatie van een servomotor te besturen.

Hardware Benodigd

1×Raspberry Pi 5
1×Geluidssensor
1×Jumper Draden
1×(Aanbevolen) Schroefklem Block Shield voor Raspberry Pi
1×(Aanbevolen) Raspberry Pi Prototyping Basisplaat & Breadboard Kit
1×(Aanbevolen) HDMI-Touchscreen-Monitor voor Raspberry Pi

Of u kunt de volgende kits kopen:

1×DIYables Sensorkit (30 sensoren/displays)
1×DIYables Sensorkit (18 sensoren/displays)
Openbaarmaking: Sommige van de links in deze sectie zijn Amazon-affiliate links. We kunnen een commissie ontvangen voor aankopen die via deze links worden gedaan, zonder extra kosten voor u. We waarderen uw steun.

Over de Geluidssensor

De geluidssensor kan geluid in zijn omgeving detecteren. U kunt eenvoudig de gevoeligheid van de sensor afstellen met de ingebouwde potentiometer.

Pinout

De geluidssensor heeft drie pinnen:

  • VCC pin: moet worden aangesloten op VCC (3.3V tot 5V)
  • GND pin: moet worden aangesloten op GND (0V)
  • OUT pin: is een uitgangspin: HIGH bij stilte en LOW wanneer geluid wordt gedetecteerd. Deze pin moet aan een inputpin van de Raspberry Pi worden verbonden.
Sound Sensor Pinout
image source: diyables.io

De geluidssensor bevat een handige ingebouwde potentiometer waarmee u de gevoeligheid kunt aanpassen. Daarnaast heeft de sensor twee LED-indicatoren:

  • Één LED toont de stroomstatus.
  • Één LED geeft de geluidsstatus aan: deze gaat aan bij geluid en uit bij stilte.

Hoe Het Werkt

De module heeft een handige potentiometer waarmee u de geluidsgevoeligheid kunt afstellen. Zo gedraagt de output-pin van de sensor zich:

  • Wanneer geluid wordt gedetecteerd, staat de output-pin op LOW.
  • Wanneer er geen geluid wordt gedetecteerd, staat de output-pin op HIGH.

Bedradingsschema

Raspberry Pi Sound Sensor Wiring Diagram

This image is created using Fritzing. Click to enlarge image

Hoe Programmeert u Voor de Geluidssensor

  • Initialiseer de Raspberry Pi-pin als digitale input via de GPIO.setup() functie.
GPIO.setup(SENSOR_PIN, GPIO.IN)
  • Lees de status van de Raspberry Pi-pin uit met behulp van de GPIO.input() functie.
sound_state = GPIO.input(SENSOR_PIN)

Raspberry Pi Code – Geluid Detecteren

Snelle Stappen

  • Zorg dat Raspbian of een ander compatibel besturingssysteem op uw Raspberry Pi is geïnstalleerd.
  • Zorg dat uw Raspberry Pi verbonden is met hetzelfde lokale netwerk als uw pc.
  • Zorg dat uw Raspberry Pi aangesloten is op internet als u nog bibliotheken moet installeren.
  • Als u voor het eerst een Raspberry Pi gebruikt, bekijk dan de gids hoe zet u de Raspberry Pi klaar.
  • Verbind uw pc via SSH met de Raspberry Pi, bijvoorbeeld met de ingebouwde SSH-client op Linux/macOS of PuTTY op Windows. Zie hoe u uw pc via SSH met de Raspberry Pi verbindt.
  • Controleer of de RPi.GPIO bibliotheek is geïnstalleerd. Zo niet, installeer die met het volgende commando:
sudo apt-get update sudo apt-get install python3-rpi.gpio
  • Maak een Python-scriptbestand aan met de naam sound_sensor.py en voeg de volgende code toe:
# Deze Raspberry Pi code is ontwikkeld door newbiely.nl # Deze Raspberry Pi code wordt zonder enige beperking aan het publiek beschikbaar gesteld. # Voor volledige instructies en schema's, bezoek: # https://newbiely.nl/tutorials/raspberry-pi/raspberry-pi-sound-sensor import RPi.GPIO as GPIO from time import sleep # Set the Raspberry Pi GPIO pin number where the sound sensor is connected SOUND_SENSOR_PIN = 7 # Set the GPIO mode and configure the sound sensor pin as INPUT GPIO.setmode(GPIO.BCM) GPIO.setup(SOUND_SENSOR_PIN, GPIO.IN) # Initialize the previous state variable with the current state prev_sound_state = GPIO.input(SOUND_SENSOR_PIN) try: while True: # Read the current state of the sound sensor sound_state = GPIO.input(SOUND_SENSOR_PIN) # Check for a state change (LOW to HIGH or HIGH to LOW) if sound_state != prev_sound_state: if sound_state == GPIO.LOW: print("Sound detected!") # Update the previous state variable prev_sound_state = sound_state # Add a small delay to prevent continuous readings sleep(0.1) except KeyboardInterrupt: # Clean up GPIO settings when Ctrl+C is pressed GPIO.cleanup() print("\nExiting the program.")
  • Sla het bestand op en voer het Python-script uit met het volgende commando in de terminal:
python3 sound_sensor.py
  • Klap met uw hand voor de geluidssensor.
  • Bekijk het resultaat in de terminal.
PuTTY - Raspberry Pi
Sound detected! Sound detected! Sound detected!

De script blijft oneindig lopen totdat u in de terminal Ctrl + C indrukt.

Let op dat als u merkt dat de LED-status continu aan of uit blijft, ook wanneer er wel geluid is, u de potentiometer wellicht moet bijstellen om de geluidsgevoeligheid van de sensor te verfijnen.

Nu hebben we de mogelijkheid om de code aan te passen zodat bij het detecteren van geluid een LED of een lamp wordt geactiveerd. Ook kunnen we de code zo programmeren dat er een servomotor wordt gedraaid. Voor gedetailleerde instructies en meer informatie, zie de tutorials aan het einde van deze handleiding.

Problemen Oplossen

Als u problemen ondervindt met de werking van de geluidssensor, probeert u dan de volgende stappen:

  • Verminder trillingen: De geluidssensor is gevoelig voor mechanische trillingen en windgeluiden. Plaats de sensor op een stabiele ondergrond om deze storingen te verminderen.
  • Houd rekening met het bereik: Deze geluidssensor heeft een beperkt bereik van ongeveer 25 cm. Zorg dat de geluidsbron dichtbij de sensor is voor nauwkeurige metingen.
  • Controleer de voeding: Zorg voor een stabiele stroomvoorziening zonder elektrische storingen. Als analoge schakeling kan de sensor last hebben van voedingstoringen.

Door deze stappen te volgen, kunt u mogelijke problemen met de geluidssensor oplossen.

Video Tutorial

We overwegen het maken van videotutorials. Als u videotutorials belangrijk vindt, abonneer u dan op ons YouTube-kanaal om ons te motiveren de video's te maken.

Bekijk onze video-tutorial voor een visuele begeleiding bij dit project! De video geeft extra inzichten om snel en goed aan de slag te gaan met de geluidssensor en Raspberry Pi.

Functie Referenties

Gerelateerde Tutorials

※ ONZE BERICHTEN

  • U bent welkom om de link naar deze tutorial te delen. Gebruik onze inhoud echter niet op andere websites. We hebben veel moeite en tijd gestoken in het maken van de inhoud, respecteer alstublieft ons werk!