This is an old revision of the document!
Dispozitivul are ca scop testarea vitezei de reactie prin intermediul unui joc inspirat din ideea clasică a jocurilor de tip „Whac-A-Mole”.
Scopul jocului este să nimerești sau să atingi (cu degetul, ciocan de jucărie sau alt obiect) gaura din care iese „viermele” cât mai repede, înainte ca acesta să dispară.
Dispozitivul poate fi folosit si in educatia copiilor care implică învățarea culorilor, literelor sau numerelor – viermii având etichete pe ei.
Tabla de joc are mai multe găuri (in cazul nostru 4), aranjate într-o rețea.
În fiecare gaură poate apărea, la întâmplare, un „vierme”
Viermele apare doar pentru o perioadă scurtă ( 1 secunda ), apoi dispare.
Jucatorul trebuie să fie rapid și atent, să „loveasca” sau să atinga gaura exact atunci când viermele apare.
Durata: jocul are o durată fixă (60 de secunde), iar scopul este obtinerea celui mai mare scor posibil.
Gradul de dificultate poate fi crescut sau scazut prin modificarea frecventei cu care apare viermele.
Modul de realizare
Se aplica cunostintele din:
Laboratorul 2- Intreruperi, rutine de tratare a intreruperilo
Laboratorul 3 - Lucru cu timere
Laboratorul 4- Utilizarea conversiei analog-dugitala,
Laborator 5 - Utilizarea comunicatiei cu un periferic prin intermediul protocolului SPI.
Placa de dezvoltare Arduino comanda aleatoriu 4 servomotoare prin intermediul a 2 drivere cu 2 canale care simuleaza iesirea din gaura a viermelui.
Viteza cu care este generata comanda de iesire a viermelui este variabila fiind reglata cu un potentiometru. Tensiunea variabila dependenta de pozitia cursorului potentiometrului este folosita de convertorul analog digital al microcontrolerului care va seta prescalarul ce da intreruperea folosita la comanda servomotoarelor.
Starile de apasat sau neapasat a celor 4 butoane sunt folosite ca semnale de intrare si daca este coincidenta intre apasare si aparitie se incrementeaza un contor.
Durata jocului este stabilita prin intermediul unui timer care valideaza selectarea aleatorie a unuia din cele 4 servomotoare . Timerul este declansat de un buton de start.
Numarul de aparitie a viermelui si a numarului de reusite se memoreaza . Aceste sunt prelucrate (se calculeza rata de reusite) si sunt afisate in timp real prin intermediul protocolului SPI la un display
* servomotor https://www.bitmi.ro/electronica/servomotor-sg90-180-grade-9g-10496.html * placuta https://www.bitmi.ro/electronica/placa-de-dezvoltare-originala-arduino-uno-rev3-11135.html * shield https://www.bitmi.ro/electronica/shield-cu-mini-breadboard-pentru-prototipuri-compatibil-arduino-uno-r3-10387.html* * butoane https://www.bitmi.ro/electronica/modul-4-butoane-compatibil-arduino-11739.html * alimentator https://www.bitmi.ro/produse?c=alimentator+5v * display https://www.bitmi.ro/modul-cu-ecran-lcd-1-8-128x160-tft-spi-serial-10996.html?gad_source=1&gbraid=0AAAAADLag-l-6kiMOONKNep48A8ls224S&gclid=Cj0KCQjwoNzABhDbARIsALfY8VMnb-XmQVW9C1-ztcAgU3pBvpWdiGxeQS6am921yAxkY5ywtsl8uXAaAnVXEALw_wcB
Componente:
Fişierele se încarcă pe wiki folosind facilitatea Add Images or other files. Namespace-ul în care se încarcă fişierele este de tipul :pm:prj20??:c? sau :pm:prj20??:c?:nume_student (dacă este cazul). Exemplu: Dumitru Alin, 331CC → :pm:prj2009:cc:dumitru_alin.