Sommario:
- Passaggio 1: costruisci una scatola…
- Passaggio 2: collegare i pulsanti
- Passaggio 3: Facoltativo: realizzare una scheda con resistori pull up e pull down
- Passaggio 4: il codice Python
- Passaggio 5: configurazione del tuo Rapsi
Video: Un Juke Box per Giovanissimi Aka Raspi-Music-Box: 5 Passi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:02
Ispirato dall'istruttivo "Raspberry-Pi-based-RFID-Music-Robot" che descrive un lettore musicale ROALDH costruito per il suo bambino di 3 anni, ho deciso di costruire un juke box per i miei bambini ancora più piccoli. È fondamentalmente una scatola con 16 pulsanti e un Raspi 2 all'interno che riproduce brani tramite lo stereo collegato ogni volta che viene premuto uno qualsiasi dei pulsanti.
Quello di cui hai bisogno:
- Un Raspberry Pi con alimentatore
- 16 pulsanti - del tipo che si chiudono temporaneamente quando vengono premuti (o tutti i pulsanti che desideri - consiglio: non più di quanti pin di input hai…;)) Ho usato questo: pulsante per € 0,50)
- un filo sottile
- un resistore da 10kOhm e uno da 1kOhm per pulsante (a meno che non si voglia fare affidamento sui resistori pull-up/down interni del Raspi, è possibile saltare questo)
- stripboard
- connettore femmina (2x20 pin)
- del legno sottile per costruire la scatola (ho usato 2 fogli 5x400x400mm per il fronte e il retro più una striscia 2000x50x5mm per tagliare i lati)
- 24 viti e un po' di colla per assemblare la scatola
- un po' di vernice per renderlo colorato
- cavo audio per collegare il Raspi al tuo stereo o altoparlanti attivi (jack a quello che ti serve dall'altra parte)
- strumenti: un saldatore, tagliafili, spelafili idealmente, sega, trapano, cacciavite, pennello…
- opzionale: scheda audio USB se vuoi che la musica suoni bene
- opzionale: scheda wifi se vuoi connetterti ad un vecchio Raspi senza aprire la scatola
Si prega di notare che questo è il mio primo istruttore e ho fatto questo progetto un po' di tempo fa… Lo sto facendo mentre continuo a chiedermi del modo VLC di riprodurre le canzoni nella sezione commenti dell'istruibile sopra menzionato (l'mplayer usato lì non è più supportato per quanto ne so). So che queste istruzioni non sono molto buone, ma spero che tu possa seguirle… in caso contrario, per favore guarda anche le istruzioni originali e per favore lascia commenti qui sotto dicendomi dove ti sei bloccato… allora cercherò di migliorare…
Passaggio 1: costruisci una scatola…
Quindi la prima cosa che devi fare è costruire una scatola… Ho fatto la mia abbastanza grande perché ho lasciato dello spazio sotto ogni pulsante per un'etichetta… Avevo pianificato di stampare alcune foto per ogni canzone, laminarle magari e taggarle in blu sotto il bottoni… lezione imparata: quando stampi le etichette, i tuoi figli conoscono bene tutte le canzoni e ti chiedono di cambiarne alcune… Quindi la prossima volta costruirò una scatola più piccola e avvicinerò i bottoni…
Quindi, tornando alla mia scatola… ho comprato due fogli di compensato 400 x 400 x 5 mm e una striscia 2000 x 50 x 5 mm… poi il primo, più importante passo: mia figlia ha potuto dipingere il pannello frontale a sua scelta colori…:) Mentre dipingeva ho tagliato la punta lunga in 5 strisce - due lunghe 400 mm, due lunghe 390 mm e gli avanzi…;) queste le ho incollate sul retro del foglio appena dipinto… poi ho praticato 12 fori dall'esterno e ho avvitato 12 viti… Ho poi allineato con cura l'altro foglio sul retro, ho praticato altri 12 fori per altre 12 viti per chiudere la scatola una volta finito. (So che 12 viti potrebbero essere un po' eccessive, ma i bambini sono forti…:))
Da un lato ho usato una lima (potresti usare un dremel per velocizzare le cose) per tagliare un po' di legno per passare attraverso i cavi. Ho quindi praticato anche i fori per i 16 pulsanti e li ho installati.
Passaggio 2: collegare i pulsanti
Quindi ora hai una scatola con 16 pulsanti … poi devi collegarli … Ho collegato uno dei loro poli a terra in un modo a margherita. Idealmente avrai piccoli connettori per farlo… Li ho saldati, il che è stato un grosso incubo e causerà ancora più problemi se dovessi mai togliere uno qualsiasi dei pulsanti. Poi ho attaccato gli altri loro poli a un filo rosso ciascuno… Questi li ho poi saldati alla scheda del connettore che puoi vedere che giace nel mezzo…
Quale pulsante a quale pin? Pulsante 1-16 in questo ordine: GPIO 18. 27, 17, 04, 23, 24, 22, 05, 16, 12, 06, 13, 21, 20, 19, 26. Si prega di controllare anche gli eventi di pressione del pulsante di cattura sezione nel codice successivo.
(Per favore non chiedetemi a cosa servivano i fili arrotolati… non ricordo)
Passaggio 3: Facoltativo: realizzare una scheda con resistori pull up e pull down
Se non sei sicuro di cosa siano i resistori di pull up e pull down, dovresti trovare facilmente un sacco di informazioni online. Il raspi ne ha alcuni incorporati o puoi farne di esterni come ho fatto qui. Questo passaggio è facoltativo in quanto non credo che tu ne abbia davvero bisogno.
Allora perché l'ho fatto? A volte la musica iniziava a suonare quando accendevo/spegnevo gli elettrodomestici nell'appartamento. All'inizio ho pensato che stesse captando onde elettromagnetiche o qualcosa del genere. Quindi ho aggiunto i resistori di pull-up/down… Poiché ciò non ha migliorato la situazione, ho aggiunto alcuni condensatori in più. Questo ancora non ha aiutato … la prossima cosa che volevo provare era coprire l'interno della scatola con un foglio di alluminio come schermatura. Dato che il problema si è fermato quando abbiamo cambiato casa, non ho mai finito per provare questo … Quindi qual era il problema? Non so… possono essere state variazioni sulla linea elettrica?
Conclusione: ti consiglierei di collegare prima i pulsanti direttamente (vedrai nel codice in seguito quale pulsante va su quale pin) e fai questo passaggio solo se hai qualche problema. Spero che tu possa vedere dalle immagini sopra come ho fatto questo. Fondamentalmente c'è una barra da mettere sulla testata nel mezzo e poi su ogni lato ho collegato le due resistenze e i cavi dei pulsanti in una fila.
Passaggio 4: il codice Python
In allegato qui troverete il codice (in python) che gestisce il carillon. Ho aggiunto alcuni commenti, quindi spero che sia autoesplicativo. Per ogni evenienza, ecco una rapida spiegazione. È meglio iniziare a leggere la sezione delle variabili in alto e poi saltare fino in fondo.
In fondo troverai un ciclo, che viene eseguito tutto il tempo. Prima controlla se è stata premuta una determinata sequenza di pulsanti: questo era il mio modo di utilizzare il controllo genitori. Poi ci sono le funzioni che riproducono la musica.
Sopra il ciclo principale troverai alcuni rilevamenti di eventi: questi vengono eseguiti se viene premuto uno dei pulsanti. Ogni pulsante chiama la funzione ButtonPress passando un identificatore.
Quindi, come farlo riprodurre la musica? Per semplificare, ho appena generato una cartella per ogni pulsante. Qualunque mp3 metti in queste cartelle, la funzione si aggiunge alla playlist.
Tieni presente che se non hai utilizzato resistori di pull up fisici, dovrai modificare la sezione con la numerazione BCM in questo modo:
# setup using BCM numberingGPIO.setmode(GPIO. BCM) GPIO.setup(04, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup(17, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup(27, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup(22, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup(05, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup(06, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup(13, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup(19, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup(26, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup(18, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup(23, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup(24, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup(12, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup(16, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup(20, GPIO. IN, pull_up_down = GPIO. PUD_UP) GPIO.setup(21, GPIO. IN, pull_up_down = GPIO. PUD_UP)
Passaggio 5: configurazione del tuo Rapsi
Dovrai anche configurare il raspi ovviamente… Ho appena usato l'installazione standard di Noop. Sono sicuro che troverai un sacco di istruzioni su come farlo…
Per usare python dovrai "sudo apt-get install python-dev"
Il mio programma utilizza VLC per riprodurre la musica:
- Ho ottenuto la connessione Python da qui (spero che sia ancora aggiornato):
- Quindi l'ho installato usando "sudo python setup.py install"
- Quindi installato VLC "sudo apt-get install vlc"
- Inserisci i file vlc.py e vlc.pyc nella stessa directory del tuo programma
- Maggiori informazioni su
Le mie note dicono che devi anche installare quanto segue per accedere ai pin GPIO da Python (ma questo potrebbe non essere aggiornato):
- wget https://www.airspayce.com/mikem/bcm2835/bcm2835-1…. zxvf bcm2835-1.xx.tar.gz
- cd bcm2835-1.xx
- ./configurare
- fare
- sudo fare il controllo
- sudo make install
Per far funzionare il tuo programma, dovrai chiamare "sudo python tuonomefile.py".
Consigliato:
Orologio per l'allenamento del sonno per bambini: 6 passi (con immagini)
Orologio per l'allenamento del sonno dei bambini: avevo bisogno di un orologio per aiutare i miei gemelli di 4 anni a imparare a dormire un po' più a lungo (ne ho abbastanza di dovermi svegliare alle 5:30 del mattino il sabato), ma non possono leggi l'ora ancora. Dopo aver sfogliato alcuni articoli su uno shopping molto popolare
Tavolino da caffè Arcade per due giocatori RasPi: 7 passaggi (con immagini)
Tavolino da caffè Arcade per due giocatori RasPi: ecco la mia versione del tavolino da caffè arcade Raspberry Pi. Ho avuto l'idea da altri fantastici istruttori qui e volevo condividere la mia esperienza con la build. Il tavolo può giocare a giochi di più epoche di videogiochi tra cui NES, SNES, Sega, Play
Interblocco meteorologico per il riscaldamento domestico - IoT RasPi Zero ed ESP12: 5 passaggi
Interblocco meteorologico per il riscaldamento domestico - IoT RasPi Zero ed ESP12: StoryDa notare, questo progetto si basa sul fatto che tu abbia un RaspberryPi Zero che esegue un server di automazione domestica Domoticz (facilmente realizzato) con node-red ed è configurato come broker MQTT. Perché scrivere questa vetrina? Per mostrare la mia soluzione su come ho salvato alcuni
Riser per laptop per meno di 1 € in 5 Minuti: 5 Passi
Riser per laptop per meno di 1 € in 5 minuti: ho provato alcune soluzioni per alzare il mio netbook per un migliore raffreddamento, ma erano troppo grandi o troppo costose. Così ho pensato a questo: il rialzo facile ed economico
IL MODO PI SEMPLICE PER FARE UNA LUCE COMPATTA!! 3 SEMPLICI PASSI!!: 3 Passi
IL MODO PI SEMPLICE PER FARE UNA LUCE COMPATTA!! 3 SEMPLICI PASSI!!: Cosa ti servirà - foglio di stagnola 1 batteria AA (alcune batterie AAA funzioneranno) 1 mini lampadina (lampadine utilizzate per la maggior parte delle torce elettriche; fare riferimento all'immagine) Righello (se necessario)