Sommario:

Papillon Sonic, di David Boldevin Engen: 4 passaggi (con immagini)
Papillon Sonic, di David Boldevin Engen: 4 passaggi (con immagini)

Video: Papillon Sonic, di David Boldevin Engen: 4 passaggi (con immagini)

Video: Papillon Sonic, di David Boldevin Engen: 4 passaggi (con immagini)
Video: Farruko - Pepas / Sonic & Baby Spiderman & Baby Dance / 2024, Dicembre
Anonim
Image
Image

Un papillon compatto, in grado di visualizzare continuamente il suono circostante in quattro diverse frequenze sui suoi due array di LED 4x5 specchiati

Questo tutorial ti spiegherà come realizzare un papillon che ti farà risaltare in mezzo alla folla.

Cosa ti servirà per questo progetto:

1 Arduino Pro Micro o un Arduino di dimensioni simili che funziona a 16 MHz

40 LED da 3 mm

1 semplice pulsante

1 microfono elettrete

1 batteria LiPo a 1 cella ricaricabile da 3,7 V 800 mAh 25C

10 resistori da 100Ω

1 resistore da 10kΩ

1 resistenza da 220Ω

Accesso a una macchina PCB (circuito stampato)

Un papillon regolabile con gancio/clip-on economico o semplicemente il collarino con gancio/clip-on regolabile

Passaggio 1: stampa il PCB

Stampa il PCB
Stampa il PCB

Quando si stampa un circuito potrebbe essere necessario adattare il file.cmp per soddisfare i requisiti del produttore. Tuttavia, la scheda nell'originale è stata realizzata utilizzando un metodo abbastanza impreciso, quindi la maggior parte dei produttori sarà molto probabilmente in grado di produrre il PCB senza alterazioni. Nelle immagini, puoi vedere la parte anteriore e posteriore del PCB. Il design presuppone che i fori di saldatura non includano i via e che solo i via possano essere posizionati separatamente (nei PCB con più di un via laterale ci sono connessioni tra gli strati).

Ogni luce è indirizzata individualmente utilizzando una tecnica chiamata Charlieplexing che consente un numero molto inferiore di nodi di input rispetto a una normale matrice LED, lo svantaggio è che solo la luce può essere accesa alla volta, il che stabilisce un limite di quanto grande può essere l'array e senza lampeggi evidenti. Charliplexing funziona invece di avere due segnali 1 e 0, ne ha tre 1, 0 e Z. Dove Z funziona come un circuito aperto, avendo un'impedenza molto alta. Quindi ogni luce viene accesa facendo in modo che il nodo sia in una combinazione di 1, 0, Z, Z, Z, il che significa che la corrente può passare solo da un nodo all'altro alla volta.

Passaggio 2: saldare tutto insieme

Saldando tutto insieme
Saldando tutto insieme

Quando si saldano le luci sul PCB è molto importante saldare in modo coerente il lato positivo del LED ai quadrati e il negativo al cerchio. Farlo in modo opposto farà sì che l'indirizzo nel codice accenda le luci sbagliate e l'incoerenza farà sì che più luci vengano accese dagli stessi stimoli.

Quindi saldare i 10 resistori da 100 sulla parte anteriore del papillon.

Quindi collega gli altri pezzi nel modo mostrato nello schema elettrico, va bene saldare la batteria direttamente all'Arduino poiché si ricaricherà quando l'arduino è collegato tramite USB. Prima di incollare tutti i pezzi sul retro del PCB dovresti testare gli errori nell'array.

Passaggio 3: caricamento del codice e debug

Carica il codice sopra. Quando è stato caricato, premi il pulsante per attivarlo, ora una forma triangolare che punta verso l'interno dovrebbe scorrere verso l'alto o verso il basso sul papillon.

Se non lo fai, usa la funzione Blink (LED), che accetta un input di un numero 1-20, per ogni luce individualmente nel ciclo while(mode=0) nel ciclo void mentre commenta il resto di quello mentre ciclo continuo.

ciclo vuoto() {

mentre (modalità == 0) {

Lampeggia (1); // Prova una per una per vedere se le luci funzionano come dovrebbero e quali no

//lampeggia (2); //prossimo passo fino a 20

/* if (digitalRead(Button) == 0) {

modalità = 1;

Spento();

accendere(1);

ritardo(200);

rottura;

}

Spento(); */ // questa sezione è commentata durante il debug

}

…..

Debug:

Se hai luci diverse su ciascun lato, c'è qualcosa che non va nella saldatura e dovresti dissaldare le luci interessate e ripetere il passaggio 2.

Se le coppie di 2 luci sono spente, potrebbero mancare dei via.

Se due luci si accendono sempre insieme e sono meno luminose delle altre, una è stata saldata nel verso sbagliato.

Se ogni luce si accende singolarmente, ma non segui lo schema descritto nelle istruzioni nella parte superiore del codice, hai incasinato il passaggio 2.

altri problemi possono derivare da collegamenti difettosi o da un cortocircuito sul PCB.

Attenzione: questo segmento è molto tecnico e non necessario per realizzare il papillon

Ho scritto il codice di analisi dello spettro appositamente per un Arduino con una frequenza di clock di 16 MHz. Quindi non sono del tutto sicuro di come funzionerà su altri sistemi, potrebbe far reagire tutte le bande in modo molto diverso, tuttavia potrebbe non cambiare molto.

Funziona prendendo 60 campioni in circa 6,7ms che è una frequenza di campionamento di circa 8,9kHz. Analizzandoli poi in 4 modi diversi dando 4 frequenze differenti.

L'analisi a frequenza più alta funziona confrontando ogni altro campione con il successivo, elevando il valore al quadrato e sommandolo per ogni s coppia di campioni. Questo dà il massimo effetto intorno alla metà della frequenza di campionamento, quindi è un filtro passa-banda intorno a 4, 4kHz.

Una formula matematica approssimativa per l'analisi:

Σ(sq(x[2n-1]-x[2n]))

Il prossimo funziona in modo molto simile, ma prima aggiunge due campioni alla volta. Questo fornisce effettivamente metà della frequenza di campionamento dell'ultimo sistema mentre filtra le frequenze più alte creando un filtro passa banda intorno a 2, 2kHz.

Il sistema successivo fa lo stesso ma invece di aggiungere 2 campioni alla volta ne aggiunge 10 che diventa un filtro passa banda per 440Hz.

L'ultima analisi somma i primi 30 campioni e li confronta con la somma degli ultimi 30. Questo diventa effettivamente un filtro passa-banda per 150Hz.

Passaggio 4: incolla tutto insieme

Incollalo tutto insieme
Incollalo tutto insieme

È importante mantenere l'Arduino separato dal PCB in quanto potrebbe causare cortocircuiti se entrano in contatto. Questo può essere fatto incollandoli insieme con del nastro isolante in mezzo. è anche vantaggioso avere la batteria su un'ala del papillon e il microcontrollore sull'altra per il bilanciamento. Dovresti cercare di mantenere il centro del papillon abbastanza vuoto poiché è qui che colleghi la fascia da collo, con la possibile eccezione del microfono poiché dovrebbe sporgere di qualche millimetro e puntare verso l'esofago, questo significherà che quando parli tutti lo vedranno il più chiaro.

Ricorda: sul retro del papillon la funzionalità è molto più importante dell'estetica perché nessuno lo vedrà.

Consigliato: