Differences

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

Link to this comparison view

pm:prj2023:avaduva:vlad_petrovici [2023/05/15 17:57]
vlad.petrovici1602 [Hardware Design]
pm:prj2023:avaduva:vlad_petrovici [2023/05/31 20:38] (current)
vlad.petrovici1602 [Rezultate Obţinute]
Line 15: Line 15:
  
 ^ Tip componentă ​     ^ Număr piese         ^ ^ Tip componentă ​     ^ Număr piese         ^
-| Arduino ​   | 1     |+| Arduino ​Uno  ​| 1     |
 | Piezo Buzzer ​   | 1 | | Piezo Buzzer ​   | 1 |
-| LCD I2C    | 1     |+| LCD I2C 16x2    | 1     |
 | Buton    | 3     | | Buton    | 3     |
 | LED    | 3     | | LED    | 3     |
-Rezistență ​   ​    | +Micro Servo SG90  ​    | 
-Proximity sensor ​   | 1     |+ 
 +{{:​pm:​prj2023:​avaduva:​tinkercad_vp.png?​500|}} 
 +{{:​pm:​prj2023:​avaduva:​schematic_vp.png?​600|}}
 ===== Software Design ===== ===== Software Design =====
  
 +Mediul folosit este Arduino IDE, cu bibliotecile:​ Servo.h și LiquidCrystal_I2C.h.
  
-<note tip> +Programul va genera un cod pe care il va sugera ori prin aprinderea beculețelorori prin hint-uri offline.
-Descrierea codului aplicaţiei (firmware):​ +
-  * mediu de dezvoltare (if any) (e.g. AVR StudioCodeVisionAVR) +
-  * librării şi surse 3rd-party (e.g. Procyon AVRlib) +
-  * algoritmi şi structuri pe care plănuiţi să le implementaţi +
-  * (etapa 3) surse şi funcţii implementate +
-</​note>​+
  
-===== Rezultate Obţinute =====+User-ul va trebui să deslușească codul din indicii, apoi dacă va apăsa secvența corectă cu ajutorul butoanelor va rezolva una dintre provocări și avansează la urmatorul nivel. Este folosit în loop-ul programului o mașină de stări în funcție de nivelul la care a ajuns jucătorul. Printr-o variabilă de tip bool, se va afișa o singură dată setup-ul pentru fiecare nivel. De asemenea, input-ul este afișat pe LCD, iar greșelile sunt semnalate de buzzer, dar și trecerea la nivelul următor. Când se apasă un buton, acesta e verificat să fie cel corect din secvență.
  
-<note tip> +Acest nivel hint-uiește că utilizatorul are un mesaj, iar acesta trebuie să înțeleagă sa verifice PC-ul, adică monitorul serial. De acolo, deslușește misterul și apasă butonul corect. Acesta are 2 încercări pentru a nimeri răspunsul corect, altfel buzzer-ul va cânta o melodie de eșec, iar jocul se va reseta.
-Care au fost rezultatele obţinute ​în urma realizării proiectului vostru. +
-</​note>​+
  
-===== Concluzii =====+Nivelul 3 reprezintă folosirea motorașului pentru a indica ultimele indicii. Acesta este comandat folosing Fast PWM și biblioteca Servo.
  
-===== Download =====+Dacă eșuează, și pierde toate viețile, jocul se va reseta. Toate mesajele principale sunt afișate pe un LCD prin I2C. Pe ecran când se așteaptă input de la jucător, e afișat un cursor care blink-uiește intermitent. Acesta folosește funcția millis() pentru a se afișa doar la un anumit interval de timp. Mesajul secundar din nivelul 2 este afișat în monitorul serial folosing UART. Melodiile sunt create folosind funcția tone() și secvențele de note preluate din referința [1] (figurată în secțiunea aferentă).
  
-<note warning>​ +Dacă provocările sunt terminate ​în timp util, motorașul se va roti pentru a deschide cufărul. 
-O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute ​în urma realizării proiectuluisurse, scheme, etcUn fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-).+===== Rezultate Obţinute ===== 
 +{{:pm:​prj2023:​avaduva:​puzzle_box_final.png?​500|}} 
 +[[https://​drive.google.com/​file/​d/​1ZSNrAF6WNEsDdbHpyQNS_if4fDLmGUMT/​view?​usp=sharing]] (video simulare flow) 
 +===== Concluzii =====
  
-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**. +Proiectul mi-a trezit o curiozitate sporită acum ca se vede ca posibilitățile sunt infiniteAu fost unele idei care nu au putut fi implementate ​de data aceasta, însă rezultatul ​este satisficător și l-aș putea vedea folosit în Escape Rooms de specialitate sau în evenimente de tip Treasure Hunt.
-</​note>​+
  
-===== Jurnal ​=====+Am fost concentrat mai mult pe integrarea câtor mai multe medii diferite de provocări, acest fapt fiind ideal pentru activitățile engaging de tip puzzle, și, din păcate, nu a fost timp pentru un afișaz mai prietenos, dar am idei despre încapsularea proiectului în cutiuțe pe diferite module și integrarea unui cufăr care să reprezinte recompensa finală. 
 +===== Download ​=====
  
-<note tip> +{{:​pm:​prj2023:​avaduva:​puzzle_box.zip|}} (sursa)
-Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului. +
-</​note>​+
  
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
  
-<​note>​ +  ​[[https://​github.com/​tsukisan/​Arduino/tree/master/WiiClassicSoundboard]]
-Listă cu documente, datasheet-uri,​ resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. +
-</note> +
- +
-<​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</a></html>+
  
pm/prj2023/avaduva/vlad_petrovici.1684162677.txt.gz · Last modified: 2023/05/15 17:57 by vlad.petrovici1602
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