Sommario:

Spettacolo di luci dell'albero di Natale Raspberry Pi: 15 passaggi (con immagini)
Spettacolo di luci dell'albero di Natale Raspberry Pi: 15 passaggi (con immagini)

Video: Spettacolo di luci dell'albero di Natale Raspberry Pi: 15 passaggi (con immagini)

Video: Spettacolo di luci dell'albero di Natale Raspberry Pi: 15 passaggi (con immagini)
Video: Ucraino continua a divertirsi in spiaggia nonostante le bombe russe a Berdyansk 2024, Dicembre
Anonim
Image
Image

Aggiornamento: ho pubblicato un'evoluzione aggiornata di questo albero per il 2017 su questo

Questo progetto prevede l'utilizzo di un Raspberry Pi per pilotare 8 prese CA collegate ai set di luci dell'albero di Natale. Le luci AC sono semplici fili di luci a un colore, ma per dare una gamma più dinamica allo spettacolo di luci c'è anche una stella a 25 LED RGB programmabile. Uno dei vantaggi dell'utilizzo del Raspberry Pi invece di un controller Arduino è che posso far uscire l'audio dal Raspberry Pi per avere le luci a tempo con la musica (per non parlare del vantaggio di avere una connessione WiFi per lavorare sul software in remoto).

Passaggio 1: materiali

Materiali
Materiali

Tieni presente che i materiali di seguito sono quelli che ho usato per questo progetto. In molti casi possono essere utilizzate parti/soluzioni alternative.

Ecco i materiali che ho utilizzato per questo progetto:

Per il controllore:

  1. Raspberry Pi (il modello B è quello che ho usato)

    • Scheda SD
    • Adattatore Wi-Fi USB
  2. Scheda modulo SSR a 8 canali 5V SainSmart - Amazon

    Ho evitato i relè meccanici poiché il suono del clic dell'interruttore sarà notevolmente udibile, e siamo andati noi SSR. Questa scheda è classificata fino a 2 AMP per SSR, il che è sufficiente per alimentare una serie di luci natalizie

  3. Cavi per ponticelli - Si possono trovare a buon mercato su Ebay
  4. JST SM Spina + Prese - Adafruit
  5. Rotolo di filo da 32 piedi (o quattro pezzi di filo da 8 piedi)
  6. Cavo di prolunga x 8
  7. Blocco di distribuzione dell'energia x 2 - AdaFruit
  8. Ciabatta
  9. Riserve energetiche

    • 5 Volt, 3 Ampere o superiore per pilotare LED e Pi
    • 5 Volt, 1 Amp o superiore per pilotare il modulo SSR
  10. Allegato
  11. Altoparlanti

Per la stella:

  1. LED RGB da 12 mm (filo di 25) - Il chip AdafruitWS2801 in questo prodotto consente al Pi di dover solo pulsare il filo una volta anziché pulsare continuamente la linea per mantenere i LED illuminati.
  2. Foglio di plastica ABS per tenere i LED in posizione - Walmart
  3. Lastra Lexan per diffondere LED - Lowes
  4. Vernice spray nera
  5. Vernice spray bianca
  6. Legna

Per l'albero:

  1. Bianco 100 fili chiari x 4
  2. Bianco 50 fili chiari
  3. Rosso 100 fili chiari x 2
  4. Verde 100 filo chiaro x 2
  5. Blu 100 fili chiari x 2

Passaggio 2: configura il Raspberry Pi

Prima di immergermi nel cablaggio, volevo prima far funzionare il Pi per testare i componenti mentre erano collegati. Questa configurazione è stata eseguita prima dell'installazione del contenitore e prevede il collegamento del Raspberry Pi tramite alimentazione USB a un monitor e una tastiera. L'obiettivo è configurare il sistema in modo che lo sviluppo possa continuare sul Pi nel contenitore.

L'installazione Pi predefinita non ha le librerie necessarie per pilotare correttamente i LED WS2801 nella stella, quindi ho installato il sistema operativo Occidentalis di AdaFruit sul Pi.

Dopo l'installazione di Occidnetalis è stata necessaria una piccola configurazione extra:

1) Configurare il Pi per l'avvio da un prompt dei comandi (non dall'interfaccia GUI)

2) Configurare l'interfaccia di rete wireless sul Pi modificando /etc/network/interfaces. Assicurati di scegliere un indirizzo IP statico in modo da poter accedere a un indirizzo noto per lavorare sul Pi

3) Installare i servizi Telnet e FTP.

4) Installa Pygame. La libreria è utilizzata negli script Python per la riproduzione di file MP3/WAV

Le istruzioni dettagliate per l'installazione/configurazione possono essere trovate facilmente tramite ricerche su Internet. Esistono molte risorse sul Pi online.

Dopo questo punto posso disconnettere qualsiasi uscita video e tastiera perché il Pi può essere a cui puoi accedere da remoto.

Passaggio 3: iniziare a configurare l'involucro

Inizia a configurare la custodia
Inizia a configurare la custodia

Non entrerò in molti dettagli su come costruire il recinto in quanto è solo una scatola di legno. Ho forato delle prese da 1,5 di diametro alle estremità della custodia. A destra c'è il foro in cui fuoriescono tutte le prolunghe e il cavo a stella e a sinistra c'è il foro in cui passano la ciabatta e l'uscita audio.

I primi componenti da montare sono la ciabatta e il Raspberry Pi. Per alimentare il Pi sto usando lo stesso trasformatore da 5 V per alimentare la stella e il Pi (mostrato in verde). Per questo motivo ho l'alimentazione che va a una morsettiera (evidenziata in bianco) dove il 5V si biforca al cablaggio a stella e al Pi

Pin 2 = 5V

Pin 6 = Terra

Una volta connesso, accendi l'alimentazione e il Pi dovrebbe avviarsi ed essere accessibile tramite Telnet come configurato nel passaggio precedente.

Passaggio 4: collegamento del Raspberry Pi al modulo relè

Collegamento del Raspberry Pi al modulo relè
Collegamento del Raspberry Pi al modulo relè

Con tutti i Power Off (Alimentatori e Pi), collegare i 5 Volt ai due connettori inferiori della fonte di alimentazione esterna. L'ho guidato con un alimentatore da 5 Volt dedicato collegato alla ciabatta. Questo è così che il Pi non ha l'intero carico di pilotare il relè (la preoccupazione è 8 relè simultanei impegnati) e invece può semplicemente pilotare un transistor per attivare l'alimentazione esterna al relè.

Ora determina la posizione del GPIO0 tramite GPIO7 sul Raspberry Pi. Sul mio modello B cioè:

GPIO0 = Pin 11

GPIO1 = Pin 12

GPIO2 = Pin 13

GPIO3 = Pin 15

GPIO4 = Pin 16

GPIO5 = Pin 18

GPIO6 = Pin 22

GPIO7 = Pin 7

Massa/0V = Pin 6, Pin 9, Pin 14, Pin 20, Pin 25

Poiché la connessione sul modulo SSR è a vite, ho tagliato ogni ponticello alla dimensione corretta in base a come stavo distanziando i componenti. Collega tutti gli 8 canali di ingresso e la massa dal Pi alla scheda. Le pinze ad ago aiutano a posizionare correttamente i ponticelli nell'intestazione Pi.

Ogni canale ha un LED sul modulo SSR che si accenderà quando GPIO diventa alto sul Pi. Esegui un semplice programma di test per controllare tutte le connessioni, allegato come test.py, dove ogni GPIO0-7 è impostato su alto per due secondi.

Passaggio 5: tagliare e preparare le prolunghe

Taglia e prepara le prolunghe
Taglia e prepara le prolunghe

Su ogni prolunga tagliare l'estremità della spina lasciando la massima lunghezza disponibile all'estremità con presa del cavo in quanto dovrà eventualmente andare in cima all'albero. Sul cavo dividere le estremità del filo tagliando il sottile pezzo di plastica che tiene insieme i due fili. Ora spella le estremità in modo che circa 1/4 di filo sia esposto per i connettori a vite.

Usa un pennarello su ciascuna estremità del cavo con presa per scrivere i numeri da 1 a 8 in modo da poter identificare facilmente quale presa va a quale canale sul modulo SSR.

Avremo anche bisogno di una spina e anche di un filo in più per il passaggio successivo, quindi cannibalizzare una nona prolunga o lasciare un po' di spazio in più sulle 8 prolunghe quando si taglia l'estremità della spina.

Passaggio 6: collegamento delle prolunghe CA

Collegamento dei cavi di prolunga CA
Collegamento dei cavi di prolunga CA
Collegamento dei cavi di prolunga CA
Collegamento dei cavi di prolunga CA

Il passaggio successivo aggancia l'estremità di uscita del modulo SSR con 8 prolunghe. Dal momento che la quantità di cavi qui può essere ingombrata molto facilmente, ho usato un dispositivo di distribuzione dell'alimentazione e una pinzatrice per cercare di mantenere tutto a posto.

Con l'alimentazione spenta, prendi l'estremità della spina tagliata dal passaggio precedente e collegala alla ciabatta. Spellare le altre due estremità e collegarle ciascuna al blocco di distribuzione dell'alimentazione superiore e inferiore e pinzare queste due connessioni.

Ora collega una delle prolunghe tagliate dal passaggio precedente. Nel mio caso ho un involucro con un foro di 1,5 di diametro per far defluire tutti i cavi, quindi è evidenziato in verde uno dei cavi con un'estremità collegata al blocco di distribuzione e l'altra all'estremità di uscita del modulo SSR. Per completare il circuito abbiamo bisogno di un filo molto più corto (mostrato in blu) che colleghi l'altro blocco di distribuzione al modulo SSR. Taglia e graffetta per mantenere tutto il più ordinato possibile. Non solo la graffetta mantiene le cose in ordine, ma serve anche a fissacavo in modo che qualsiasi strattone e trazione durante il collegamento delle luci all'albero non estragga le connessioni dai componenti. Inutile dire che quando si pinza non la graffetta perfora il filo o l'isolamento.

Passaggio 7: testare i collegamenti CA

Prova i collegamenti AC
Prova i collegamenti AC
Prova i collegamenti AC
Prova i collegamenti AC

Piuttosto che collegare intere stringhe di luci natalizie, ho collegato luci notturne economiche da $ 1 a ciascuna prolunga per testare e sviluppare le animazioni prima che l'albero fosse alzato. Ho dipinto le luci collegate ai cavi che avrebbero controllato le stringhe di luce rossa, verde e blu.

Eseguire lo stesso programma di test utilizzato per testare il modulo SSR e assicurarsi che ogni connessione si accenda correttamente.

La scatola di luci indicava che ogni corda avrebbe assorbito 0,34 Ampere, e per le luci colorate avrei messo insieme due serie di corde che avrebbero prodotto un assorbimento totale di 0,68 Ampere. Questo è ben al di sotto della valutazione dell'SSR che è 75 - 200 VAC a 2 Amp, tuttavia ho voluto ricontrollare poiché il fusibile sul modulo SSR è saldato alla scheda rendendo difficile la sostituzione.

Passaggio 8: creazione della stella

Creare la stella
Creare la stella
Creare la stella
Creare la stella
Creare la stella
Creare la stella
Creare la stella
Creare la stella

Il primo passo nella creazione della stella è creare un modello stampabile per aiutare a modellare la cornice in legno e la plastica. Dopo aver ridimensionato e stampato il modello alla dimensione appropriata, ho preso un pezzo di legno da 4,25 "x 0,125" dal negozio di artigianato e ho misurato la distanza necessaria per ciascun lato della stella. In realtà non ho smussato nessuna delle giunture quando le stavo tagliando, quindi formare la stella richiedeva un supporto per mantenere i pezzi in posizione durante l'incollaggio.

Appoggiando la sagoma sul piano di lavoro ho usato dei supporti per tenere in posizione i due pezzi di legno come mostrato in marrone nella foto. Con i due bordi del legno che si toccavano, la colla è stata applicata su entrambi i lati del giunto. Poi prendendo un sottile pezzo di balsa ho ritagliato un triangolo per ricucire i due pezzi e l'ho incollato sulla stella. Il motivo dell'uso della balsa è che una volta che la stella è saldamente insieme, sono stato in grado di levigare facilmente il triangolo in modo che corrisponda al contorno della stella, mostrato cerchiato nell'immagine della stella.

A causa del metodo di costruzione, ho dovuto aspettare alcune ore su ogni giunto affinché la colla si asciugasse prima di passare al giunto successivo.

