Indholdsfortegnelse:
- Trin 1: Nødvendigt materiale
- Trin 2: Knapperne
- Trin 3: Buttons Case
- Trin 4: Raspberry Pi
- Trin 5: Programmering
- Trin 6: Kør Python -scriptet ved hver opstart
- Trin 7: Afslut note
Video: Afspilningsoptager med Raspberry Pi: 7 trin (med billeder)
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:29
Hej allesammen, I denne instruktive forklarer jeg, hvordan jeg lavede en afspilningsoptager ved hjælp af Raspberry Pi. Enheden er en Raspberry Pi model B+med 7 trykknapper på toppen, en højttaler tilsluttet en af Pi's usb -porte og en mikrofon tilsluttet en anden usb -port. Hver knap er knyttet til en lyd, så den kan afspille 7 forskellige lyde. Lydene afspilles efter et kort tryk på knappen. For at optage en ny lyd skal du blot trykke på knappen i mere end 1 sekund, optage efter bippet og slippe knappen ved slutningen af optagelsen. Enklere end det bliver det ikke!
Trin 1: Nødvendigt materiale
Til dette projekt havde jeg brug for:
- En Raspberry Pi model B + og micro SD -kort - 29,95 $ + 9,95 $
- Et Raspberry Pi plastikhus - 7,95 $
- USB -højttalere - 12,50 $
- En USB -mikrofon - 5,95 $
- Et halvstort perma-proto-bord-4,50 $
- 7 øjeblikkelige trykknapper - 2,50 $
Jeg havde også brug for:
- Noget elektrisk ledning
- Retvinklede kvindelige overskrifter
- Lidt træ, sort maling og lim til knapkassen
- Et loddejern og lodde
Trin 2: Knapperne
Knapperne, der bruges, er ret høje (6 mm), så de kan gå igennem sagens tykkelse.
Jeg placerede mine 7 knapper på et perma-proto-bræt, som er som et brødbræt, undtagen at komponenter er loddet på det. Dette er mere robust end et brødbræt og billigere end at udskrive et printkort. Hver knap linker jorden til en GPIO på Raspberry Pi. Jeg har ikke modstande her, da Pi allerede har interne pull-up/down modstande, som vil blive indstillet i programmet. I dette tilfælde har jeg indstillet dem til pull-up (se program nedenfor).
Knapperne placeres hver 4. række eller hver 0,4 tommer.
Trin 3: Buttons Case
Jeg lavede en meget enkel sag til knapperne, med plader af krydsfiner og firkantet dyvler i træ. Dyvelstørrelsen skal være stor nok til at indeholde knapfoden og brættet, men lille nok til at lade knappen komme ud af kassen. Jeg brugte en 1/4 i x 1/4 i dowel.
Efter at have kontrolleret, at brættet passer i sagen, limes dyvlerne til bundpladen. Der bores derefter huller på det øverste ark (brættet kan bruges til præcist at markere hver 0,4 tommer). Alle trædele er malet, brættet placeret i kassen og det øverste ark limet oven på det.
Trin 4: Raspberry Pi
Jeg ville ikke lodde ledningerne direkte til Pi, hvis jeg i fremtiden vil bruge Pi til noget andet. Jeg lodde derfor ledningerne til retvinklede hunoverskrifter og tilsluttede overskrifterne på Pi.
De anvendte GPIO'er er 21, 26, 20, 19, 13, 6 og 5. Jordstiften bruges også.
Mikrofonen og højttaleren er simpelthen tilsluttet 2 af de 4 usb -porte.
Pi'en drives via mikro-usb-stikkontakten
Trin 5: Programmering
For at programmere Pi'en tilsluttede jeg den til internettet ved hjælp af et ethernet -kabel og kontrollerede den fra en fjerncomputer ved hjælp af VNC viewer. Du kan dog ikke bruge denne opsætning første gang du opretter forbindelse til Pi, fordi operativsystemet ikke er installeret endnu, og SSH ikke er deaktiveret. Så du skal tilslutte en skærm, et tastatur og en mus i det mindste første gang.
Det var ganske besværligt at finde kommandoerne til at optage og afspille en lyd på det rigtige lydkort. Disse er de kommandoer, der fungerede for mig:
-
aplay -D plughw: CARD = Device_1, DEV = 0 0.wav
Spiller 0.wav
-
arecord 0.wav -D sysdefault: CARD = 1 -f cd -d 20
Optager i maksimalt 20 sekunder i fil 0.wav, med cd -kvalitet
Lydfilerne er placeret i standardmappen (/home/pi). En lydfil til bip er også nødvendig, placeret i standardmappen og kaldet beep.wav.
Selve python -koden er følgende:
python -kode til en Raspberry Pi afspilningsoptager
importer RPi. GPIO som GPIO |
importtid |
import os |
#variabler: |
butPressed = [True, True, True, True, True, True, True] #if -knappen i trykkes på, men butPressed er Falsk |
pin = [26, 19, 13, 6, 5, 21, 20] #GPIO pins på hver knap |
recordBool = Falsk#Sandt, hvis en registrering er i gang |
GPIO.setmode (GPIO. BCM) |
for i i området (0, 7): |
GPIO.setup (pin , GPIO. IN, pull_up_down = GPIO. PUD_UP)#sætter Pi's interne modstande til at trække op |
mens det er sandt: |
for i i området (0, 7): |
butPressed = GPIO.input (pin )#kontrollerer, om der trykkes på en knap |
hvis butPressed == Falsk:#hvis der trykkes på en knap |
previousTime = time.time () |
mens butPressed == Falsk og recordBool == Falsk: |
butPressed = GPIO.input (pin ) |
hvis time.time () - previousTime> 1.0:#hvis knappen trykkes i mere end et sekund, så er recordBool True |
recordBool = Sandt |
hvis recordBool == True: #if recordBool er True, afspiller den en biplyd og optager derefter |
os.system ("aplay -D plughw: CARD = Device_1, DEV = 0 beep.wav") |
os.system ("arecord %d.wav -D sysdefault: CARD = 1 -f cd -d 20 &" %i) #records i maksimalt 20 sekunder i fil i.wav, med cd -kvalitet |
mens butPressed == Falsk: |
butPressed = GPIO.input (pin ) |
os.system ("pkill -9 arecord")#optagelsen stoppes, når knappen slippes, eller efter 20 sekunder |
recordBool = Falsk |
ellers: #if recordBool er falsk, det afspiller lyd i.wav |
os.system ("aplay -D plughw: CARD = Device_1, DEV = 0 %d.wav" %i) |
time.sleep (0,1) |
se rawPlayback -optager hostet af ❤ af GitHub
Trin 6: Kør Python -scriptet ved hver opstart
For at køre python -scriptet ved hver Pi's opstart lægges følgende linjer i en fil kaldet playback.desktop i mappen /home/pi/.config/autostart/
kører playback.py ved Raspberry Pi's opstart
[Desktopindgang] |
Kodning = UTF-8 |
Type = Ansøgning |
Navn = Afspilning |
Kommentar = Dette er en afspilningsapplikation |
Exec = python /home/pi/playback.py |
StartupNotify = falsk |
Terminal = sandt |
Skjult = falsk |
se rawplayback.desktop hostet med ❤ af GitHub
Trin 7: Afslut note
Fortæl mig, hvad du synes om dette projekt i kommentarfeltet, lad mig vide om dine anbefalinger, og stem på mig i Raspberry Pi -konkurrencen, hvis du kunne lide det.
Glæder mig til at læse dig!
Anbefalede:
Raspberry Pi -æske med køleventilator med CPU -temperaturindikator: 10 trin (med billeder)
Raspberry Pi Box of Cooling FAN med CPU-temperaturindikator: Jeg havde introduceret hindbær pi (herefter RPI) CPU-temperaturindikator kredsløb i det forrige projekt. Kredsløbet viser simpelthen RPI 4 forskellige CPU-temperaturniveauer som følger.- Grøn LED tændt, når CPU -temperaturen er inden for 30 ~
Sådan gør du: Installation af Raspberry PI 4 Headless (VNC) med Rpi-imager og billeder: 7 trin (med billeder)
Sådan gør du: Installation af Raspberry PI 4 Headless (VNC) med Rpi-imager og billeder: Jeg planlægger at bruge denne Rapsberry PI i en masse sjove projekter tilbage i min blog. Tjek det gerne ud. Jeg ville tilbage til at bruge min Raspberry PI, men jeg havde ikke et tastatur eller en mus på min nye placering. Det var et stykke tid siden jeg konfigurerede en hindbær
Sådan adskilles en computer med nemme trin og billeder: 13 trin (med billeder)
Sådan adskilles en computer med nemme trin og billeder: Dette er en instruktion om, hvordan du adskiller en pc. De fleste af de grundlæggende komponenter er modulopbyggede og nemme at fjerne. Det er dog vigtigt, at du er organiseret omkring det. Dette hjælper med at forhindre dig i at miste dele og også ved at lave genmonteringen til
Ciclop 3d Scanner My Way Trin for trin: 16 trin (med billeder)
Ciclop 3d Scanner My Way Step by Step: Hej alle sammen, jeg kommer til at indse den berømte Ciclop 3D -scanner.Alle trin, der er godt forklaret på det originale projekt, er ikke til stede.Jeg lavede nogle rettelser for at forenkle processen, først Jeg udskriver basen, og end jeg genstarter printkortet, men fortsæt
Sådan styrer du husholdningsapparater med fjernsyn med fjernbetjening med timerfunktion: 7 trin (med billeder)
Sådan styrer du husholdningsapparater med fjernsyn med fjernbetjening med timerfunktion: Selv efter 25 års introduktion til forbrugermarkedet er infrarød kommunikation stadig meget relevant i de seneste dage. Uanset om det er dit 55 tommer 4K -fjernsyn eller dit billydsystem, har alt brug for en IR -fjernbetjening for at reagere på vores