This is an old revision of the document!


BDD - Bomb Defusal Device

Introducere

Dispozitivul este in esenta un puzzle care trebuie rezolvat intr-un timp limita. Este gandit sa fie folosit in aplicatii cum ar fi evenimente de airsoft / paintball.
Inspiratia acestui dispozitiv provine din alte proiecte similare[1], Keep Talking and Nobody Explodes si Counter-Strike.

El are rolul de a aduce un plus de realism evenimentelor si a facilita scenarii de joc mai complexe.

Descriere generală

Pentru a amorsa bomba, user-ul trebuie sa introduca codul folosind tastatura matriceala.

Pentru a dezamorsa bomba, user-ul trebuie sa rezolve cele 2 puzzle-uri in timpul alocat.

Hardware Design

Lista Componente

- Arduino UNO R3
- LCD 1602 I2C
- 4x Butoane
- 6x LED-uri de diverse culori
- Tastatura Matriceala 3×4
- 2x Buzzer
- Diverse Fire / Rezistori

Diagrama hardware:
Actual Wiring:
actual_wiring_bdd.jpeg

Software Design

Dispozitivul trece prin 4 etape:

1.) Configurare initiala - se genereaza secventa de dezamorsare pentru jocul de memorie si se alege la intamplare firul de dezamorsare.
2.) Armare bomba - asteapta introducerea codului de armare.
3.) Dezamorsare bomba - incepe numaratoare inversa si se testeaza conditiile de dezamorsare.
4.) Awaiting reset - dupa ce expira timpul sau bomba este dezamorsata bomba afiseaza statusul si un prompt de resetare pentru a incepe un joc nou,

LCD-ul este controlat prin intermediul protocolului I2C. Am folosit libraria LiquidCrystal_I2C.h.
Keypad-ul este controlat prin libraria Keypad.h

Pentru a tine cont de timpul ramas pana la dezamorsare, am folosit un hardware timer configurat sa genereze o intrerupere la fiecare secunda in care este scazut timpul ramas pana la explozie si este setat un flag de reactualizare display.

Codul sursa poate fi gasit aici.

Deconectarea unui fir este realizata prin o intrerupere de tip pin change, care seteaza un flag de verificare in loop-ul principal.

Rezultate Obţinute

case_closed_bdd.jpeg case_open_bdd.jpeg

Bibliografie/Resurse

pm/prj2023/avaduva/bdd.1685381020.txt.gz · Last modified: 2023/05/29 20:23 by andrei.besliu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0