Una volta che l'intera stella è stata formata, uso il cartongesso per coprire gli spazi dove due pezzi di legno si incontrano alle punte della stella.

Ho quindi incollato alcuni piccoli tappi attorno all'interno della stella per aiutare a posizionare il gruppo LED in posizione quando inserito, evidenziato con un rettangolo. Non credo che siano effettivamente necessari poiché la gravità fa il lavoro di tenere in posizione il gruppo LED.

Posizionando la stella assemblata sopra il foglio di Lexan, traccia la forma della stella e ritaglia la stella dal Lexan. Dopo aver tagliato la stella Lexan, verifica che si adatti al telaio in legno, quindi applica 2 mani di vernice spray bianca su un lato del Lexan e lascia asciugare per 24 ore. Ciò consente ai LED di essere diffusi e di nasconderli alla vista.

Per nascondere il cappuccio tra la stella Lexan e il telaio in legno ho usato una piccola striscia di legno di balsa da 0,25 "e l'ho tagliata a forma e "coperchiato" il telaio in modo che la balsa coprisse il vuoto.

Infine ho aggiunto un bastoncino/tassello per aiutare ad attaccare la stella alla cima dell'albero.

Passaggio 9: creare il montaggio del LED

Crea il montaggio LED
Crea il montaggio LED
Crea il montaggio LED
Crea il montaggio LED

Utilizzando lo stesso modello per formare la stella in legno, ritaglia il foglio di plastica ABS a misura, ma leggermente più piccolo per poterlo inserire all'interno della stella in legno. Verifica che si adatti bene all'interno della stella di legno.

Quindi, sempre utilizzando il modello con le posizioni dei fori, praticare i 25 fori per i LED. I LED di AdaFruit hanno una flangia in silicone all'esterno in modo da potersi montare perfettamente nei fori praticati a 12 mm. Nella foto puoi vedere la flangia e ho usato una linea verde per indicare dove la plastica ABS si innesterà nella flangia per tenere il LED in posizione.

Inizia su una delle punte e lavora intorno all'esterno della stella, quindi passa ai 5 supporti interni per completare il pezzo. Nel mio programma ho le posizioni dei LED cablate come mostrato numericamente nell'immagine, con 1 che è il primo LED dopo il connettore.

Applicare del nastro isolante alle estremità rossa e blu del cavo. Sono ingressi secondari per l'alimentazione che non utilizzeremo e utilizzeremo invece la connessione rosso/blu con la connessione segnale/orologio sul cavo stesso.

Passaggio 10: creazione del cavo di prolunga per la stella LED

Creazione del cavo di prolunga per la stella LED
Creazione del cavo di prolunga per la stella LED
Creazione del cavo di prolunga per la stella LED
Creazione del cavo di prolunga per la stella LED

Il prossimo è la creazione di un cavo da 8 piedi che va dal recinto alla stella in cima all'albero.

Taglia 4 pezzi di filo di uguale lunghezza da 8 piedi e su un'estremità del fascio di cavi usa del nastro isolante o delle fascette per tenere il fascio insieme e in ordine. Fallo per l'intera lunghezza del fascio di 4 cavi ogni paio di pollici.

Su entrambe le estremità del fascio spelare i fili e saldare ai connettori JST in modo che il filo possa collegare un'estremità alla custodia e l'altra alla stella. Assicurarsi di mantenere la posizione relativa dei fili nell'ordine corretto in modo che quando collegati alla stella i collegamenti Blu/Verde/Giallo/Rosso corrispondano all'altra estremità del cavo. Usa un multimetro per controllare il cavo per assicurarti che sia cablato correttamente.

Step 11: Collega la Stella al Pi

Collega la Stella al Pi
Collega la Stella al Pi

Ora dobbiamo creare la presa nella custodia per il collegamento del cavo a stella/prolunga.

Rosso = 5 Volt

Blu = Terra

Quindi possiamo collegare queste due linee sul connettore JST alla morsettiera a cui è collegata l'alimentazione del Raspberry Pi.

Gli altri due collegamenti sono:

Giallo = Dati = MOSI = Pin 19

Verde = Orologio = SCLK = Pin 23

Ho seguito il cablaggio dal tutorial di AdaFruit. Quindi spellare le estremità di due cavi jumper in modo che possano essere saldati sul connettore JST.

Una volta che si è sicuri che il cablaggio riceverà i segnali corretti ai LED, è possibile stabilizzare il connettore nell'involucro per lo scarico della trazione in modo che qualsiasi strattone sul cavo di prolunga non strappi i ponticelli dal Pi.

Passaggio 12: testare la stella LED

Prova la stella LED
Prova la stella LED
Prova la stella LED
Prova la stella LED

Con la stella LED collegata al Pi. Esegui un semplice programma di test per verificare che l'illuminazione funzioni correttamente. Gran parte del mio codice è adattato dal tutorial di AdaFruit e da un post sul forum sul sito Web sull'adattamento del codice del tutorial per adattarlo ai LED che stiamo utilizzando.

Il ledtest.py allegato farà trasformare lentamente la stella dal blu puro al rosso puro.

Passaggio 13: collegare gli altoparlanti, costruire un contenitore in alto

Collega gli altoparlanti, costruisci un contenitore Top
Collega gli altoparlanti, costruisci un contenitore Top

Niente di speciale qui, basta collegare gli altoparlanti all'audio in uscita dal Raspberry Pi e collegarli alla ciabatta. Funzionerà un semplice altoparlante alimentato con una manopola di regolazione del volume.

Per la parte superiore volevo poter guardare nella custodia, quindi ho montato un pezzo di vetro 8,5 x 11 (da una cornice) al coperchio e ho usato il velcro sulla parte superiore in modo da poter rimuovere rapidamente la parte superiore se necessario. Un'ampia porzione della custodia ha 110 VAC esposti, quindi è importante che la parte superiore fornisca protezione da chiunque o qualcosa dal contatto accidentale.

Passaggio 14: collegare l'illuminazione all'albero

Collega l'illuminazione all'albero
Collega l'illuminazione all'albero

Ho selezionato il layout dei canali sull'albero di Natale per darmi la massima flessibilità per generare diversi tipi di movimento/effetti. In allegato c'è una foto di come ho disposto l'illuminazione per i 5 fili bianchi. I restanti tre canali erano ciascuno un insieme di due luci a 100 colori chiari: rosso, verde, blu.

La particolare prolunga che si collega a ciascun filo non è fondamentale poiché nel passaggio successivo posso personalizzare la mappatura tra GPIO0-7 e quali luci ci sono sull'albero.

Passaggio 15: caricare/creare musica, software, sequenze…

Image
Image

Ci sono numerosi sequencer di luci natalizie disponibili online per Raspberry Pi, ma ne ho codificato uno semplice da zero. Tutte le sequenze sono state generate allineando i tempi di battute/misure in Audacity (editor audio) a particolari comandi del mio sequencer.

rxmas.py

Questo programma sceglierà casualmente un layout statico per l'albero ogni minuto. Ho questo script in esecuzione all'avvio del Raspberry Pi (tramite un cron job) come comportamento predefinito quando si collega l'unità.

natale.py

Questo è il programma sequencer, che accetta un file di sequenza e un MP3 come input

setup.txt

Nel passaggio precedente, ho fornito il layout che ho usato per ogni canale logico. Questo file mappa ogni GPIO0-7 effettivo sul canale logico. Quindi nel setup.txt che ho allegato, il cavo di prolunga di GPIO0 guida il canale logico 8 (blu), GPIO1 guida il canale logico 6 (rosso), ecc …

test.mp3 / test.txt

Questo è un semplice test di un conteggio audio dei numeri da 1 a 8 con le stringhe luminose equivalenti che si accendono

Quindi, per invocare questo esempio, digita:

./xmas.py test.txt test.mp3

carol.txt

Il file del sequencer per Christmas Sarajevo della Trans-Siberian Orchestra

LetItGo.txt

Il file del sequencer per Let It Go dal film Frozen della Disney

russo.txt

Il file del sequencer per "A Mad Russian's Christmas" della Trans-Siberian Orchestra

Ovviamente dovrai fornire i tuoi file LetItGo.mp3 e carol.mp3! Basta acquistarli su Amazon.

NOTA: il video YouTube incorporato è accelerato fino al 110%, quindi potrebbe sembrare un po' strano

Fallo brillare!
Fallo brillare!

Primo premio nel Make it Glow!

Consigliato: