Satura rādītājs:

Atskaņošanas ierakstītājs ar Raspberry Pi: 7 soļi (ar attēliem)
Atskaņošanas ierakstītājs ar Raspberry Pi: 7 soļi (ar attēliem)

Video: Atskaņošanas ierakstītājs ar Raspberry Pi: 7 soļi (ar attēliem)

Video: Atskaņošanas ierakstītājs ar Raspberry Pi: 7 soļi (ar attēliem)
Video: BTT - Manta E3EZ - CB1 with EMMc install 2024, Novembris
Anonim
Image
Image
Nepieciešamais materiāls
Nepieciešamais materiāls

Sveiki visiem, Šajā pamācībā es paskaidroju, kā es izveidoju atskaņošanas ierakstītāju, izmantojot Raspberry Pi. Ierīce ir Raspberry Pi modelis B+ar 7 spiedpogām augšpusē, skaļruni, kas savienots ar vienu no Pi USB portiem, un mikrofonu, kas savienots ar citiem USB portiem. Katra poga ir saistīta ar skaņu, tāpēc tā var atskaņot 7 dažādas skaņas. Skaņas tiek atskaņotas pēc īsas pogas nospiešanas. Lai ierakstītu jaunu skaņu, vienkārši nospiediet pogu ilgāk par 1 sekundi, ierakstiet pēc pīkstiena un atlaidiet pogu ieraksta beigās. Tas nekļūst vienkāršāks par to!

1. darbība. Nepieciešamais materiāls

Nepieciešamais materiāls
Nepieciešamais materiāls
Nepieciešamais materiāls
Nepieciešamais materiāls

Šim projektam man bija nepieciešams:

  • A Raspberry Pi modelis B + un micro SD karte - 29,95 $ + 9,95 $
  • Raspberry Pi plastmasas korpuss - 7,95 USD
  • USB skaļruņi - 12,50 USD
  • USB mikrofons - 5,95 USD
  • Pusizmēra perma-proto dēlis-4,50 USD
  • 7 īslaicīgas spiedpogas - 2,50 USD

Man arī vajadzēja:

  • Daži elektriskie vadi
  • Taisna leņķa sieviešu galvenes
  • Dažas koka, melnas krāsas un līmes pogām
  • Lodāmurs un lodētava

2. solis: pogas

Pogas
Pogas
Pogas
Pogas
Pogas
Pogas

Izmantotās pogas ir diezgan garas (6 mm), lai tās varētu iziet cauri korpusa biezumam.

Es novietoju savas 7 pogas uz perma-proto tāfeles, kas ir kā maizes dēlis, izņemot komponentus, kas uz tā ir pielodēti. Tas ir izturīgāks par maizes dēli un lētāks nekā PCB drukāšana. Katra poga ir saistīta ar GPIO Raspberry Pi. Man šeit nav rezistoru, jo Pi jau ir iekšējie pull-up/down rezistori, kas tiks iestatīti programmā. Šajā gadījumā esmu iestatījis tos uz augšu (skatiet programmu zemāk).

Pogas tiek novietotas ik pēc 4 rindām vai ik pēc 0,4 collas.

3. solis: pogu poga

Pogas futrālis
Pogas futrālis
Pogas futrālis
Pogas futrālis
Pogas futrālis
Pogas futrālis

Pogām es izveidoju ļoti vienkāršu futrāli ar saplākšņa loksnēm un koka kvadrātveida dībeli. Dībeļa izmēram jābūt pietiekami lielam, lai tajā būtu pogas pamatne un tāfele, bet pietiekami mazam, lai pogu varētu izņemt no korpusa. Es izmantoju 1/4 x 1/4 dībeli.

Pēc tam, kad esat pārliecinājies, ka dēlis atbilst korpusam, tapas tiek pielīmētas pie pamatnes loksnes. Pēc tam uz augšējās loksnes tiek urbti caurumi (dēli var izmantot, lai precīzi atzīmētu ik pēc 0,4 collām). Visas koka detaļas ir nokrāsotas, dēlis ievietots korpusā, un augšējā lapa ir pielīmēta virs tā.

4. solis: Raspberry Pi

Aveņu Pi
Aveņu Pi
Aveņu Pi
Aveņu Pi
Aveņu Pi
Aveņu Pi

Es negribēju lodēt vadus tieši pie Pi, ja nākotnē vēlos izmantot Pi kaut kam citam. Tāpēc es lodēju vadus taisnleņķa sieviešu galvenēm un pievienoju Pi galvenes.

Izmantotie GPIO ir 21, 26, 20, 19, 13, 6 un 5. Tiek izmantota arī zemējuma tapa.

Mikrofons un skaļrunis ir vienkārši pievienoti 2 no 4 USB portiem.

Pi tiek barots caur mikro-usb kontaktligzdu

5. solis: programmēšana

Lai programmētu Pi, es to savienoju ar internetu, izmantojot Ethernet kabeli, un vadīju to no attālā datora, izmantojot VNC skatītāju. Tomēr jūs nevarat izmantot šo iestatījumu, pirmo reizi izveidojot savienojumu ar Pi, jo OS vēl nav instalēta un SSH nav atspējots. Tātad jums vismaz pirmo reizi būs jāpievieno ekrāns, tastatūra un pele.

Bija diezgan apgrūtinoši atrast komandas ierakstīt un atskaņot skaņu labajā skaņas kartē. Šīs ir man noderējušās komandas:

  • aplay -D ploww: CARD = Device_1, DEV = 0 0.wav

    Spēlē 0.wav

  • arecord 0.wav -D sysdefault: CARD = 1 -f cd -d 20

    Maksimāli 20 sekundes ieraksta failā 0.wav ar cd kvalitāti

Skaņas faili atrodas noklusējuma direktorijā (/home/pi). Nepieciešams arī skaņas signāls pīkstienam, ievietots noklusējuma direktorijā un saucas beep.wav.

Python kods ir šāds:

python kods Raspberry Pi atskaņošanas ierakstītājam

importēt RPi. GPIO kā GPIO
importa laiks
importēt OS
#variables:
butPressed = [True, True, True, True, True, True, True]#ja tiek nospiesta poga i, tad nospiests ir nepatiess
pin = [26, 19, 13, 6, 5, 21, 20] #GPIO piespraudes katrai pogai
recordBool = False#Patiesa, ja tiek veikts ieraksts
GPIO.setmode (GPIO. BCM)
i diapazonā (0, 7):
GPIO.setup (pin , GPIO. IN, pull_up_down = GPIO. PUD_UP) #iestata Pi iekšējos rezistorus uz leju
kamēr taisnība:
i diapazonā (0, 7):
butPressed = GPIO.input (pin )#pārbauda, vai nav nospiesta poga
ja nospiests == Nepareizi: #ja poga ir nospiesta
previousTime = time.time ()
kamēr nospiests == False and recordBool == False:
butPressed = GPIO.input (pin )
if time.time () - previousTime> 1.0:#ja poga tiek nospiesta ilgāk par sekundi, tad recordBool is True
recordBool = Patiess
ja recordBool == True:#if recordBool ir True, tas atskaņo pīkstienu un pēc tam ieraksta
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) #ieraksti ne vairāk kā 20 sekundes failā i.wav, ar cd kvalitāti
kamēr nospiests == Nepareizi:
butPressed = GPIO.input (pin )
os.system ("pkill -9 arecord")#ieraksts tiek apturēts, kad poga tiek palaista vai pēc 20 sekundēm
recordBool = Nepareizi
cits:#if recordBool ir False, tas atskaņo skaņu i.wav
os.system ("aplay -D plughw: CARD = Device_1, DEV = 0 %d.wav" %i)
miega laiks (0,1)

apskatīt rawPlayback ierakstītāju, ko mitina GitHub ar ❤

6. darbība: palaidiet Python skriptu katrā startēšanas reizē

Lai palaistu python skriptu katrā Pi startēšanas reizē, šādas rindiņas tiek ievietotas failā ar nosaukumu playback.desktop mapē /home/pi/.config/autostart/

palaiž playback.py Raspberry Pi startēšanas laikā

[Darbvirsmas ieraksts]
Kodējums = UTF-8
Tips = lietojumprogramma
Nosaukums = Atskaņošana
Komentārs = Šī ir atskaņošanas programma
Exec = python /home/pi/playback.py
StartupNotify = nepatiess
Terminālis = taisnība
Slēpts = nepatiess

skatiet rawplayback.desktop, kuru mitina GitHub ar ❤

7. solis: beigu piezīme

Lūdzu, pastāstiet man, ko jūs domājat par šo projektu komentāru sadaļā, dariet man zināmus savus ieteikumus un balsojiet par mani Raspberry Pi konkursā, ja jums tas patika.

Gaidām jūs lasīt!

Ieteicams: