Spisu treści:
- Autor John Day [email protected].
 - Public 2024-01-30 11:32.
 - Ostatnio zmodyfikowany 2025-01-23 15:03.
 
  
  
  
  
  Cześć wszystkim, W tej instrukcji wyjaśniam, jak zrobiłem rejestrator odtwarzania za pomocą Raspberry Pi. Urządzenie to Raspberry Pi model B+, z 7 przyciskami na górze, głośnikiem podłączonym do jednego z portów USB Pi oraz mikrofonem podłączonym do innego portu USB. Każdy przycisk jest powiązany z dźwiękiem, więc może odtwarzać 7 różnych dźwięków. Dźwięki są odtwarzane po krótkim naciśnięciu przycisku. Aby nagrać nowy dźwięk, po prostu naciśnij przycisk dłużej niż 1 sekundę, nagraj po sygnale i puść przycisk na końcu nagrania. To nie może być prostsze!
Krok 1: Potrzebny materiał
  
  Do tego projektu potrzebowałem:
- Raspberry Pi model B+ i karta micro SD - 29,95 $ + 9,95 $
 - Plastikowa obudowa Raspberry Pi - 7,95 $
 - Głośniki USB - 12,50 $
 - Mikrofon USB - 5,95 $
 - Półwymiarowa płyta perma-proto - 4,50 $
 - 7 chwilowych przycisków - 2,50 $
 
Potrzebowałem również:
- Niektóre przewody elektryczne
 - Nagłówki żeńskie pod kątem prostym
 - Trochę drewna, czarnej farby i kleju do etui na guziki
 - Lutownica i lut
 
Krok 2: Przyciski
  
  
  Zastosowane przyciski są dość wysokie (6mm), dzięki czemu przechodzą przez grubość obudowy.
Umieściłem moje 7 przycisków na płytce perma-proto, która jest jak płytka stykowa, z wyjątkiem tego, że są na niej przylutowane elementy. Jest to bardziej wytrzymałe niż płytka prototypowa i tańsze niż drukowanie na płytce drukowanej. Każdy przycisk łączy uziemienie z GPIO na Raspberry Pi. Nie mam tutaj rezystorów, ponieważ Pi ma już wewnętrzne rezystory pull-up/down, które zostaną ustawione w programie. W tym przypadku ustawiłem je na podciąganie (patrz program poniżej).
Przyciski są umieszczone co 4 rzędy lub co 0,4 cala.
Krok 3: Sprawa przycisków
  
  
  Zrobiłem bardzo proste etui na guziki, ze sklejki i drewnianego kwadratowego kołka. Rozmiar kołka musi być wystarczająco duży, aby pomieścić podstawę przycisku i płytkę, ale na tyle mały, aby górna część przycisku wyszła z obudowy. Użyłem kołka 1/4 cala x 1/4 cala.
Po upewnieniu się, że deska pasuje do obudowy, kołki są przyklejane do arkusza bazowego. Następnie w górnej blasze wierci się otwory (płyta może być wykorzystana do wykonania precyzyjnych oznaczeń co 0,4 cala). Wszystkie elementy drewniane są pomalowane, płyta umieszczona w etui, a górna blacha naklejona na nią.
Krok 4: Raspberry Pi
  
  
  Nie chciałem lutować przewodów bezpośrednio do Pi, na wypadek gdybym chciał użyć Pi do czegoś innego w przyszłości. Dlatego przylutowałem przewody do żeńskich nagłówków pod kątem prostym i podłączyłem nagłówki do Pi.
Używane GPIO to 21, 26, 20, 19, 13, 6 i 5. Używany jest również pin uziemiający.
Mikrofon i głośnik są po prostu podłączane do 2 z 4 portów USB.
Pi jest zasilany przez gniazdo micro-usb
Krok 5: Programowanie
Aby zaprogramować Pi, podłączyłem go do Internetu za pomocą kabla Ethernet i sterowałem nim ze zdalnego komputera za pomocą przeglądarki VNC. Nie możesz jednak użyć tej konfiguracji przy pierwszym połączeniu z Pi, ponieważ system operacyjny nie jest jeszcze zainstalowany, a SSH nie jest w stanie. Musisz więc podłączyć ekran, klawiaturę i mysz, przynajmniej za pierwszym razem.
Znalezienie poleceń do nagrywania i odtwarzania dźwięku na odpowiedniej karcie dźwiękowej było dość kłopotliwe. Oto polecenia, które dla mnie zadziałały:
- 
aplay -D plughw:CARD=Device_1, DEV=0 0.wav
Odtwarza 0.wav
 - 
arecord 0.wav -D sysdefault:CARD=1 -f cd -d 20
Nagrywa maksymalnie 20 sekund w pliku 0.wav, z jakością cd
 
