This shows you the differences between two versions of the page.
|
pm:prj2022:avaduva:pmstation [2022/04/22 18:33] victor.borisov [Software Design] |
pm:prj2022:avaduva:pmstation [2022/06/02 10:34] (current) victor.borisov [Download] |
||
|---|---|---|---|
| Line 3: | Line 3: | ||
| <note tip> | <note tip> | ||
| - | Prezentarea pe scurt a proiectului vostru: | + | Continut joc: |
| - | * ce face | + | * Personaj |
| - | * care este scopul lui | + | * Obstacole |
| - | * care a fost ideea de la care aţi pornit | + | * Inamici |
| - | * de ce credeţi că este util pentru alţii şi pentru voi | + | * Vieti ramase |
| + | * Scor | ||
| + | Scop: | ||
| + | * Personajul (Playerul) trebuie sa ocoleasca obstcolele ce se deplaseaza pe ecran. | ||
| + | * El trebuie sa elimine inamicii ce apar aleatoriu pe ecran. | ||
| + | * Cand e lovit de obstacol sau inamic pierde o viata. | ||
| </note> | </note> | ||
| ===== Descriere generală ===== | ===== Descriere generală ===== | ||
| <note tip> | <note tip> | ||
| - | O schemă bloc cu toate modulele proiectului vostru, atât software cât şi hardware însoţită de o descriere a acestora precum şi a modului în care interacţionează. | + | Utilizatorul va avea acces la ecranul LCD, thumb joystick ,buton si baterry clip |
| + | (implicit si baterie). | ||
| + | Jucatorul va putea controla personajul prin intermediul butonului si thumb joystickului (a fost aleasa aceasta combinatie | ||
| + | de piese pentru a da un vibe retro proiectului). | ||
| + | |||
| + | Buzzerul va da ouput un sunet de fundal iar prin intermediul ecranului se vor afisa caractere custom. | ||
| + | |||
| + | Pentru a putea folosi consola, jucatorul trebuie sa ataseze de baterry clip o baterie de 9V! | ||
| - | Exemplu de schemă bloc: http://www.robs-projects.com/mp3proj/newplayer.html | ||
| </note> | </note> | ||
| + | |||
| + | **Schema bloc** | ||
| + | |||
| + | {{:pm:prj2022:avaduva:consola.png?750|}} | ||
| ===== Hardware Design ===== | ===== Hardware Design ===== | ||
| <note tip> | <note tip> | ||
| - | Aici puneţi tot ce ţine de hardware design: | + | Componente: |
| - | * listă de piese | + | * Arduino UNO |
| - | * scheme electrice (se pot lua şi de pe Internet şi din datasheet-uri, e.g. http://www.captain.at/electronic-atmega16-mmc-schematic.png) | + | * ECRAN LCD 1602 IIC/I2C |
| - | * diagrame de semnal | + | * 1 buton |
| - | * rezultatele simulării | + | * Thumb joystick |
| + | * Breadboard HQ | ||
| + | * Buzzer | ||
| + | * Baterry clip | ||
| + | * Baterie 9v | ||
| + | * Rezistenta 1kohm | ||
| + | * Rezistenta 330ohm | ||
| + | </note> | ||
| + | |||
| + | **Scheme electrice** | ||
| + | |||
| + | {{:pm:prj2022:avaduva:borisov_screenshot_2022-05-28_115317.png?650|}} | ||
| + | |||
| + | {{:pm:prj2022:avaduva:borisov_joystick-module-internal-structure.png?300|}} | ||
| + | |||
| + | <note tip> | ||
| + | Joystick: | ||
| + | |||
| + | VRx - pin analog A0 | ||
| + | |||
| + | VRy - pin analog A1 | ||
| </note> | </note> | ||
| ===== Software Design ===== | ===== Software Design ===== | ||
| + | * Mediu de dezvoltare: Arduino IDE | ||
| + | * Librarii: LiquidCrystal_I2C.h | ||
| + | * Functii: | ||
| + | *void setup(): | ||
| + | *void afisare(): | ||
| + | *afisarea jucatorului pe ecran | ||
| + | *void glont(): | ||
| + | *afisarea si pozitionarea glontului | ||
| + | *void up_go(): | ||
| + | *afisarea si pozitionarea obstacolului in functie de impact/inainte de impact | ||
| + | *void down_go(): | ||
| + | *afisarea si pozitionarea obstacolului in functie de impact/inainte de impact | ||
| + | *void bad_go(): | ||
| + | *afisarea si pozitionarea inamicului in functie de impact/inainte de impact | ||
| + | *void loop(): | ||
| + | *apelarea functiilor de mai sus | ||
| + | *sincronizarea tuturor animatiilor in functie de starea jucatorului | ||
| + | *afisarea vietii | ||
| + | *prelucrarea inputului analog de la joystick | ||
| + | <note tip> | ||
| + | |||
| + | Pana in data de 1.06.2022 se va actualiza codul sursa al proiectului, pentru | ||
| + | o functionalitate mai buna cu ocazia PM Fair. | ||
| + | |||
| + | </note> | ||
| ===== Rezultate Obţinute ===== | ===== Rezultate Obţinute ===== | ||
| + | **Link Video Demo** | ||
| + | * https://drive.google.com/file/d/1-z4CoPE0ZW5LmgZ7369DoM7mpcSq55Bi/view?usp=sharing | ||
| + | |||
| + | **Poze** | ||
| + | |||
| + | {{:pm:prj2022:avaduva:borisov_poza1_9feb68e3-f927-46e4-9e15-3f71e82d5239.jpg?200|}} | ||
| + | |||
| + | {{:pm:prj2022:avaduva:borisov_poza2_ab03a1cd-caff-4151-826f-0f4e83f8f4d3.jpg?500|}} | ||
| + | |||
| + | {{:pm:prj2022:avaduva:borisov_poza3_be953add-d6ee-4eaf-95d5-500b54d1ec4e.jpg?200|}} | ||
| ===== Concluzii ===== | ===== Concluzii ===== | ||
| + | De mult imi doresc sa sa fac un asemenea proiect. PM Fair a reprezentat contextul ideal de a imi insusi cunostintele in Arduino,astfel am | ||
| + | reusit sa duc la bun sfarsit implementarea unei console portabile, avand rezultate satisfacatoare. | ||
| ===== Download ===== | ===== Download ===== | ||
| + | {{:pm:prj2022:avaduva:pm-station_borisov_victor-mihai.zip|}} | ||
| + | **Codul imbunatatit** | ||
| + | |||
| + | {{:pm:prj2022:avaduva:boris_final_best.zip|}} | ||
| ===== Jurnal ===== | ===== Jurnal ===== | ||
| + | * 22 aprilie: alegere proiect + creare pagina wiki | ||
| + | * 12 mai: s-a inceput dezvoltarea hardware | ||
| + | * 15 mai: finalizare parte hardware | ||
| + | * 17 mai: s-a inceput implementarea software | ||
| + | * 25 mai: finalizare implementare software | ||
| + | * 27 mai: finalizare pagina wiki (documentatie) | ||
| + | |||
| + | |||
| ===== Bibliografie/Resurse ===== | ===== Bibliografie/Resurse ===== | ||
| + | <note tip> | ||
| + | Linkuri: | ||
| + | * Pentru creearea si afisarea caracterelor custom:https://maxpromer.github.io/LCD-Character-Creator/ | ||
| + | |||
| + | </note> | ||
| <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> | ||