Sommario:

Arduino Infinity Mirror (Bluetooth e suono reattivo): 9 passaggi (con immagini)
Arduino Infinity Mirror (Bluetooth e suono reattivo): 9 passaggi (con immagini)

Video: Arduino Infinity Mirror (Bluetooth e suono reattivo): 9 passaggi (con immagini)

Video: Arduino Infinity Mirror (Bluetooth e suono reattivo): 9 passaggi (con immagini)
Video: 8x8x8 LED CUBE WITH ARDUINO UNO 2024, Dicembre
Anonim
Image
Image
Arduino Infinity Mirror (Bluetooth e suono reattivo)
Arduino Infinity Mirror (Bluetooth e suono reattivo)
Arduino Infinity Mirror (Bluetooth e suono reattivo)
Arduino Infinity Mirror (Bluetooth e suono reattivo)

Ho creato un Infinity Mirror per un progetto scolastico con Arduino che puoi controllare con il tuo telefono o tablet tramite Bluetooth. Lo specchio ha anche un microfono incorporato che rileva il suono/musica e reagisce di conseguenza generando stroboschi luminosi accattivanti al ritmo della musica! Basta avviare l'app, connettersi al bluetooth e vedere la magia accadere!

In questo Instructables ti mostrerò come puoi realizzare questo Infinity Mirror. Quindi iniziamo!

Passaggio 1: raccogliere materiali

Raccogli materiali
Raccogli materiali

Per realizzare questo specchio infinito, avrai bisogno dei seguenti materiali:

1) Arduino Uno ($ 30)

Puoi anche usare un diverso tipo di Arduino, ma dipende interamente da te.

2) Mini breadboard o PCB ($ 5)

Ho usato la breadboard per la prototipazione e successivamente ho saldato il tutto a una perfboard/stripboard.

3) Striscia LED RGB digitale 5050 WS2813 - 144 LED (1 metro) ($25)

Puoi anche utilizzare una striscia LED diversa, ma assicurati che tutti i LED siano indirizzabili individualmente. Assicurati inoltre che la striscia LED fornisca una tensione "extra" di 5V per ogni metro di LED. Questo perché la tensione scende sulla striscia e la corrente all'inizio può aumentare notevolmente. (e magari bruciare l'inizio della tua striscia LED!) Puoi leggere di più su questo qui: Alimentazione dei Neopixel.

4) Cavi prototipo ($3)

I colori non contano in generale, ma è molto utile averli come riferimento per te. Ho usato bianco, nero, rosso, verde, giallo, arancione e blu.

5) Cavo USB da A a B ($ 4)

Questo sarà usato per caricare il tuo codice Arduino sulla scheda Arduino Uno.

6) Alimentatore a commutazione Mean Well - 5V 10A ($ 15)

Questo verrà utilizzato per supportare la striscia LED con una tensione esterna di 5 V, perché l'Arduino stesso non è abbastanza potente da illuminare tutti i LED. Puoi anche scegliere di utilizzare un alimentatore da parete, ma assicurati che funzioni a 5V.

7) Cavo di alimentazione 230V con spina ($3)

Questo sarà utilizzato per collegare l'alimentatore a commutazione alla presa di corrente da 230 V. A seconda di dove vivi, la quantità di tensione dalla presa di corrente può variare. In ogni caso, avrai bisogno di un cavo adeguato con spina.

8) Modulo Bluetooth HC-06 Ricetrasmettitore RF Slave 4-PIN ($8)

Questo modulo verrà utilizzato per inviare dati dal tuo telefono o tablet ad Arduino. Questo modulo bluetooth può fungere solo da slave. Il pin/password bluetooth standard è 1234.

9) Modulo sensore di rilevamento del suono 3-PIN ($ 3)

Questo modulo verrà utilizzato per rilevare il suono poiché ha un microfono incorporato. Impostare il potenziometro per la quantità di suono desiderata alla quale viene generato un segnale. Puoi anche utilizzare un sensore audio diverso, ma dipende da te.

10) Resistenza da 220 ($ 0,25)

Questo sarà usato per controllare le tensioni dei LED. Se non lo usi, i LED alla fine diventeranno molto caldi. Un resistore da 220Ω ha strisce rosse, rosse e marroni in quest'ordine. L'ultima striscia rappresenta la tolleranza. Oro significa ±5%. Maggiori informazioni qui: Resistenza da 220 Ohm.

11) Condensatore elettrolitico da 1000uF 16V ($ 0,25)

Questo sarà usato per aggiungere e immagazzinare capacità (energia) al tuo circuito. Maggiori informazioni qui: Condensatori elettrolitici.

Scatola e specchio:

Questi sono i materiali e le dimensioni che ho usato per creare la mia scatola. Puoi anche scegliere di acquistare una cornice o una scatola prefabbricata che sia abbastanza grande da contenere uno specchio riflettente unidirezionale, uno specchio normale, LED ed elettronica. Consiglio di costruirlo da soli solo se si dispone degli strumenti e dei materiali corretti.

12) Vetro 25 x 25 cm (spessore 3 mm) ($ 5)

Il vetro verrà utilizzato come specchio riflettente unidirezionale, per il quale avrai bisogno della pellicola per vetri a specchio unidirezionale (vedi 13). Puoi anche scegliere di acquistare uno specchio unidirezionale/specchio semitrasparente che è abbastanza grande da stare all'interno della tua scatola. Puoi tagliare il vetro da solo con un tagliavetro (vedi 22), ma ti consiglio piuttosto di consultare degli specialisti per farlo per te o ancora meglio semplicemente acquistare un vetro con le giuste dimensioni.

13) Pellicola per vetri oscurata a specchio unidirezionale 30 x 30 cm ($ 5)

Per replicare uno specchio unidirezionale, avrai bisogno di vetro e un rotolo di pellicola per vetri oscurata per specchi unidirezionale, che verrà applicato sul vetro con acqua e sapone (vedi 29). Il motivo per cui è leggermente più grande del vetro è perché si restringerà nel tempo. Se scegli di acquistare uno specchio unidirezionale invece come menzionato sopra, non ti servirà.

14) Specchio 25 x 25 cm (spessore 3 mm) ($ 5)

Solo un normale specchio, come quello che hai in bagno. Questo verrà utilizzato, insieme allo specchio unidirezionale, per creare l'effetto "infinito".

15) 2x listello di legno spesso 25 x 10 x 2 cm ($2)

Due assi di legno per la parte superiore e inferiore della scatola.

16) 2x listello di legno spesso 27 x 10 x 2 cm ($2)

Due listelli di legno per il lato destro e sinistro della scatola.

17) 2x listello di legno sottile 25 x 2,5 x 0,5 cm ($ 1)

Due listelli di legno per la parte superiore e inferiore dell'interno della scatola (su cui poggeranno gli specchi e su cui sono incollati i led).

18) 2x listello di legno sottile 24 x 2,5 x 0,5 cm ($ 1)

Due listelli di legno per il lato destro e sinistro dell'interno della scatola (su cui poggeranno gli specchi e su cui sono incollati i led).

19) Bomboletta/spruzzo di vernice nera

L'ho usato per dipingere la mia scatola di nero per farla fondere maggiormente con il tema scuro.

Utensili:

Questi sono gli strumenti di cui avrai bisogno per creare la scatola e lo specchio:

20) Metro a nastro ($3)

Usato per misurare la tua scatola ovviamente. Maggiori informazioni qui: Come leggere un metro a nastro.

21) Quadrato di misurazione ($5)

Utilizzato anche per misurare la scatola/i materiali. Non proprio necessario, ma potrebbe tornare molto utile.

22) Tagliafili/spelafili ($5)

Usato per spelare e tagliare i fili. In alternativa puoi usare anche un coltello da cucina o un coltello Stanley. Maggiori informazioni qui: Come spelare il filo.

23) Tagliavetro ($5)

Utilizzato per il taglio di vetri e specchi. In alternativa puoi usare un diamante, ma non lo consiglio. Maggiori informazioni qui: Come tagliare il vetro colorato.

24) Cacciavite/trapano ($2)

Utilizzato per avvitare viti e praticare fori. Maggiori informazioni qui: Come guidare un Woodscrew.

25) Martello ($5)

Usato per piantare chiodi. Maggiori informazioni qui: Come usare un martello in sicurezza.

26) Colla per legno ($5)

Se le viti o i chiodi non sono abbastanza buoni, puoi anche applicare della colla per legno per tenere insieme le parti. Maggiori informazioni qui: Come incollare il legno insieme.

27) Sega ($5)

Usato per segare il legno. Maggiori informazioni qui: Come segare il legno con una sega a mano.

28) Unghie ($3)

Usato per tenere insieme le parti, nel nostro caso in modo permanente.

29) Viti ($3)

Utilizzato anche per tenere insieme le parti, ma utilizzando viti invece di chiodi è possibile scollegare facilmente le parti se necessario.

30) Acqua e sapone

Utilizzato per applicare la pellicola per vetri oscurata a specchio unidirezionale sul vetro. E anche usato per pulire lo specchio infinito. Se vuoi sapere come installare la pellicola per finestre, puoi seguire questo tutorial: Come installare la pellicola per finestre.

31) Carta vetrata ($ 1)

Utilizzato per rifinire gli spigoli vivi del vetro e del legno.

Strumenti di saldatura (opzionale):

32) Saldatore ($ 15)

Facoltativo se scegli di saldare tutto insieme invece di lasciarlo sulla breadboard. Se vuoi sapere come saldare, puoi seguire questo tutorial: Come saldare l'elettronica.

33) Stagno per saldatura 0,6 mm - 100 g ($ 5,50)

Utilizzato per saldare i fili insieme.

34) Filo dissaldante - 1 mm 1,5 m ($ 1,50)

Utilizzato per dissaldare i fili, nel caso in cui si commettesse un errore accidentale.

35) Tubi termorestringenti ($2)

Utilizzato per tenere insieme in sicurezza i fili saldati.

36) 1x header 3 pin femmina ($ 0,10)

Non proprio necessario, ma potrebbe essere utile se non si desidera saldare direttamente il sensore di rilevamento del suono ai fili.

37) 1x header a 4 pin femmina ($ 0,10)

Non proprio necessario, ma potrebbe essere utile se non si desidera saldare direttamente il modulo bluetooth ai fili.

Passaggio 2: connessioni breadboard

Image
Image
Connessioni breadboard
Connessioni breadboard
Connessioni breadboard
Connessioni breadboard

Una volta assemblati i materiali, è il momento di realizzare il tuo primo prototipo utilizzando una breadboard. La breadboard ha quattro colonne in totale. Le prime due e le ultime due colonne blu e rossa condividono una connessione verticale, che rappresenta le connessioni +5V (rosso) e terra/GND (blu). Le due colonne al centro sono dove verranno posizionati i componenti principali. Puoi saperne di più sulle breadboard qui.

Quindi quello che vuoi fare è connettere il tuo Arduino alla breadboard usando alcuni cavi prototipo. Come ho detto prima, i colori non contano ma sono un utile riferimento per te stesso. Ad esempio, ho usato i fili rossi per rappresentare i +5V e i fili bianchi per rappresentare il GND. Inoltre, non importa dove posizioni i pin purché rimangano nello stesso circuito.

Quindi vuoi collegare la tua striscia LED alla breadboard. Noterai che ha 3-6 fili a seconda del tipo che hai. Il bianco rappresenta l'ingresso GND/min, il rosso rappresenta l'ingresso +5V, il verde rappresenta il PIN di ingresso dati e il blu rappresenta il PIN di ingresso dati di backup (non collegare a meno che il LED non sia collegato). Collegare l'alimentazione esterna da 5 V e collegarla alla striscia LED. Non dimenticare di collegare anche il resistore e il condensatore come mostrato nell'immagine sopra, altrimenti potresti bruciare i LED!

Infine, vuoi collegare il tuo modulo bluetooth e il sensore di rilevamento del suono alla breadboard. Assegnare il sensore di rilevamento del suono al pin A0 (analogico). Per quanto riguarda il modulo bluetooth, noterai che ha un pin RXD e un pin TXD. Servono per inviare e ricevere segnali. NOTA: collegare il pin TXD del modulo al pin RXD di Arduino, e il pin RXD del modulo al pin TXD di Arduino. Non per gli stessi pin!

Passaggio 3: codifica l'Arduino

Codifica Arduino
Codifica Arduino

Quindi il prossimo passo è codificare Arduino. Avrai bisogno del software Arduino IDE per farlo, che puoi scaricare qui. Una volta scaricato l'IDE, apri un nuovo documento e copia e incolla il seguente codice nella finestra del progetto:

#includere

//Pin che sono collegati ad Arduino

const int PIN = 6; //Il pin di input della striscia LED int NUMPIXELS = 144; //Il numero di pixel che si accenderanno const int SOUNDSENSOR = A0; //Il pin di ingresso del sensore sonoro

int Stato Pulsante = 0; //Stato assegnato a un pulsante sull'app bluetooth

int volume = 0; //Stato che controlla se c'è un segnale nel microfono o no

//Variabili colore

booleano PrimBlue = falso; booleano PrimGreen = false; booleano PrimRed = false; booleano PrimWhite = false; booleano PrimYellow = false; booleano PrimoOrange = false; booleano PrimPink = false; booleano PrimPurple = false;

//Variabili luce e suono

booleano SoundDetect = falso; booleano FullLight = falso;

Striscia Adafruit_NeoPixel = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

void setup() {

pinMode(SOUNDSENSOR, INGRESSO); //Ingresso del sensore sonoro pinMode(PIN, OUTPUT); //Ingresso della striscia LED

Serial.begin(9600);

strip.setPixelColor(0, 0, 0, 0); strip.setBrightness(0); strip.begin(); //Questo inizializza la libreria NeoPixel strip.show();

}

ciclo vuoto() {

//Definisce la quantità di luminosità in base al byte di scorrimento luminosità = analogRead(A0)/4; Serial.println(luminosità); if (Serial.available() > 0) { ButtonState = Serial.read(); }

//Abilita o disabilita il rilevamento di LED e suoni

if (FullLight == 1 && SoundDetect == 0) { strip.setBrightness(ButtonState); strip.show(); } else if (FullLight == 0 && SoundDetect == 0) { strip.setBrightness(0); strip.show(); } else if (FullLight == 0 && SoundDetect == 1) { strip.setBrightness(luminosità); strip.show(); } else if (FullLight == 1 && SoundDetect == 1) { strip.setBrightness(0); strip.show(); }

//////////////////////////interruttore LED///////////////////// ////

if (ButtonState == 'a') { primaryColors(); Luce piena = 1; Rileva suoni = 0; }

if (ButtonState == 'b') {

Luce Piena = 0; Rileva suoni = 0; }

//////////////////////////Interruttore di rilevamento del suono///////////////////// /////

if (ButtonState == 'c') { primaryColors(); Rileva suoni = 1; Luce Piena = 0; }

if (ButtonState == 'd') {

Rileva suoni = 0; Luce Piena = 0; }

//////////////////////////Colori primari////////////////////// ////

if (ButtonState == '1') { primaryColors(); PrimBlue = 0; PrimGreen = 0; PrimRed = 1; PrimWhite = 0; PrimoGiallo = 0; Arancione primo = 0; PrimPink = 0; PrimViola = 0; }

if (ButtonState == '2') {

colori primari(); PrimGreen = 1; PrimBlue = 0; PrimRed = 0; PrimWhite = 0; PrimoGiallo = 0; Arancione primo = 0; PrimPink = 0; PrimViola = 0; }

if (ButtonState == '3') {

colori primari(); PrimRed = 0; PrimBlue = 1; PrimGreen = 0; PrimWhite = 0; PrimoGiallo = 0; Arancione primo = 0; PrimPink = 0; PrimViola = 0; } if (ButtonState == '4') { primaryColors(); PrimRed = 0; PrimBlue = 0; PrimGreen = 0; PrimWhite = 1; PrimoGiallo = 0; Arancione primo = 0; PrimPink = 0; PrimViola = 0; } if (ButtonState == '5') { primaryColors(); PrimRed = 0; PrimBlue = 0; PrimGreen = 0; PrimWhite = 0; PrimoGiallo = 1; Arancione primo = 0; PrimPink = 0; PrimViola = 0; } if (ButtonState == '6') { primaryColors(); PrimRed = 0; PrimBlue = 0; PrimGreen = 0; PrimWhite = 0; PrimoGiallo = 0; Arancio primo = 1; PrimPink = 0; PrimViola = 0; } if (ButtonState == '7') { primaryColors(); PrimRed = 0; PrimBlue = 0; PrimGreen = 0; PrimWhite = 0; PrimoGiallo = 0; Arancione primo = 0; PrimPink = 1; PrimViola = 0; } if (ButtonState == '8') { primaryColors(); PrimRed = 0; PrimBlue = 0; PrimGreen = 0; PrimWhite = 0; PrimoGiallo = 0; Arancione primo = 0; PrimPink = 0; PrimViola = 1; } }

void primaryColors() {

for (int i = 0; i < NUMPIXELS; i++) { if (PrimBlue == 1) { strip.setPixelColor(i, 0, 0, 255); } else if (PrimGreen == 1) { strip.setPixelColor(i, 0, 255, 0); } else if (PrimRed == 1) { strip.setPixelColor(i, 255, 0, 0); } else if (PrimWhite == 1) { strip.setPixelColor(i, 255, 255, 255); } else if (PrimYellow == 1) { strip.setPixelColor(i, 255, 255, 0); } else if (PrimOrange == 1) { strip.setPixelColor(i, 255, 102, 0); } else if (PrimPink == 1) { strip.setPixelColor(i, 255, 0, 255); } else if (PrimPurple == 1) { strip.setPixelColor(i, 102, 0, 204); } else { strip.setPixelColor(i, 255, 255, 255); } } strip.show(); }

Se ti chiede di installare la libreria Adafruit NeoPixel, fallo andando su Schizzo> Importa libreria> Adafruit NeoPixel.

Passaggio 4: crea l'app Bluetooth

Image
Image
Costruisci la scatola
Costruisci la scatola

Ora entriamo nella parte interessante, costruire la tua app! Ho deciso di utilizzare un software di terze parti chiamato MIT App Inventor 2 per farlo. Se vuoi scaricare i file del progetto (.aia) e apportare modifiche all'app, puoi scaricarlo qui sotto. Ma puoi anche scaricare subito l'app stessa (.apk) senza dover codificare nulla. Devi solo installarlo sul tuo dispositivo.

Passaggio 5: costruisci la scatola

Costruisci la scatola
Costruisci la scatola
Costruisci la scatola
Costruisci la scatola
Costruisci la scatola
Costruisci la scatola

In questo passaggio, costruiremo la scatola/cornice per lo specchio infinito.

La cornice esterna

Per prima cosa, taglia l'assicella spessa per il telaio esterno (vedi foto sopra). Avrai bisogno di due pezzi di lunghezza 27 cm (per la parte superiore e inferiore) e due pezzi di lunghezza 25 cm (per il lato sinistro e il lato destro). Ora inchiodali insieme infilando i chiodi negli angoli della scatola (4 per ogni lato), ma assicurati che i bordi si adattino perfettamente. Puoi anche scegliere di incollarli insieme, ma dipende da te.

La cornice interna

Quindi, taglia l'assicella sottile per il telaio interno (vedi di nuovo le immagini sopra). Avrai bisogno di due pezzi di lunghezza 25 cm (per la parte superiore e inferiore) e due pezzi di lunghezza 24 cm (per il lato sinistro e destro). Ora vuoi inchiodarli a circa 0,5 cm sotto la parte superiore del telaio esterno usando 2 chiodi per ogni lato. Ho anche applicato della colla per legno qui per renderli più robusti. NOTA: assicurarsi che lo specchio unidirezionale si adatti perfettamente alla cornice!

Praticare il foro del microfono

Poiché il microfono è un oggetto sensibile, deve essere privo di copertura. Ecco perché ho praticato un foro nella parte superiore del telaio da cui sporgerà la testa del microfono. Non fare il buco troppo grande, perché non vuoi che il tuo microfono cada completamente fuori dal telaio.

Dipingere la tua cornice

Ho deciso di dipingere la mia cornice quasi di nero opaco per darle una sorta di effetto oscuro e misterioso. Se decidi anche di dipingerlo, assicurati che non rimangano grosse macchie di vernice sul telaio. Per evitare ciò, devi dipingere delicatamente la cornice con un pennello da piccolo a medio. Inoltre puoi dipingerlo una seconda volta se non è coperto a sufficienza. Lascia asciugare per un giorno o due.

Passaggio 6: saldare l'elettronica a un PCB

Image
Image
Saldare l'elettronica a un PCB
Saldare l'elettronica a un PCB
Saldare l'elettronica a un PCB
Saldare l'elettronica a un PCB

In questo passaggio salderemo l'elettronica a un PCB che in seguito installeremo sul retro del nostro specchio. La saldatura non è obbligatoria, ma consiglio vivamente di farlo per mantenere l'elettronica al sicuro. Ho saldato tutto passo dopo passo per "componente" alla griglia per evitare errori. Quindi ho prima saldato il modulo audio alla scheda, poi il modulo bluetooth e infine le strisce LED. Consiglio di lasciare uno spazio vuoto tra i componenti che non possono toccarsi direttamente, come i cavi di ingresso +5V e i cavi di ingresso GND (vedi foto sopra).

Una volta saldati i componenti alla scheda, inizia a creare collegamenti a ponte applicando dello stagno tra i componenti sotto la scheda. In alternativa puoi spellare alcuni fili e saldarli ai componenti per creare una connessione a ponte.

Ora vuoi testare il circuito semplicemente collegando i fili ad Arduino. Assicurati di aver collegato anche l'alimentatore! Se i LED si accendono correttamente, ben fatto! Se tuttavia non si accendono, potresti voler ricontrollare il circuito e cercare connessioni difettose.

Passaggio 7: installare l'elettronica sul retro

Installa l'elettronica sul retro
Installa l'elettronica sul retro

Il prossimo passo è installare l'elettronica su un pezzo di legno, che utilizzeremo anche per il retro dello specchio. Ho fissato l'elettronica alla scheda con delle viti e incollato due tasselli sul lato destro e sinistro del retro che servono per avvitare il retro della scatola alla scatola stessa.

Passaggio 8: assemblare gli specchi con la scatola

Assemblare gli specchi con la scatola
Assemblare gli specchi con la scatola
Assemblare gli specchi con la scatola
Assemblare gli specchi con la scatola
Assemblare gli specchi con la scatola
Assemblare gli specchi con la scatola

Ora è il momento di assemblare gli specchi, attaccare i LED alla cornice e posizionare il sensore di rilevamento del suono.

Specchio unidirezionale

Lo specchio unidirezionale verrà posizionato sulla cornice stessa, con il lato colorato rivolto verso il basso verso lo specchio e i led. Per realizzare questo specchio da soli, avrai bisogno della lastra di vetro e della pellicola per vetri oscurata. Per prima cosa taglia la pellicola per finestre nella giusta misura, ma lascia circa 2-5 cm di spazio in più su ogni lato. Successivamente si desidera pulire completamente la finestra e rimuovere tutti i resti di polvere. Quindi copri la finestra con acqua e sapone e rimuovi con cura la plastica dalla pellicola (puoi posizionare del nastro su ciascun lato per rimuoverla facilmente). Ora vuoi anche coprire il lato adesivo della pellicola per finestre con acqua e sapone per evitare che si attacchi a se stesso. Tutto quello che devi fare ora è posizionarlo sopra il vetro e spazzarlo saldamente in posizione (vedi foto sopra). Lascia asciugare per circa un giorno e rimuovi la pellicola rimanente.

Attacca i LED alla scatola

Il prossimo passo è attaccare i LED alla scatola che può essere fatto rimuovendo la carta adesiva. Consiglio anche di applicare della colla veloce sul retro della striscia per evitare che si stacchi.

Posiziona gli specchi e finiscilo

Il passaggio finale consiste nel mettere in posizione sia lo specchio unidirezionale che lo specchio normale. Lo specchio normale va dietro la striscia LED e lo specchio unidirezionale va davanti. Incollali in posizione con della colla rapida e avvita la piastra posteriore con l'elettronica sul retro della scatola. Metti il sensore di rilevamento del suono in posizione, collega tutti i fili e voilà, il gioco è fatto!

Passaggio 9: prova il tuo specchio Infinity

Tutto quello che devi fare ora è testare se tutto funziona. E questo è tutto! Ora hai costruito il tuo specchio Infinity controllabile e reattivo al suono Bluetooth!:D

Non esitate a chiedere nella sezione commenti se avete domande.

grazie e divertiti!

Consigliato: