Isi kandungan:
- Langkah 1: Bahan Diperlukan
- Langkah 2: Butang
- Langkah 3: Kes Butang
- Langkah 4: Pi Raspberry
- Langkah 5: Pengaturcaraan
- Langkah 6: Jalankan Skrip Python di Setiap Permulaan
- Langkah 7: Catatan Akhir
Video: Perakam Main Balik Dengan Raspberry Pi: 7 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:12
Hai semua, Dalam arahan ini saya menerangkan bagaimana saya membuat rakaman main balik menggunakan Raspberry Pi. Peranti ini adalah model Raspberry Pi B +, dengan 7 butang tekan di atas, pembesar suara disambungkan ke salah satu port usb Pi, dan mikrofon disambungkan ke port usb lain. Setiap butang dikaitkan dengan bunyi, sehingga dapat memainkan 7 suara yang berbeza. Bunyi dimainkan setelah menekan butang sebentar. Untuk merakam suara baru, tekan butang lebih dari 1 saat, rakam selepas bunyi bip, dan lepaskan butang di akhir rakaman. Ia tidak lebih mudah daripada itu!
Langkah 1: Bahan Diperlukan
Untuk projek ini, saya memerlukan:
- A Raspberry Pi model B + dan kad SD mikro - 29,95 $ + 9,95 $
- Sarung plastik Raspberry Pi - 7.95 $
- Pembesar suara USB - 12,50 $
- Mikrofon USB - $ 5,95
- Papan perma-proto separuh saiz - $ 4,50
- 7 butang tekan sesaat - $ 2.50
Saya juga memerlukan:
- Sebilangan wayar elektrik
- Tajuk wanita sudut kanan
- Sebilangan kayu, cat hitam dan gam untuk sarung kancing
- Besi solder dan pateri
Langkah 2: Butang
Butang yang digunakan cukup tinggi (6mm) sehingga dapat melewati ketebalan casing.
Saya meletakkan 7 butang saya di papan perma-proto, yang seperti papan roti, kecuali komponen disolder di atasnya. Ini lebih mantap daripada papan roti, dan lebih murah daripada mencetak pcb. Setiap butang menghubungkan tanah ke GPIO pada Raspberry Pi. Saya tidak mempunyai perintang di sini kerana Pi sudah mempunyai perintang tarik / turun dalaman yang akan ditetapkan dalam program ini. Dalam kes ini, saya telah menetapkannya untuk menarik (lihat program di bawah).
Butang diletakkan setiap 4 baris, atau setiap 0,4 inci.
Langkah 3: Kes Butang
Saya membuat casing yang sangat mudah untuk kancing, dengan kepingan papan lapis dan dowel persegi kayu. Ukuran dowel harus cukup besar untuk memuatkan dasar dan papan butang, tetapi cukup kecil untuk membiarkan butang keluar dari casing. Saya menggunakan dowel 1/4 in x 1/4.
Setelah memastikan papan pas di casing, dowel dilekatkan pada lembaran dasar. Lubang kemudian digerudi di lembaran atas (papan boleh digunakan untuk membuat tanda dengan tepat setiap 0.4 inci). Semua bahagian kayu dicat, papan diletakkan di dalam casing, dan kepingan atas dilekatkan di atasnya.
Langkah 4: Pi Raspberry
Saya tidak mahu memateri wayar terus ke Pi, sekiranya saya mahu menggunakan Pi untuk sesuatu yang lain pada masa akan datang. Oleh itu, saya menyisipkan wayar ke header wanita sudut kanan, dan memasang header pada Pi.
GPIO yang digunakan adalah 21, 26, 20, 19, 13, 6 dan 5. Pin ground juga digunakan.
Mikrofon dan pembesar suara hanya dipasang pada 2 dari 4 port usb.
Pi dikuasakan melalui outlet mikro-usb
Langkah 5: Pengaturcaraan
Untuk memprogram Pi, saya menyambungkannya ke internet menggunakan kabel ethernet, dan mengendalikannya dari komputer jauh menggunakan penampil VNC. Namun, anda tidak dapat menggunakan penyediaan ini pada kali pertama anda menyambung ke Pi, kerana OS belum dipasang dan SSH belum diaktifkan. Oleh itu, anda perlu menyambungkan skrin, papan kekunci dan tetikus, sekurang-kurangnya pertama kali.
Sangat sukar untuk mencari arahan untuk merakam dan memainkan suara pada kad suara yang betul. Ini adalah arahan yang berfungsi untuk saya:
-
aplay -D plughw: KAD = Peranti_1, DEV = 0 0.wav
Memainkan 0.wav
-
arecord 0.wav -D sys default: CARD = 1 -f cd -d 20
Rekod maksimum 20 saat dalam fail 0.wav, dengan kualiti cd
Fail suara terletak di direktori lalai (/ home / pi). Fail suara untuk bip juga diperlukan, diletakkan di direktori lalai dan dipanggil beep.wav.
Kod python itu sendiri adalah seperti berikut:
kod python untuk perakam main balik Raspberry Pi
import RPi. GPIO sebagai GPIO |
masa import |
import os |
#variabel: |
butPressed = [Benar, Benar, Benar, Benar, Benar, Benar, Benar] butang #jika saya ditekan, kemudian butTekan adalah Salah |
pin = [26, 19, 13, 6, 5, 21, 20] pin #GPIO setiap butang |
recordBool = Salah # Benar jika rakaman sedang dijalankan |
GPIO.setmode (GPIO. BCM) |
untuk i dalam jarak (0, 7): |
GPIO.setup (pin , GPIO. IN, pull_up_down = GPIO. PUD_UP) #setel perintang dalaman Pi untuk ditarik ke atas |
Walaupun Betul: |
untuk i dalam jarak (0, 7): |
butPressed = GPIO.input (pin ) # memeriksa apakah butang ditekan |
jika tetapi Ditekan == Salah: #jika butang ditekan |
sebelumnyaTime = time.time () |
sambil but Ditekan == Salah dan rekodBool == Salah: |
tetapi Ditekan = GPIO.input (pin ) |
jika time.time () - sebelumnyaTime> 1.0: #jika butang ditekan lebih dari satu saat, maka recordBool adalah Benar |
recordBool = Betul |
jika recordBool == Betul: #if recordBool adalah Benar, ia memainkan bunyi bip dan kemudian merakam |
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 untuk maksimum 20 saat dalam fail i.wav, dengan kualiti cd |
sambil but Ditekan == Salah: |
tetapi Ditekan = GPIO.input (pin ) |
os.system ("pkill -9 arecord") # rekod dihentikan apabila butang dilepaskan, atau setelah 20 saat |
recordBool = Salah |
lain: #if recordBool adalah Salah, ia memainkan suara i.wav |
os.system ("aplay -D plughw: CARD = Device_1, DEV = 0% d.wav"% i) |
masa. tidur (0.1) |
lihat perakam rawPlayback yang dihoskan dengan ❤ oleh GitHub
Langkah 6: Jalankan Skrip Python di Setiap Permulaan
Untuk menjalankan skrip python pada setiap permulaan Pi, baris berikut dimasukkan ke dalam fail bernama playback.desktop dalam folder /home/pi/.config/autostart/
menjalankan playback.py pada permulaan Raspberry Pi
[Entri Desktop] |
Pengekodan = UTF-8 |
Jenis = Aplikasi |
Nama = Main balik |
Komen = Ini adalah aplikasi main balik |
Exec = python /home/pi/playback.py |
StartupNotify = salah |
Terminal = benar |
Tersembunyi = palsu |
lihat rawplayback.desktop yang dihoskan dengan ❤ oleh GitHub
Langkah 7: Catatan Akhir
Tolong beritahu saya pendapat anda mengenai projek ini di bahagian komen, beritahu saya mengenai cadangan anda, dan pilih saya dalam peraduan Raspberry Pi jika anda menyukainya.
Tidak sabar untuk membaca anda!
Disyorkan:
Perakam Memori - Hadiah Krismas: 8 Langkah (dengan Gambar)
Pencatat Memori - Hadiah Krismas: Ciao a tutti! Dalam vista del Natale, tiba-tiba sahaja, sono sicuro quindi che molti di voi sentiranno la requità di donare qualcosa di speciale. Dalam questo periodo così difficile certamente sono mancate molte sesekali per
Perakam Kelajuan Angin dan Sinaran Suria: 3 Langkah (dengan Gambar)
Perekam Kelajuan Angin dan Sinaran Suria: Saya perlu merakam kelajuan angin dan kuasa sinaran suria (penyinaran) untuk menilai berapa banyak kuasa yang dapat diekstraksi dengan turbin angin dan / atau panel solar. Saya akan mengukur selama satu tahun, menganalisis data dan kemudian merancang sistem grid
Buat Bug Perisik Sendiri (Perakam Suara Arduino): 5 Langkah (dengan Gambar)
Buat Bug Perisik Sendiri (Perakam Suara Arduino): Dalam projek ini saya akan menunjukkan kepada anda bagaimana saya menggabungkan Arduino Pro Mini dengan beberapa komponen pelengkap untuk membuat perakam suara yang juga boleh disalahgunakan sebagai bug pengintip. Ia mempunyai jangka masa berjalan sekitar 9 jam, kecil dan sangat mudah untuk
Amalan Perakam Dengan Makey Makey: 7 Langkah (dengan Gambar)
Amalan Perekam Dengan Makey Makey: Pelajar Muzik kami harus melengkapkan lagu di perakam untuk mendapatkan tali pinggang (kepingan benang berwarna) sehingga mereka mencapai status Black Belt. Kadang-kadang mereka menghadapi masalah dengan penempatan jari dan " pendengaran " lagu menjadi hidup
Pembaca / penulis NFC ScanUp dan Perakam Audio untuk Orang Buta, Gangguan Penglihatan dan Semua Orang Lain: 4 Langkah (dengan Gambar)
Pembaca / penulis ScanUp NFC dan Perakam Audio untuk Orang Buta, Gangguan Penglihatan dan Semua Orang Lain: Saya belajar reka bentuk perindustrian dan projeknya adalah hasil kerja semester saya. Tujuannya adalah untuk menyokong orang yang cacat penglihatan dan buta dengan peranti, yang memungkinkan untuk merakam audio dalam format.WAV pada kad SD dan memanggil maklumat tersebut dengan tag NFC. Jadi dalam