Differences

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

Link to this comparison view

pm:prj2024:vstoica:mihai.tecliceanu [2024/05/16 22:21]
mihai.tecliceanu [Hardware Design]
pm:prj2024:vstoica:mihai.tecliceanu [2024/05/27 00:30] (current)
mihai.tecliceanu [Software Design]
Line 39: Line 39:
    ​*Curent:​ 0.5A;    ​*Curent:​ 0.5A;
    ​*Forta de atractie: 18kg/180N;    ​*Forta de atractie: 18kg/180N;
 +
 +**Modul cu Tranzistor de Putere IRF520:**
 +
 +   ​*Tensiune maximă: 24V;
 +   ​*Curent maxim: 5A
 +   ​*Tensiune poartă: 3.3V, 5V;
 +   ​*Timpi de comutație mici;
 +   ​*RDS:​0.27 ohmi;
 +   ​*Sarcină poartă: 16nC
  
 == Schema hardware == == Schema hardware ==
Line 46: Line 55:
 ===== Software Design ===== ===== Software Design =====
  
-Voi utiliza ESP-IDF ca development framework. ​Pentru a facilita dezvoltarea softwareului voi utiliza o biblioteca pentru comunicarea cu ecranul LCD. Pentru masurarea puterii cu care se loveste, se va masura timpul in care un circuit format dintr-un laser si un receptor este intrerup ​de trecerea bratului aparatului prin fata laserului.+Voi utiliza ESP-IDF ca development framework. ​ 
 +Pentru masurarea puterii cu care se loveste, se va masura timpul in care un circuit format dintr-un laser si un receptor este intrerupt ​de trecerea bratului aparatului prin fata laserului. Aparatul creaza un acces point pentru a putea fi controlat intr-un browser. Pentru o masurarea cat mai buna, se va calcula diferenta in microsecunde dintre inceperea intreruperii laserului, pana la terminarea acesteia. De asemenea detectarea bratului se realizeaza prin intreruperi in cod, generandu-se un eveniment si procesarea evenimentului intr-un task separat, posibil chiar si pe alt procesor, ESP32-WROOM avand 2 core-uri. 
 + 
 +  * **/​connect** - aparatul asteapta ca un controller sa se conecteze. Conectarea se realizeaza prin intermediul unei aplicatii pe telefon sau dintr-un browser. 
 +  * **/try** - dupa ce un controller a fost conectat la aparat, acesta va astepta o cerere POST ce va contine un nume ("​name=..."​) pentru a putea stabili numele jucatorului.  
 +  * **/scores** - returneaza un raspuns la o cerere GET ce contine un textul in format CSV cu primele N cele mai mari scoruri. Numarul de scoruri retinute poate fi configurat din sursa aparatului. 
 +  * **/reset** - reseteaza aparatul in cazul unei probleme. 
 +  * **/player** - intoarce o pagina pentru a putea introduce numele jucatorlui. Folosit in special pentru controllere din browser.
  
 +Aplicatia pentru telefon a fost realizata folosind MIT App Inventor si este disponibila pentru descarcare in sectiunea Download. Aceasta are nevoie de adresa IP afisata pe ecranul LCD al aparatului pentru a-l putea controla.
 ===== Rezultate Obţinute ===== ===== Rezultate Obţinute =====
  
-<note tip> +Am reusit sa implementez un aparat destul de complex, mai ales din punct de vedere software, care poate fi montat ca un fidget putin mai mare pentru birou, ignorand zgomotul creat :-).
-Care au fost rezultatele obţinute în urma realizării proiectului vostru. +
-</​note>​+
  
 ===== Concluzii ===== ===== Concluzii =====
pm/prj2024/vstoica/mihai.tecliceanu.1715887278.txt.gz · Last modified: 2024/05/16 22:21 by mihai.tecliceanu
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