Daftar Isi:

Detektor Zombie: 3 Langkah
Detektor Zombie: 3 Langkah

Video: Detektor Zombie: 3 Langkah

Video: Detektor Zombie: 3 Langkah
Video: ArmA 3 - Zombies & Demons: The Underpass 2024, Juli
Anonim
Detektor Zombie
Detektor Zombie

Ketika saya kuliah, saya bekerja di Knott's Berry Farm dan ketika Halloween jatuh pada akhir pekan, kami menarik banyak orang. Kami semua berdandan dan bersenang-senang dengannya dan sebagian besar pelanggan menghargai upaya itu. Salah satu "gadis koin" tempat saya bekerja datang dengan gaya sempurna sebagai Morticia Addams. Saat itu tampilan Goth belum ditemukan (kecuali jika Anda menghitung Moona Lisa) sehingga dalam perjalanannya ke tempat kerja dia mendapat perhatian yang berlebihan dari seorang pria di mobil di sebelahnya di lampu merah. Dia balas menatapnya dan memberinya senyum lebar – taring dan sebagainya. Rupanya raut wajahnya tak ternilai harganya.

Dalam semangat yang sama saya berpikir untuk menyimpan posting ini sampai sekitar Halloween tetapi kemudian saya ingat bahwa Zombie Apocalypse bisa terjadi kapan saja. Ketika saya menunjukkan ini kepada cucu-cucu saya, saya memberi tahu mereka bahwa itu mendeteksi denyut nadi mereka jika mereka hidup tetapi tidak ada denyut nadi yang berarti mereka adalah Zombie. Ini dapat digunakan sebagai permainan eliminasi (semacam versi kursi musik yang aneh) jika Anda memiliki kerumunan. Salah satu cara kami memainkannya adalah dengan mengopernya ke sekeliling meja. Jika Anda mendapat respons "manusia", Anda mendapat koin, jika tidak, Anda membayar koin. Anak-anak selalu menyukai permainan yang melibatkan koin.

Langkah 1: Perangkat Keras

Perangkat keras
Perangkat keras
Perangkat keras
Perangkat keras
Perangkat keras
Perangkat keras
Perangkat keras
Perangkat keras

Skema ditunjukkan dalam diagram yang disertakan di atas. Bagian "detektor" adalah sakelar sentuh kapasitif sederhana yang biasa diiklankan sebagai TTP223. Saya mengambil satu set 10 untuk apa-apa tapi ada sedikit masalah dengan mereka. Modul diiklankan bekerja dari 2,5 volt hingga 5 volt tetapi tidak. Apa yang saya temukan adalah bahwa apa pun yang kurang dari 4,75 volt menyebabkan modul terkunci dalam status "Aktif". Saya ingin menjalankan seluruh proyek menggunakan sepasang baterai AAA (sekitar 3 volt) jadi saya harus mencari tahu masalahnya. Setelah memeriksa chip pada modul, saya menentukan bahwa sepasang bantalan solder kosong seharusnya memiliki kapasitor yang menentukan sensitivitas. Rentang yang direkomendasikan adalah dari 0 hingga 50pf dengan sensitivitas yang meningkat saat kapasitansi berkurang. Saya tidak bisa membuatnya bekerja dengan menyingkat bantalan (0pf) tetapi bekerja dengan baik dengan kapasitor 22pf dan 47pf yang saya miliki. Dengan nilai 22pf saya dengan mudah membuat modul bekerja pada 2,5 volt.

Komponen utama lain dari proyek ini (selain mikrokontroler PIC) adalah matriks LED 8x8. Awalnya saya menggunakan matriks biasa tetapi harus menambahkan sepasang register geser untuk menangani baris dan kolom dan harus melipatgandakannya untuk mendapatkan tampilan yang lengkap. Saya kemudian menemukan modul LED murah yang terpasang pada papan sirkuit dengan chip driver tampilan LED MAX7219. Chip driver menerima perintah serial yang kemudian digunakan untuk mengaktifkan baris dan kolom yang diinginkan. Chip juga melakukan multiplexing secara otomatis sehingga beban dihilangkan dari mikrokontroler. Penemuan itu mengurangi kompleksitas perangkat keras dan perangkat lunak.

Langkah 2: Kotak Proyek

Kotak Proyek
Kotak Proyek
Kotak Proyek
Kotak Proyek

Saya ingin filter merah transparan untuk menutupi matriks LED. Saya bisa saja memotong sepotong Plexiglas merah yang saya miliki dan kemudian menempelkannya ke dalam kotak proyek tetapi memilih untuk melakukan sedikit tujuan ulang sebagai gantinya. Kotak tempat saya membangunnya adalah wadah yang pernah menampung banyak peluru.22. Sebagian besar wadah ini adalah plastik bening tetapi saya memiliki beberapa yang berwarna merah. Tidak terlalu elegan tapi cucu tidak peduli dengan elegan.

Langkah 3: Perangkat Lunak

Perangkat lunak
Perangkat lunak
Perangkat lunak
Perangkat lunak

Perangkat lunak ini cukup sederhana. Timer0 diizinkan untuk berjalan bebas dan nilainya diperiksa setiap kali sensor sentuh terdeteksi. Saya sewenang-wenang memutuskan bahwa tampilan Zombie akan muncul jika hitungan Timer0 kurang dari 100. Mengingat Timer0 adalah 8-bit, itu berarti bahwa tampilan "manusia" akan terjadi untuk nilai dari 100-255. Itu rasio sekitar 3:2 dan dapat dengan mudah diubah dalam perangkat lunak.

Ketika sentuhan terdeteksi dan jenis tampilan ditentukan, rutinitas yang sesuai dipanggil untuk mengirim data ke matriks LED. Untuk melakukan ini, serangkaian perintah dikirim sebagai alamat 8-bit dan data 8-bit. Register-register yang dapat dialamatkan ditentukan di bagian depan daftar. Beberapa dari mereka digunakan untuk menginisialisasi matriks (misalnya: kecerahan) dan satu digunakan untuk menghidupkan/mematikan seluruh matriks. Matriks dapat beroperasi dalam mode di mana BCD (kode biner desimal) akan menampilkan nomor yang sesuai. Rutin Init mematikannya sehingga kami dapat mengontrol masing-masing LED. Bagian lain dari inisialisasi adalah mengatur batas kolom. Kami ingin semua delapan kolom sehingga batas pemindaian diatur ke 7.

Ada delapan register yang digunakan untuk mengaktifkan LED individual yang diinginkan – satu register untuk setiap kolom. A "1" dalam bit data akan mengaktifkan LED kolom itu. Seperti disebutkan sebelumnya, tidak diperlukan multiplexing dalam perangkat lunak. Tampilan "manusia" adalah jantung yang berdetak. Setelah pola bit yang tepat dikirim ke matriks, pemukulan disimulasikan hanya dengan menghidupkan/mematikan matriks (dengan penundaan di antaranya) selama sensor sentuh aktif. Rutinitas Zombie menampilkan pola "X" tetap hingga sentuhan dihapus.

Itu saja untuk posting ini. Lihat proyek elektronik saya yang lain di: www.boomerrules.wordpress.com

Direkomendasikan: