Tartalomjegyzék:

Zombi detektor: 3 lépés
Zombi detektor: 3 lépés

Videó: Zombi detektor: 3 lépés

Videó: Zombi detektor: 3 lépés
Videó: ArmA 3 - Zombies & Demons: The Underpass 2024, Július
Anonim
Zombi detektor
Zombi detektor

Amikor egyetemre jártam, a Knott bogyós farmján dolgoztam, és amikor a hétvégére esett a Halloween, nagy tömeget vonztunk. Mindannyian felöltöztünk és szórakoztunk rajta, és a legtöbb vásárló értékelte az erőfeszítést. Az egyik „érmés lány”, ahol dolgoztam, tökéletes stílusban érkezett, mint Morticia Addams. Akkor még nem találták fel a gót megjelenést (hacsak nem számítottad Moona Lisát), így munkába menet túlzott szemforgatást kapott a mellette ülő kocsitól egy féklámpánál. A nő visszanézett rá, és szélesen elmosolyodott - agyarai és minden. Láthatóan arckifejezése megfizethetetlen volt.

Ugyanebben a szellemben gondoltam arra, hogy ezt a bejegyzést valamikor Halloween környékére elmentem, de aztán eszembe jutott, hogy a Zombi Apokalipszis bármikor megtörténhet. Amikor megmutattam ezt az unokáknak, azt mondtam nekik, hogy érzékeli a pulzusukat, ha élnek, de az impulzus nem azt jelenti, hogy zombik. Használható eliminációs játékként (a zenei székek furcsa változata), ha tömeg van. Az egyik módja annak, hogy játszottunk, az volt, hogy körbeadtuk az asztalon. Ha „emberi” választ kaptál, érmét kaptál, ha nem, akkor érmét fizettél. A gyerekek mindig szeretik az érméket tartalmazó játékokat.

1. lépés: Hardver

Hardver
Hardver
Hardver
Hardver
Hardver
Hardver
Hardver
Hardver

A vázlat a fenti diagramon látható. Az „érzékelő” rész egy egyszerű kapacitív érintőkapcsoló, amelyet általában TTP223 néven hirdetnek. Összeszedtem egy 10 -es készletet a semmiért, de van egy kis probléma velük. A modulok 2,5 és 5 volt között működnek, de nem. Azt találtam, hogy 4,75 voltnál kisebb feszültség hatására a modul „Be” állapotban reteszelődött. Az egész projektet le akartam futtatni egy pár AAA elemmel (kb. 3 volt), ezért ki kellett találnom a problémát. Miután megnéztem a chipet a modulon, megállapítottam, hogy az üres forrasztópárnák kondenzátorral rendelkeznek, amely meghatározza az érzékenységet. Az ajánlott tartomány 0 és 50 pf között van, az érzékenység a kapacitás csökkenésével nő. Nem tudtam működésbe hozni a párnák rövidre zárásával (0pf), de a 22pf és 47pf kondenzátorokkal jól működött. A 22pf értékkel könnyedén rávettem a modult 2,5 voltos feszültségre.

A projekt másik fő összetevője (a PIC mikrokontroller kivételével) egy 8x8 LED -es mátrix. Eredetileg sima mátrixot használtam, de hozzá kellett adnom egy pár shift regisztert a sorok és oszlopok kezeléséhez, és multiplexelnem kellett őket a teljes megjelenítés érdekében. Aztán felfedeztem egy olcsó LED -modult, amelyet egy MAX7219 LED -es kijelző illesztőprogram -chiptel ellátott áramköri lapra erősítettek. Az illesztőprogram chipje soros parancsokat fogad el, amelyekkel a kívánt sorokat és oszlopokat kapcsolja be. A chip automatikusan elvégzi a multiplexelést is, így a terhelés megszűnik a mikrokontrollerről. Ez a felfedezés csökkentette a hardver és a szoftver összetettségét.

2. lépés: Projektdoboz

Projektdoboz
Projektdoboz
Projektdoboz
Projektdoboz

Átlátszó piros szűrőt akartam, amely lefedi a LED -mátrixot. Vághattam volna egy darabot néhány piros plexiből, és megragaszthattam volna egy projektdobozba, de úgy döntöttem, hogy inkább egy kicsit újratervezem. A doboz, amibe építettem, egy konténer, amely egykor egy rakás,.22 golyót tartott. A legtöbb ilyen tartály átlátszó műanyag, de van egy piros színű. Nem túl elegáns, de az unokákat nem érdekli az elegáns.

3. lépés: Szoftver

Szoftver
Szoftver
Szoftver
Szoftver

A szoftver meglehetősen egyszerű. A Timer0 szabadon futhat, és az értéket az érintésérzékelő észlelésekor ellenőrzi. Önkényesen úgy döntöttem, hogy a Zombie kijelző akkor jelenik meg, ha a Timer0 száma kevesebb, mint 100. Tekintettel arra, hogy a Timer0 8 bites, ez azt jelenti, hogy az „emberi” kijelző a 100-255 közötti értékeknél fog megjelenni. Ez az arány körülbelül 3: 2, és könnyen megváltoztatható a szoftverben.

Érintés észlelésekor és a kijelző típusának meghatározásakor a megfelelő rutin meghívásra kerül, hogy adatokat küldjön a LED mátrixba. Ehhez egy sor parancsot küldenek 8 bites címként és 8 bites adatként. A címzett nyilvántartások a lista elején találhatók. Ezek közül párat a mátrix inicializálására használnak (pl.: fényerő), egyet pedig a teljes mátrix be-/kikapcsolására. A mátrix olyan üzemmódban működhet, ahol a BCD (binárisan kódolt decimális) megjeleníti a megfelelő számot. Az Init rutin kikapcsolja, hogy az egyes LED -eket vezérelni tudjuk. Az inicializálás másik része az oszlopkorlát beállítása. Mind a nyolc oszlopot szeretnénk, így a szkennelési korlát 7 -re van állítva.

Nyolc regiszter használható a kívánt egyedi LED -ek engedélyezésére - egy regiszter minden oszlophoz. Az adatbitben lévő „1” lehetővé teszi az oszlop LED -ét. Mint korábban említettük, a szoftverben nincs szükség multiplexelésre. Az „emberi” kijelző egy dobogó szív. Miután a megfelelő bitmintákat elküldte a mátrixnak, a verést szimulálja a mátrix egyszerű be-/kikapcsolásával (késleltetésekkel) mindaddig, amíg az érintésérzékelő aktív. A Zombie rutin rögzített „X” mintát jelenít meg az érintés eltávolításáig.

Ennyi a bejegyzéshez. Nézze meg a többi elektronikai projektemet is: www.boomerrules.wordpress.com

Ajánlott: