Mit Bewegung Ton steuern ist jetzt keine grosse Idee, die Frage ist, in welchem räumlichen und inhaltlichen Rahmen das funktionieren kann, z.B. auch mit mehreren Geräten, die am Ende eine akustische Raumumgebung erzeugen.
Das Gerät soll sehr kompakt sein und vielleicht sogar leicht gehängt werden können. Hardware ist jetzt hier ein RPi 3A+, aber auch ein RPi Zero wäre denkbar (ebenfalls mit der entsprechenden Audio-Hardware). Audio-Output wieder mit der Kombination Waveshare-USB-Soundcard und dem Speaker von Pimoroni.
Der Sensor besitzt folgende Pin-Belegung:
Data
geht bei mir auf GPIO20 (Pin 38), Power auf Pin 4, Masse auf Pin 6.
Achtung: wenn der Sensor nicht genug abgeschirmt ist oder mit entsprechenden Abstand installiert ist, kommt es mit ziemlicher Sicherheit zu „Ghost-Motion“ wegen Wifi-Interferenzen, das bedeutet es kommt zu wiederkehrenden „Bewegungen“, auch wenn keine Bewegung existiert. Link hier: https://forums.raspberrypi.com/viewtopic.php?t=203362
Man kann Wifi deaktivieren und das funktioniert sehr gut, wenn man den Sensor in der Nähe des RPi aus baulichen Gründen in der Nähe haben muss. Link für Deaktivierung von Wifi hier: https://raspberrytips.com/disable-wifi-raspberry-pi/
Der komplette Versuchsaufbau besteht also aus dem Raspberry Pi (hier Modell 3A+), dem USB-Audio-Verstärker plus Lautsprecher und dem Sensor. Das Skript dazu hier:
#!/usr/bin/python
# -*- coding: utf-8 -*-
import RPi.GPIO as GPIO
import time
import os
motion_pin = 38
GPIO.setmode(GPIO.BOARD)
GPIO.setup(motion_pin, GPIO.IN)
try:
while True:
if(GPIO.input(motion_pin) == 0):
print "..."
elif(GPIO.input(motion_pin) == 1):
os.system('aplay /home/pi/audio/sound.wav')
print "M O T I O N"
time.sleep(0.1)
except KeyboardInterrupt:
GPIO.cleanup()
TBC