Pliki dźwiękowe znajdują się w domyślnym katalogu (/home/pi). Niezbędny jest również plik dźwiękowy dla sygnału dźwiękowego, umieszczony w domyślnym katalogu i nazwany beep.wav.
Sam kod Pythona wygląda następująco:
kod Pythona dla rejestratora odtwarzania Raspberry Pi
| importuj RPi. GPIO jako GPIO | 
| czas importu | 
| importuj system | 
| #zmienne: | 
| butPressed = [Prawda, Prawda, Prawda, Prawda, Prawda, Prawda, Prawda]#jeśli przycisk i zostanie naciśnięty, wtedy butPressed jest fałszywe | 
| pin = [26, 19, 13, 6, 5, 21, 20]#piny GPIO każdego przycisku | 
| recordBool = False#True jeśli rekord jest w toku | 
| GPIO.setmode(GPIO. BCM) | 
| dla i w zakresie (0, 7): | 
| GPIO.setup(pin, GPIO. IN, pull_up_down=GPIO. PUD_UP)#ustawia wewnętrzne rezystory Pi na podciąganie | 
| podczas gdy prawda: | 
| dla i w zakresie (0, 7): | 
| butPressed = GPIO.input(pin)#sprawdza, czy przycisk jest wciśnięty | 
| if butPressed == False:#jeśli przycisk został naciśnięty | 
| poprzedniCzas = czas.czas() | 
| while butPressed == False i recordBool == False: | 
| aleNaciśnięty = GPIO.input(pin) | 
| if time.time() - previousTime > 1.0:#jeśli przycisk jest wciśnięty dłużej niż sekundę, wtedy recordBool ma wartość True | 
| recordBool = Prawda | 
| if recordBool == True:#jeśli recordBool ma wartość True, odtwarza sygnał dźwiękowy, a następnie nagrywa | 
| 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 przez maksymalnie 20 sekund w pliku i.wav, z jakością cd | 
| while aNaciśnięty == Fałsz: | 
| aleNaciśnięty = GPIO.input(pin) | 
| os.system("pkill -9 arecord")#zapis zostaje zatrzymany po zwolnieniu przycisku lub po 20 sekundach | 
| recordBool = Fałsz | 
| else:#jeśli recordBool jest False, odtwarza dźwięk i.wav | 
| os.system("aplay -D plughw:CARD=Urządzenie_1, DEV=0 %d.wav" %i) | 
| czas.sen(0.1) | 
zobacz rejestrator rawPlayback hostowany z ❤ przez GitHub
Krok 6: Uruchom skrypt Pythona przy każdym uruchomieniu
Aby uruchomić skrypt Pythona podczas uruchamiania każdego Pi, następujące wiersze są umieszczane w pliku o nazwie playback.desktop w folderze /home/pi/.config/autostart/
uruchamia playback.py przy starcie Raspberry Pi
| [Wpis na pulpicie] | 
| Kodowanie=UTF-8 | 
| Typ=Aplikacja | 
| Nazwa=Odtwarzanie | 
| Comment=To jest aplikacja do odtwarzania | 
| Exec= python /home/pi/playback.py | 
| StartupNotify=false | 
| Terminal=prawda | 
| Ukryty=fałsz | 
zobacz rawplayback.desktop hostowany z ❤ przez GitHub
Krok 7: Notatka końcowa
Proszę powiedz mi, co myślisz o tym projekcie w sekcji komentarzy, daj znać o swoich rekomendacjach i zagłosuj na mnie w konkursie Raspberry Pi, jeśli Ci się spodobał.
Czekamy na czytanie!
Zalecana:
Nastrojowy głośnik - potężny głośnik do odtwarzania nastrojowej muzyki w oparciu o temperaturę otoczenia: 9 kroków
Nastrojowy głośnik - potężny głośnik do odtwarzania nastrojowej muzyki w oparciu o temperaturę otoczenia: witaj! Na potrzeby mojego szkolnego projektu w MCT Howest Kortrijk stworzyłem nastrojowy głośnik, który jest inteligentnym głośnikiem Bluetooth z różnymi czujnikami, wyświetlaczem LCD i WS2812b w zestawie pasek led.Głośnik odtwarza muzykę w tle w zależności od temperatury, ale może
Używanie samochodowego zestawu stereo do odtwarzania plików MP3 na starszym domowym zestawie stereo: 7 kroków
Używanie samochodowego zestawu stereo do odtwarzania plików MP3 na starszym domowym zestawie stereo: Odtwarzanie plików MP3 na domowym zestawie stereo W ciągu ostatnich dwóch dekad pobrałem lub zgrałem około 5000 klasycznych utworów rockowych i potrzebowałem prostego sposobu na odtwarzanie cyfrowych plików muzycznych na starszym domowym zestawie stereo. Mam podłączony komputer kina domowego (HTC)
Albumy z tagami NFC do automatycznego odtwarzania muzyki Spotify na Chromecaście: 5 kroków
Albumy z tagami NFC do automatycznego odtwarzania muzyki Spotify na Chromecaście: Ten projekt rozpoczął się od pomysłu stworzenia kolażu albumów moich najczęściej odtwarzanych artystów na Spotify. Po kilku grach z API Spotify w Pythonie pomyślałem, że byłoby miło połączyć te okładki albumów z ich identyfikatorami URI Spotify i zacząć odtwarzać
Rejestrator GPS Raspberry Pi: 10 kroków (ze zdjęciami)
Rejestrator GPS Raspberry Pi: Ta instrukcja wyjaśnia, jak zbudować kompaktowy rejestrator GPS z raspberry pi zero. Główną zaletą tego systemu jest to, że zawiera baterię, dzięki czemu jest bardzo kompaktowy. Urządzenie przechowuje dane w pliku a.nmea. Następujące dane ok
Przycisk odtwarzania YouTube 100 subskrybentów!: 8 kroków
Przycisk odtwarzania 100 subskrybentów na Youtube!: Jak mówi tytuł, ponieważ mój kanał YouTube przekroczył 100 subskrybentów, nadszedł czas na świętowanie, więc postanowiłem zbudować własny przycisk odtwarzania 100 subskrybentów! Więc bez dalszej zwłoki Zacznijmy
