Sommario:

Rilevatore di zombi: 3 passaggi
Rilevatore di zombi: 3 passaggi

Video: Rilevatore di zombi: 3 passaggi

Video: Rilevatore di zombi: 3 passaggi
Video: GEMELLI SEPARATI DALLA NASCITA!! | Resident Evil 3 #3 2024, Dicembre
Anonim
Rilevatore di zombi
Rilevatore di zombi

Quando andavo al college lavoravo alla Knott's Berry Farm e quando Halloween è caduto in un fine settimana abbiamo attirato una grande folla. Ci siamo tutti vestiti e ci siamo divertiti un po' e la maggior parte dei clienti ha apprezzato lo sforzo. Una delle "coin girls" in cui ho lavorato è arrivata perfettamente vestita come Morticia Addams. All'epoca il look gotico non era stato inventato (a meno che non si contasse Moona Lisa), quindi mentre andava al lavoro ha ricevuto un'esagerata alzata di occhi da un ragazzo in macchina accanto a lei al semaforo. Lei lo fissò di rimando e gli fece un grande sorriso – zanne e tutto il resto. Apparentemente lo sguardo sul suo volto era impagabile.

Con lo stesso spirito ho pensato di salvare questo post fino ad Halloween, ma poi mi sono ricordato che l'Apocalisse Zombie potrebbe accadere in qualsiasi momento. Quando l'ho mostrato ai nipoti, ho detto loro che rileva il loro battito se sono vivi, ma nessun battito significa che erano uno zombi. Può essere usato come gioco di eliminazione (una specie di strana versione di sedie musicali) se hai una folla. Un modo in cui lo giocavamo era passarlo intorno al tavolo. Se hai ricevuto una risposta "umana" hai ricevuto una moneta, altrimenti hai pagato una moneta. Ai bambini piacciono sempre i giochi che coinvolgono le monete.

Passaggio 1: hardware

Hardware
Hardware
Hardware
Hardware
Hardware
Hardware
Hardware
Hardware

Lo schema è mostrato nel diagramma incluso sopra. La parte "rilevatore" è un semplice interruttore tattile capacitivo comunemente pubblicizzato come TTP223. Ho preso un set di 10 per quasi niente, ma c'è un po' di problemi con loro. I moduli sono pubblicizzati come funzionanti da 2,5 volt a 5 volt, ma non lo fanno. Quello che ho scoperto è che qualsiasi cosa inferiore a 4,75 volt ha causato il blocco del modulo nello stato "On". Volevo eseguire l'intero progetto utilizzando un paio di batterie AAA (circa 3 volt), quindi ho dovuto capire il problema. Dopo aver controllato il chip sul modulo, ho determinato che la coppia vuota di piazzole di saldatura dovrebbe avere un condensatore che determina la sensibilità. L'intervallo consigliato è compreso tra 0 e 50 pf con la sensibilità che aumenta al diminuire della capacità. Non sono riuscito a farlo funzionare cortocircuitando i pad (0pf) ma ha funzionato bene con i condensatori da 22pf e 47pf che ho. Con il valore 22pf ho fatto funzionare facilmente il modulo a 2,5 volt.

L'altro componente principale di questo progetto (oltre al microcontrollore PIC) è una matrice LED 8x8. Originariamente usavo una matrice semplice, ma dovevo aggiungere una coppia di registri a scorrimento per indirizzare le righe e le colonne e dovevo multiplexarle per ottenere una visualizzazione completa. Ho quindi scoperto un modulo LED economico collegato a un circuito stampato con un chip driver display LED MAX7219. Il chip del driver accetta comandi seriali che poi utilizza per attivare le righe e le colonne desiderate. Il chip esegue anche il multiplexing automaticamente in modo che il carico venga rimosso dal microcontrollore. Questa scoperta ha ridotto sia l'hardware che la complessità del software.

Passaggio 2: scatola del progetto

Scatola del progetto
Scatola del progetto
Scatola del progetto
Scatola del progetto

Volevo un filtro rosso traslucido per coprire la matrice LED. Avrei potuto tagliare un pezzo da un po' di plexiglas rosso che ho e poi incollarlo in una scatola del progetto, ma invece ho scelto di riutilizzarlo un po'. La scatola in cui l'ho costruito è un contenitore che una volta conteneva un mucchio di proiettili.22. La maggior parte di questi contenitori sono di plastica trasparente, ma ne ho un paio rossi. Non troppo elegante, ma ai nipoti non interessa l'eleganza.

Passaggio 3: software

Software
Software
Software
Software

Il software è piuttosto semplice. Timer0 può funzionare liberamente e il valore viene controllato ogni volta che viene rilevato il sensore tattile. Ho deciso arbitrariamente che il display Zombie sarebbe apparso se il conteggio Timer0 è inferiore a 100. Dato che Timer0 è a 8 bit, ciò significa che il display "umano" avverrà per valori da 100-255. Questo è un rapporto di circa 3:2 e può essere facilmente modificato nel software.

Quando viene rilevato un tocco e determinato un tipo di display, viene chiamata la routine appropriata per inviare i dati alla matrice LED. Per fare ciò, vengono inviati una serie di comandi come indirizzo a 8 bit e dati a 8 bit. I registri che possono essere indirizzati sono definiti nella parte anteriore dell'elenco. Un paio di essi vengono utilizzati per inizializzare la matrice (es.: luminosità) e uno viene utilizzato per accendere/spegnere l'intera matrice. La matrice può funzionare in una modalità in cui BCD (decimale codificato binario) visualizzerà il numero appropriato. La routine Init lo disattiva in modo da poter controllare i singoli LED. L'altra parte dell'inizializzazione consiste nell'impostare il limite di colonna. Vogliamo tutte e otto le colonne in modo che il limite di scansione sia impostato su 7.

Ci sono otto registri che vengono utilizzati per abilitare i singoli LED desiderati: un registro per ogni colonna. Un "1" in un bit di dati abiliterà quel LED di colonna. Come accennato in precedenza, nel software non è richiesto il multiplexing. Il display "umano" è un cuore che batte. Dopo che i modelli di bit corretti sono stati inviati alla matrice, il battito viene simulato semplicemente accendendo/spegnendo la matrice (con ritardi intermedi) finché il sensore tattile è attivo. La routine Zombie mostra un motivo fisso a "X" finché il tocco non viene rimosso.

Questo è tutto per questo post. Dai un'occhiata ai miei altri progetti di elettronica su: www.boomerrules.wordpress.com

Consigliato: