Sommario:
- Forniture
- Passaggio 1: i diversi moduli
- Fase 2: L'Assemblea Parte 1
- Passaggio 3: assemblaggio parte 2
- Passaggio 4: collegare gli occhi
- Passaggio 5: collegamento del sensore e del modulo PIR
- Passaggio 6: il lettore MP3 e l'amplificatore
- Fase 7: L'Assemblea Finale
- Fase 8: LA RECINZIONE
Video: Halloween Scary Eyes Prop: 8 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:02
Nel corso degli anni, nella realizzazione di vari progetti, c'è stato un
un'intera collezione di moduli diversi che erano in giro inutilizzati e volevo usarne almeno alcuni per qualcosa che fosse divertente e creativo allo stesso tempo.
Passando attraverso il "Sito instructables.com" per le idee, mi sono imbattuto in alcuni progetti che pensavo potessero essere mischiati insieme per creare qualcosa per questo "Halloween".
Devo dare credito a Steve Quinn, Unexpected Maker per aver utilizzato le loro idee.
Forniture
ARTICOLI E MODULI UTILIZZATI
Moduli utilizzati
1 Scheda Atmega8 autonoma
Scheda controller basata su 2 PIR per uscita a 5 Volt
3 Scheda amplificatore LM386
4 Modulo lettore MP3 generico
5 moduli LED MAX7219 8x8
6 Modulo PIR (generico)
7 Altoparlante 4” 4 Ohm
Altri materiali
un. Scatola di cartone vuota
B. Bottiglie d'acqua vuote monouso
C. LED che cambia colore 5V
D. Fili Assortiti
e. Pistola a colla
F. Saldatore
G. Strumenti e taglierine vari
h. Trasformatore step-down 12V 1A
Importante
1 Arduion IDE
2 Scheda di programmazione per chip AVR
3 Software di programmazione (masterizzazione)
Passaggio 1: i diversi moduli
Per prima cosa, esamineremo la creazione dei diversi moduli, We
potevo certamente realizzare un solo PCB per tutta l'elettronica e far funzionare bene il progetto ma, per me, l'idea era di utilizzare i diversi elementi che avevo già realizzato in precedenza per diversi progetti e ora che la necessità era finita, ho volevo solo riutilizzare quegli elementi.
La scheda ATmega8
Sto usando il chip ATmega8 senza alcun cristallo esterno. In realtà, queste schede sono state realizzate per eseguire alcuni moduli LED P10 16x32 e ne avevo alcuni rimasti da questo progetto. L'immagine della scheda e del layout del PCB è la seguente (vedi immagini). Ci sono innumerevoli articoli su come creare la tua scheda Arduino su "instructables". Potresti semplicemente usare qualsiasi vecchia scheda Arduino che potresti avere in giro.
Scheda di controllo PIR
Questa scheda PIR è stata creata per accendere e spegnere alcune piccole decorazioni per festival basate su LED e ora era solo in giro e ho deciso di usarla. Il layout del circuito è mostrato nelle immagini
LA Scheda dell'amplificatore LM 386
Questo è il modulo amplificatore che amplifica l'uscita audio dal modulo lettore MP3. il layout e il circuito sono abbastanza semplici e le immagini dicono tutto. il layout del circuito e l'immagine della scheda completata sono autoesplicativi.
Il modulo lettore MP3
Ho usato il modulo lettore MP3 mostrato nell'immagine. È prontamente disponibile su Amazon ecc., È economico e facile da usare. La parte migliore di questo particolare modulo è che non richiede alcun comando aggiuntivo o connessione per iniziare a giocare. Nel momento in cui viene fornita l'alimentazione appropriata alla scheda, questa inizia a fare il suo lavoro.
Moduli LED MAX7219 8x8
Questi moduli display a LED 8x8 sono prontamente disponibili su Amazon, ecc. Vengono fornite le immagini di quelli che ho usato.
Modulo PIR
Ho usato il modulo sensore PIR prontamente disponibile. È disponibile su Amazon ecc., È economico e facile da usare. Le immagini sono fornite per riferimento.
Fase 2: L'Assemblea Parte 1
Il concetto era quello di combinare tutti questi moduli e creare un oggetto di Halloween che si attivasse ogni volta che qualcuno attraversava l'oggetto. Per questo, ho collegato l'alimentatore a 12 volt alla scheda di controllo PIR, che a sua volta ha ridotto la tensione a 5 V CC con l'aiuto dell'IC 7805 e questa tensione di 5 V CC è stata trasmessa al sensore PIR e successivamente agli altri moduli, la scheda ATmega8, il modulo amplificatore e il modulo lettore MP3 ogni volta che qualcuno si è avvicinato al sensore PIR. Il diagramma di flusso dice tutto.
Come possiamo vedere, il sensore PIR attiva la scheda ATmega8, il modulo amplificatore e il modulo lettore MP3, l'ATmega8 controlla la matrice di LED "Eyes", il lettore MP3 riproduce gli effetti sonori e il modulo amplificatore invia il segnale all'altoparlante.
Il codice Arduino è un decollo diretto dall'istruzione di Steve Quinn, tranne per il fatto che l'ora è stata modificata nel codice. Il codice utilizzato è riportato di seguito. Si allega anche il file INO.
Il codice
// D10 = Pin CS O/P digitale
// D11 = Pin orologio O/P digitale
// D12 = Pin dati O/P digitale
//
#includere
#includere
const int numDevices = 2; // numero di MAX7219 utilizzati
const int dataPin = 12;
const int clkPin = 11;
const int csPin = 10;
LedControl lc = LedControl(dataPin, clkPin, csPin, numDevices);
// Rilascia questo codice nell'ambiente di sviluppo Arduino
#define LeftEye1 0
#define Occhio Destro1 1
#define LeftEye2 2
#define Occhio Destro2 3
#define LeftEye3 4
#define Occhio Destro3 5
#define LeftEye4 6
#define RightEye4 7
#define LeftEye5 8
#define RightEye5 9
#define LeftEye6 10
#define RightEye6 11
#define LeftEye7 12
#define RightEye7 13
#define LeftEye8 14
#define RightEye8 15
#define LeftEye9 16
#define RightEye9 17
#define LeftEye10 18
#define RightEye10 19
#define LeftEye11 20
#define RightEye11 21
#define LeftEye12 22
#define RightEye12 23
#define LeftEye13 24
#define RightEye13 25
#define LeftEye14 26
#define RightEye14 27
#define LeftEye15 28
#define RightEye15 29
#define LeftEye16 30
#define RightEye16 31
#define LeftEye17 32
#define RightEye17 33
#define LeftEye18 34
#define RightEye18 35
#define LeftEye19 36
#define RightEye19 37
#define LeftEye20 38
#define RightEye20 39
typedef struttura {
const unsigned char array1[8];
}
binaryArrayType;
binaryArrayType binaryArray[40] =
{
{ //OcchioSinistro1, 0
B01111110, B10000001, B10000001, B10011001, B10011001, B10000001, B10000001, B01111110
}, { // Occhio Destro1, 1
B01111110, B10000001, B10000001, B10011001, B10011001, B10000001, B10000001, B01111110
}, { //OcchioSinistro2, 2
B00000000, B00111100, B01000010, B01011010, B01011010, B01000010, B00111100, B00000000
}, { // Occhio Destro2, 3
B00000000, B00111100, B01000010, B01011010, B01011010, B01000010, B00111100, B00000000
}, { //OcchioSinistro3, 4
B00000000, B00111100, B00100100, B00110100, B00110100, B00100100, B00111100, B00000000
}, { // Occhio Destro3, 5
B00000000, B00111100, B00100100, B00110100, B00110100, B00100100, B00111100, B00000000
}, { // Occhio sinistro4, 6
B00011000, B00011000, B00011000, B00011000, B00011000, B00011000, B00011000, B00000000
}, { // Occhio destro4, 7
B00000000, B00011000, B00011000, B00011000, B00011000, B00011000, B00011000, B00011000
}, { //OcchioSinistro5, 8
B01111110, B10000001, B10000001, B10011001, B10011001, B10000001, B1000001, B01111100
}, { //Occhiodestro5, 9
B01111100, B1000001, B10000001, B10011001, B10011001, B10000001, B10000001, B01111110
}, { // Occhio sinistro6, 10
B01111110, B10000001, B10000001, B10011001, B10011001, B1000001, B10000100, B01111000
}, { // Occhio destro6, 11
B01111000, B10000100, B1000001, B10011001, B10011001, B10000001, B10000001, B01111110
}, { //OcchioSinistro7, 12
B01111110, B11000001, B10000001, B10011001, B10011010, B10000100, B10001000, B01110000
}, { // Occhio destro7, 13
B01110000, B10001000, B10000100, B10011010, B10011001, B10000001, B11000001, B01111110
}, { //OcchioSinistro8, 14
B00111110, B01000001, B10000001, B10011001, B10011010, B10000100, B01001000, B00110000
}, { // Occhio destro8, 15
B00110000, B01001000, B10000100, B10011010, B10011001, B10000001, B01000001, B00111110
}, { //OcchioSinistro9, 16
B01111110, B10000001, B10000001, B10011001, B10011001, B10000001, B10000001, B01111110
}, { //Occhiodestro9, 17
B01111110, B10000001, B10000001, B10011001, B10011001, B10000001, B10000001, B01111110
}, { // Occhio sinistro10, 18
B01111110, B10000001, B10000001, B10000001, B10011001, B10011001, B10000001, B01111110
}, { // Occhio destro10, 19
B01111110, B10000001, B10000001, B10000001, B10011001, B10011001, B10000001, B01111110
}, { //Occhio sinistro11, 20
B01111110, B10000001, B10000001, B10000001, B10011001, B10011001, B10000001, B01111110
}, { // Occhio destro11, 21
B01111110, B10000001, B10000001, B10000001, B10011001, B10011001, B10000001, B01111110
}, { // Occhio Sinistro12, 22
B01111110, B10000001, B10000001, B10000001, B10000001, B10011001, B10011001, B01111110
}, { // Occhio destro12, 23
B01111110, B10000001, B10000001, B10000001, B10000001, B10011001, B10011001, B01111110
}, { // Occhio sinistro13, 24
B01111110, B10000001, B10000001, B10000001, B10000001, B10000001, B10011001, B01111110
}, { // Occhio destro13, 25
B01111110, B10000001, B10000001, B10000001, B10000001, B10000001, B10011001, B01111110
}, { // Occhio sinistro14, 26
B00000000, B00111100, B01000010, B01000010, B01000010, B01011010, B00111100, B00000000
}, { // Occhio destro14, 27
B00000000, B00111100, B01000010, B01000010, B01000010, B01011010, B00111100, B00000000
}, { // Occhio sinistro15, 28
B00000000, B00111100, B00100100, B00100100, B00100100, B00111100, B00111100, B00000000
}, { // Occhio destro15, 29
B00000000, B00111100, B00100100, B00100100, B00100100, B00111100, B00111100, B00000000
}, { // Occhio sinistro16, 30
B00011000, B00011000, B00011000, B00011000, B00011000, B00011000, B00011000, B00000000
}, { // Occhio destro16, 31
B00000000, B00011000, B00011000, B00011000, B00011000, B00011000, B00011000, B00011000
}, { // Occhio sinistro17, 32
B00010000, B00010000, B00010000, B00010000, B00010000, B00010000, B00010000, B00000000
}, { // Occhio destro17, 33
B00000000, B00010000, B00010000, B00010000, B00010000, B00010000, B00010000, B00010000
}, { // Occhio sinistro18, 34
B01111110, B10000001, B10000001, B10000001, B10000001, B10000001, B10001101, B01111110
}, { // Occhio destro18, 35
B01111110, B10000001, B10000001, B10000001, B10000001, B10000001, B10001101, B01111110
}, { // Occhio sinistro19, 36
B01111110, B10000001, B10000001, B10000001, B10000001, B10000001, B10000111, B01111110
}, { // Occhio destro19, 37
B01111110, B10000001, B10000001, B10000001, B10000001, B10000001, B10000111, B01111110
}, { // Occhio sinistro20, 38
B01111110, B10000001, B10000001, B10000001, B10000001, B10000011, B10000011, B01111110
}, { // Occhio destro20, 39
B01111110, B10000001, B10000001, B10000001, B10000001, B10000011, B10000011, B01111110
}
};
typedef struttura {
int frameCount; // puntatore indice in binaryArray che significa frame di animazione
int frameDelay; // Ritardo approssimativo in MilliSeconds per mantenere la visualizzazione di questo fotogramma animato
int frameLuminanza; // 0 … 15, L'intensità della matrice led per un dato frame
} frameType;
frameType movie =
{
// Battito di ciglia
{OcchioSinistro1, 1000, 1}, {OcchioSinistro2, 5, 1}, {OcchioSinistro3, 10, 1}, {OcchioSinistro4, 10, 1}, {OcchioSinistro17, 100, 1}, {OcchioSinistro4, 10, 1}, {OcchioSinistro3, 10, 1}, {OcchioSinistro2, 5, 1}, // Di nuovo tutto largo
{Occhio Sinistro1, 1500, 2}, // Cipiglio
{OcchioSinistro5, 5, 3}, {OcchioSinistro6, 5, 4}, {OcchioSinistro7, 5, 5}, {OcchioSinistro8, 1000, 11}, {OcchioSinistro7, 5, 5}, {OcchioSinistro6, 5, 4}, {OcchioSinistro5, 5, 3}
};
void delayMillis(int millisecondi)
{
for (int i = 0; i < millisecondi; i++)
ritardoMicrosecondi(1000);
}
void setup() {
for (int x = 0; x <numDevices; x++) {
lc.shutdown(x, falso); //Il MAX72XX è in modalità di risparmio energetico all'avvio
lc.setIntensity(x, 1); // Imposta la luminosità al valore predefinito
lc.clearDisplay(x); // e cancella il display
}
}
ciclo vuoto() {
lc.setIntensity(0, 3);
lc.setIntensity(1, 3);
mentre (vero) {
for (int a = 0; a < (sizeof(film) / sizeof(frameType)); a++)
{
for (int i = 0; i < 8; i++)
{
lc.setRow(0, i, binaryArray[movie[a].frameCount].array1);
lc.setRow(1, i, binaryArray[movie[a].frameCount + 1].array1);
lc.setIntensity(0, movie[a].frameLuminance);
lc.setIntensity(1, movie[a].frameLuminance);
}
delayMillis(movie[a].frameDelay);
}
}
}
Passaggio 3: assemblaggio parte 2
Una volta installato e funzionante l'IDE Arduino, è necessario copiare il codice e compilare/verificare il codice. Quando si compila il codice, il file HEX viene creato nella cartella TEMP del computer. Prima di chiudere l'IDE Arduino, puoi copiare il file HEX dalla cartella temp e questo file è ciò che dobbiamo masterizzare nel chip ATmega8 per farlo funzionare.
Durante la compilazione del codice, ho scelto la scheda come “Arduino NG o Older” e il processore come “ATmega8” e dopo la compilazione ho copiato il file HEX dalla Cartella Temp del computer, prima di chiudere l'IDE di Arduino.
Questo file HEX è stato masterizzato sul chip ATmega8 con un masterizzatore AVR esterno. Ho usato il software "Extreme Burner_AVR" e una scheda AVR Burner per lo scopo. In allegato l'immagine della scheda. Puoi utilizzare qualsiasi software di programmazione AVR con cui sei a tuo agio.
Il motivo per l'utilizzo di un programmatore esterno era che non volevo masterizzare il bootloader sui chip Atmega8 e senza il bootloader, non avrebbero funzionato sulla normale scheda Arduino o con l'IDE Arduion. È abbastanza facile estrarre i file HEX una volta compilato il codice con l'IDE di Arduino ed è quello che ho fatto.
NOTA
È MOLTO IMPORTANTE scegliere le impostazioni corrette del bit del fusibile quando si utilizza un programmatore esterno.
In questo caso, poiché non stiamo utilizzando un cristallo esterno e ci affidiamo all'orologio interno del chip ATmega8, è importante configurare i bit del fusibile di conseguenza. Ho scelto le seguenti impostazioni dei fusibili.
Lfuse- E4
Fusibile - D9
COSA SIGNIFICA
Significa che non stiamo usando cristalli o risonatori esterni
L'orologio è impostato su un orologio interno a 8 mHz
Una volta programmato il chip ATmega8, è arrivato il momento di assemblare il progetto e testarlo.
Passaggio 4: collegare gli occhi
La matrice LED MAX7219 8x8 è stata collegata come di seguito.
ATmega8 Board TO MAX7219 Matrix
Pin IO D10 A PIN CS
IO Pin D11 PER CLK PIN
Pin IO D12 A PIN DIN
VCC A VCC
GND A GND
Fare riferimento all'immagine
Passaggio 5: collegamento del sensore e del modulo PIR
Successivamente il sensore PIR è stato collegato al controller PIR
Scheda, i collegamenti sono i seguenti
Scheda controller PIR per sensore PIR
Da VCC a VCC
Da CTRL a CTRL
GND a GND
Fare riferimento al diagramma
Questa è la parte che fa accadere tutto. Il sensore PIR rileva il movimento di qualsiasi creatura a sangue caldo e accende l'alimentazione a tutti i diversi circuiti/moduli. il tempo sul sensore PIR è stato regolato secondo il requisito e in questo caso è di circa 40 - 45 secondi. Invia 5 volt DC a tutti i circuiti ad esso collegati per un periodo di circa 40 -45 secondi.
Passaggio 6: il lettore MP3 e l'amplificatore
AVANTI il modulo lettore MP3 e il modulo amplificatore.
Il lettore MP3 che ho utilizzato non ha bisogno di premere alcun pulsante per accendersi, nel momento in cui gli viene fornita la giusta tensione, inizia automaticamente la riproduzione. Mi serviva solo una traccia, quindi ho trovato la scheda SD con la memoria più bassa che potevo (4 GB perché è quasi impossibile ottenere una scheda con capacità inferiore in questi giorni). I suoni li ho scaricati da internet, infatti c'erano una serie di effetti sonori che sono stati scaricati e sono stati tutti compilati per fare una singola traccia MP3 usando il software di sound editor. Ho usato "Wave Editor" e alla fine ho caricato questa unica traccia sulla scheda SD. La scheda SD è stata montata nel modulo lettore MP3 e l'uscita è stata collegata al modulo amplificatore per ottenere il suono dall'altoparlante.
Fare riferimento all'immagine
Il chip amplificatore LM386 richiede pochissimi componenti esterni e offre un suono abbastanza buono da piccoli altoparlanti. Il circuito è abbastanza facile da assemblare di una perfboard e mi ci sono voluti circa 15-20 minuti per assemblare questo. L'immagine è abbastanza esplicativa.
Fase 7: L'Assemblea Finale
Prima di inserire tutto nell'armadio, ho voluto testare tutto e disporre i moduli secondo necessità e realizzare i collegamenti finali. Dopo ero soddisfatto del funzionamento delle parti. Li ho fissati all'interno della custodia in cartone realizzata appositamente.
Allego un video dopo l'assemblaggio finale dell'elica.
Fase 8: LA RECINZIONE
Il recinto
La custodia è stata ricavata da una vecchia scatola di cartone, dipinta di rosso. Il posto per gli occhi e il sensore PIR è stato tagliato usando una lama affilata. Una stampa del teschio è stata incollata sulla scatola e sugli occhi, ecc.ritagliato di conseguenza e il contorno è stato ridisegnato con un pennarello indelebile nero. Ho ricavato i capelli da bottiglie d'acqua scartate, li ho tagliati a strisce sottili e li ho incollati con la colla a caldo sulla testa e sui lati. Ho fissato 2 LED cambia colore sui lati e questi sono stati collegati all'uscita dalla scheda del controller PIR.
Sono stati realizzati dei piccoli fori per l'altoparlante e tutti gli elementi sono stati fissati con l'aiuto di colla a caldo all'interno della scatola. Il cavo di alimentazione è stato estratto dal retro della scatola e questo è tutto.
Spero che ti diverta a realizzare questo oggetto di Halloween per i bambini !!
Presto allegherò la clip audio utilizzata in questo progetto.
Buon Halloween a tutti!!
Consigliato:
Una zucca di Halloween IoT - LED di controllo con un Arduino MKR1000 e l'app Blynk ???: 4 passaggi (con immagini)
Una zucca di Halloween IoT | Controlla i LED con un Arduino MKR1000 e l'app Blynk ???: Ciao a tutti, qualche settimana fa era Halloween e seguendo la tradizione ho ritagliato una bella zucca per il mio balcone. Ma avendo la mia zucca all'aperto, mi sono reso conto che era abbastanza fastidioso dover uscire tutte le sere per accendere la candela. E io
AI Aids Eyes (un sistema di visione artificiale per ricordare agli operatori di indossare occhiali di sicurezza): 4 passaggi
AI Aids Eyes (un sistema di visione artificiale per ricordare agli operatori di indossare occhiali di sicurezza): ecco una demo del sistema. Quando il sistema rileva che un trapano è stato prelevato, emetterà automaticamente un avviso di occhiali di sicurezza. Per rappresentare la presenza delle avvertenze sugli occhiali di sicurezza, il bordo dell'immagine RGB è colorato in rosso nella demo v
SimpleClean Psycho Pass Dominator Prop: 6 passaggi
SimpleClean Psycho Pass Dominator Prop: questo è il mio primo tentativo di creare oggetti di scena. Sono riuscito a farlo uscire di corsa in una settimana di vacanze scolastiche, costruendo sul posto. Questo puntello dominatore per essere in grado di trasformarsi da un paralizzatore non letale nella modalità Lethal Eliminator, gioca l'appropriato
Motion Follow Animatronics Eyes: 8 passaggi (con immagini)
Motion Follow Animatronics Eyes: questo progetto Arduino utilizza un sensore di flusso ottico (ADNS3080) per catturare il movimento. Quindi traduci i dati per spostare i servo facendo sembrare che gli occhi stiano seguendo un oggetto in movimento. Questa non è una costruzione facile. Richiede la stampa 3D, la saldatura, alcune tecniche generali
Canto busto prop: 7 passaggi
Singing Bust Prop: ti sei mai chiesto come funzionassero i Singing Busts nella Haunted Mansion o addirittura volevi provare a farli bene questo Instructable ti mostrerà come realizzarli ed è davvero semplice