Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pm:prj2022:arosca:lung_destroyer [2022/05/27 20:10]
bogdan_marian.cazan [Software Design]
pm:prj2022:arosca:lung_destroyer [2022/05/27 22:07] (current)
bogdan_marian.cazan [Rezultate Obţinute]
Line 39: Line 39:
 === Detalii implementare si descrierea codului === === Detalii implementare si descrierea codului ===
 Am inceput implementarea proiectului prin atasarea la Arduino a ecranului LCD I2C, pentru a ii testa ca functionalitatea este ok. Am continuat apoi cu conectarea unui buton la placa, astfel incat sa pot testa etapele de realizare ale jucatorului si ale mapei. In continuare, am ajuns la folosirea senzorului de lumina in locul butonului, pentru etapa de sarit a eroului creat. M-am folosit aici de biblioteca ClosedCube_OPT3001.h,​ pentru a putea citi mai usor intensitatea luminii, masurata in lux. Astfel, am pus o limita pentru partea de sarit in valoare de 1500 de lucsi, care daca o depasesc , atunci voi sari si cat timp valoarea este activa (adica mai mare) iar jucatorul se afla deja pe un obstacol, acesta va merge pe el.In momentul in care sursa de lumina este indepartata,​ jucatorul va cadea de pe obstacol, si va pierde. Am inceput implementarea proiectului prin atasarea la Arduino a ecranului LCD I2C, pentru a ii testa ca functionalitatea este ok. Am continuat apoi cu conectarea unui buton la placa, astfel incat sa pot testa etapele de realizare ale jucatorului si ale mapei. In continuare, am ajuns la folosirea senzorului de lumina in locul butonului, pentru etapa de sarit a eroului creat. M-am folosit aici de biblioteca ClosedCube_OPT3001.h,​ pentru a putea citi mai usor intensitatea luminii, masurata in lux. Astfel, am pus o limita pentru partea de sarit in valoare de 1500 de lucsi, care daca o depasesc , atunci voi sari si cat timp valoarea este activa (adica mai mare) iar jucatorul se afla deja pe un obstacol, acesta va merge pe el.In momentul in care sursa de lumina este indepartata,​ jucatorul va cadea de pe obstacol, si va pierde.
 +
 Daca jucatorul se impiedica de un obstacol, va pierde mereu. Jocul este de tip endless, in momentul in care se pierde meciul, jocul se va relua. Daca jucatorul se impiedica de un obstacol, va pierde mereu. Jocul este de tip endless, in momentul in care se pierde meciul, jocul se va relua.
 In continuare, am adaugat buzzer-ul pentru a reda diferite sunete, de coliziune, de pierdere, de incepere a jocului, etc. Ultima parte a fost cea de reutilizare a butonului prin attachInterrupt,​ cu alt scop, anume pentru a putea schimba dificultatea jocului. Dificultatea jocului este data de viteza cu care se deplaseaza obiectele, controlata printr-o functie de delay(). Astfel, dificultatea este Hard pentru delay de 40, iar dificultatea este normala pentru un delay de 120. In continuare, am adaugat buzzer-ul pentru a reda diferite sunete, de coliziune, de pierdere, de incepere a jocului, etc. Ultima parte a fost cea de reutilizare a butonului prin attachInterrupt,​ cu alt scop, anume pentru a putea schimba dificultatea jocului. Dificultatea jocului este data de viteza cu care se deplaseaza obiectele, controlata printr-o functie de delay(). Astfel, dificultatea este Hard pentru delay de 40, iar dificultatea este normala pentru un delay de 120.
 +
 Pentru ca jucatorul sa stie pe ce dificultate se afla, am adaugat si un LED RGB, conectat prin PWD, care va fi colorat in rosu pentru Hard si in verde pentru Normal. Schimbarea de dificultate se va realiza prin apasarea butonului si strigarea efectiva a jucatorului. Dificultatea va reveni la Hard in momentul in care scorul care se afla in dreapta sus este un numar multiplu de 15. Pentru ca jucatorul sa stie pe ce dificultate se afla, am adaugat si un LED RGB, conectat prin PWD, care va fi colorat in rosu pentru Hard si in verde pentru Normal. Schimbarea de dificultate se va realiza prin apasarea butonului si strigarea efectiva a jucatorului. Dificultatea va reveni la Hard in momentul in care scorul care se afla in dreapta sus este un numar multiplu de 15.
 ===== Rezultate Obţinute ===== ===== Rezultate Obţinute =====
- +{{:​pm:​prj2022:​arosca:​cazan_poza0.jpeg?​600|}} 
-TBA +{{:​pm:​prj2022:​arosca:​cazan_poza1.jpeg?​600|}} 
 +{{:​pm:​prj2022:​arosca:​cazan_poza2.jpeg?​600|}} 
 +Link video: https://​youtu.be/​2cKj10Ttmkk
 ===== Concluzii ===== ===== Concluzii =====
-TBA+A fost un proiect destul de interesant si fun de implementat,​ si am intampinat mai multe probleme, multe dintre acestea fiind de parte hardware, cum ar fi: intelegerea functionalitatii unor componente care au o documentatie relativ putin explicata, precum si montarea si lipirea unor pini pe diversi senzori, cum ar fi senzorul de lumina, care a dat ceva emotii, fiind prima oara cand a trebuit sa lipesc de asa maniera. De asemenea, testarea a fost una destul de fun, intrucat stand la camin, senzorul de sunet testat seara a atras multe urechi in jurul camerei :). 
 +Overall, pot spune ca rezultatul obtinut este mai mult decat satisfacator,​ si chiar a iesit mult mai bine decat chiar credeam, in teorie.
  
 ===== Download ===== ===== Download =====
- +{{:​pm:​prj2022:​arosca:​proiect_pm_cazan_bogdan_marian_333cb.zip|}}
-TBA+
  
 ===== Jurnal ===== ===== Jurnal =====
Line 57: Line 60:
   * 20.04.2022 : Alegere tema   * 20.04.2022 : Alegere tema
   * 21.04.2022 : Realizare pagina pe ocw   * 21.04.2022 : Realizare pagina pe ocw
 +  * 24.04.2022: Comandarea pieselor
 +  * 11.05.2022: Inceperea efectiva a implementarii proiectului
 +  * 22.05.2022: Am terminat de implementat logica de baza a proiectului
 +  * 25.05.2022: Finalizarea micilor detalii adaugate + testare amanuntita
 +  * 27.05.2022: Finalizarea pagina de wiki de pe ocw
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
  
-<​note>​ +  * https://​ocw.cs.pub.ro/​courses/​pm/​lab/​lab6-2022 
-Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. +  * https://​ocw.cs.pub.ro/​courses/​pm/​lab/​lab2-2022 
-</note>+  ​https://ocw.cs.pub.ro/​courses/​pm/​lab/​lab3-2022 
 +  * https://​github.com/​closedcube/ClosedCube_OPT3001_Arduino
  
 <​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​ <​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​
- 
pm/prj2022/arosca/lung_destroyer.1653671423.txt.gz · Last modified: 2022/05/27 20:10 by bogdan_marian.cazan
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