Sadržaj:

Detektor zombija: 3 koraka
Detektor zombija: 3 koraka

Video: Detektor zombija: 3 koraka

Video: Detektor zombija: 3 koraka
Video: Бюро. 3 сезон. Серии 6-10. Триллер. Лучшие сериалы 2024, Juli
Anonim
Zombie Detector
Zombie Detector

Kad sam išao na fakultet, radio sam na Knottovoj berry farmi, a kad je Halloween pao na vikend, okupili smo veliku publiku. Svi smo se odjenuli i zabavili, a većina kupaca cijenila je trud. Jedna od "kovanica" u kojima sam radila došla je savršeno stilizirana kao Morticia Addams. Tada gotski izgled nije bio izmišljen (osim ako niste računali Moonu Lisu) pa je na putu do posla dobila pretjerano prevrtanje očima od tipa u autu pored nje na stop-svjetlu. Ona mu uzvrati pogled i uputi mu veliki osmijeh - očnjake i sve to. Očigledno je da je izraz njegovog lica bio neprocjenjiv.

U istom duhu razmišljao sam o tome da sačuvam ovaj post do negdje oko Noći vještica, ali tada sam se sjetio da se Zombi apokalipsa mogla dogoditi u bilo kojem trenutku. Kad sam to pokazao unucima, rekao sam im da detektira njihov puls ako su živi, ali nijedan puls nije značio da su zombi. Može se koristiti kao eliminacijska igra (neka vrsta čudne verzije muzičkih stolica) ako imate gužvu. Jedan od načina na koji smo igrali je da ga prebacimo oko stola. Ako ste dobili "ljudski" odgovor, dobili ste novčić, ako niste, platili ste ga. Djeca uvijek vole igre s novčićima.

Korak 1: Hardver

Hardver
Hardver
Hardver
Hardver
Hardver
Hardver
Hardver
Hardver

Shema je prikazana na gornjem dijagramu. Dio "detektora" je jednostavan kapacitivni prekidač na dodir koji se obično reklamira kao TTP223. Uzeo sam set od 10 za gotovo ništa, ali postoji mali problem s njima. Moduli su oglašeni kao da rade od 2,5 do 5 volti, ali ne rade. Ono što sam otkrio je da je bilo što manje od 4,75 volti uzrokovalo blokiranje modula u stanju "Uključeno". Htio sam pokrenuti cijeli projekt koristeći par AAA baterija (oko 3 volta) pa sam morao shvatiti problem. Nakon što sam provjerio čip na modulu, utvrdio sam da bi slijepi par lemnih ploča trebao imati kondenzator koji određuje osjetljivost. Preporučeni raspon je od 0 do 50 pf, pri čemu se osjetljivost povećava kako se smanjuje kapacitet. Nisam ga mogao natjerati da radi kratkim spojevima (0pf), ali dobro je funkcionirao s kondenzatorima od 22 i 47pf koje imam. S vrijednošću od 22 pf lako sam postigao da modul radi na 2,5 volta.

Druga glavna komponenta ovog projekta (osim PIC mikrokontrolera) je LED matrica 8x8. U početku sam koristio običnu matricu, ali sam morao dodati par registara pomaka za adresiranje redova i stupaca i morao sam ih multipleksirati da bih dobio potpuni prikaz. Potom sam otkrio jeftin LED modul koji je došao pričvršćen na ploču s čipom upravljačkog programa LED ekrana MAX7219. Čip upravljačkog programa prihvaća serijske naredbe koje zatim koristi za uključivanje željenih redaka i stupaca. Čip takođe vrši multipleksiranje automatski tako da se teret uklanja sa mikrokontrolera. To otkriće smanjilo je i hardversku i softversku složenost.

Korak 2: Projektna kutija

Project Box
Project Box
Project Box
Project Box

Htio sam prozirni crveni filter koji prekriva LED matricu. Mogao sam izrezati komad iz nekog crvenog pleksiglasa koji imam, a zatim ga zalijepiti u kutiju za projekt, ali sam umjesto toga odlučio napraviti novu namjenu. Kutija u koju sam je ugradio je kontejner koji je nekad držao hrpu.22 metaka. Većina ovih posuda je od čiste plastike, ali imam nekoliko crvenih. Nije previše elegantno, ali unucima nije stalo do elegantnog.

Korak 3: Softver

Softver
Softver
Softver
Softver

Softver je prilično jednostavan. Tajmeru 0 je dozvoljeno slobodno kretanje, a vrijednost se provjerava svaki put kada se otkrije senzor dodira. Proizvoljno sam odlučio da će se Zombie zaslon pojaviti ako je Timer0 broj manji od 100. S obzirom da je Timer0 8-bitni, to znači da će se "ljudski" prikaz dogoditi za vrijednosti od 100-255. To je omjer od oko 3: 2 i može se lako promijeniti u softveru.

Kada se detektira dodir i odredi vrsta prikaza, poziva se odgovarajuća rutina za slanje podataka u LED matricu. Da biste to učinili, niz naredbi se šalje kao 8-bitna adresa i 8-bitni podaci. Registri koji se mogu adresirati definirani su u prednjem dijelu popisa. Nekoliko se koristi za inicijalizaciju matrice (npr. Svjetlina), a jedna se koristi za uključivanje/isključivanje cijele matrice. Matrica može raditi u načinu rada gdje će BCD (binarno kodirana decimalna vrijednost) prikazati odgovarajući broj. Init rutina to isključuje kako bismo mogli kontrolirati pojedinačne LED diode. Drugi dio inicijalizacije je postavljanje ograničenja stupca. Želimo svih osam stupaca pa je granica skeniranja postavljena na 7.

Postoji osam registara koji se koriste za omogućavanje željenih pojedinačnih LED dioda - po jedan registar za svaku kolonu. “1” u bitu podataka omogućit će LED tog stupca. Kao što je ranije spomenuto, u softveru nije potrebno multipleksiranje. "Ljudski" ekran je srce koje kuca. Nakon što se odgovarajući matrice bitova pošalju u matricu, otkucaji se simuliraju jednostavnim uključivanjem/isključivanjem matrice (sa kašnjenjima između) sve dok je osjetnik na dodir aktivan. Zombi rutina prikazuje fiksni "X" uzorak dok se dodir ne ukloni.

To je to za ovaj post. Pogledajte i ostale moje elektroničke projekte na: www.boomerrules.wordpress.com

Preporučuje se: