Differences

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

Link to this comparison view

pm:prj2025:eradu:dragos.banica0711 [2025/05/21 17:53]
dragos.banica0711 [Software Design]
pm:prj2025:eradu:dragos.banica0711 [2025/05/25 15:03] (current)
dragos.banica0711 [Concluzii]
Line 3: Line 3:
 ===== Introducere ===== ===== Introducere =====
  
-<note tip> ​Proiectul constă în realizarea unui sistem interactiv care detectează când o bilă trece printr-o poartă de lemn și reacționează prin activarea unui buzzer și actualizarea unui scor afișat pe un ecran, dar si luminarea unor LED-uri cand cineva marcheaza/​rateaza (verde/​rosu). Scopul este de a simula un mecanism simplu de marcare, asemănător celor întâlnite în jocurile de tip mini-fotbal sau pinball.+Proiectul constă în realizarea unui sistem interactiv care detectează când o bilă trece printr-o poartă de lemn și reacționează prin activarea unui buzzer și actualizarea unui scor afișat pe un ecran, dar si luminarea unor LED-uri cand cineva marcheaza/​rateaza (verde/​rosu). Scopul este de a simula un mecanism simplu de marcare, asemănător celor întâlnite în jocurile de tip mini-fotbal sau pinball.
 Ideea a pornit de la dorința de a combina elemente hardware și software într-un mod creativ și vizual. Este util atât din punct de vedere educațional (înțelegerea senzorilor, a afișajelor și a controlului cu Arduino), cât și recreativ, putând fi folosit în proiecte de tip DIY sau în jocuri interactive. Ideea a pornit de la dorința de a combina elemente hardware și software într-un mod creativ și vizual. Este util atât din punct de vedere educațional (înțelegerea senzorilor, a afișajelor și a controlului cu Arduino), cât și recreativ, putând fi folosit în proiecte de tip DIY sau în jocuri interactive.
-</​note>​ 
  
 ===== Descriere generală ===== ===== Descriere generală =====
  
-<note tip> 
 {{:​pm:​prj2025:​eradu:​dkl5dgq_-_imgur.png?​400|}} {{:​pm:​prj2025:​eradu:​dkl5dgq_-_imgur.png?​400|}}
  
Line 27: Line 25:
  
 Ecranul afiseaza MISS! si scorul ramas Ecranul afiseaza MISS! si scorul ramas
-</​note>​ 
 ===== Hardware Design ===== ===== Hardware Design =====
  
-<note tip> +{{:​pm:​prj2025:​eradu:​screenshot_2025-05-25_144015.png?400|}}
-{{:​pm:​prj2025:​eradu:​undefined_-_imgur.png?400|}}+
  
-Module:+1) Module ​folosite:
  
 Senzor ultrasonic (HC-SR04): Detectează trecerea bilei prin poartă Senzor ultrasonic (HC-SR04): Detectează trecerea bilei prin poartă
Line 46: Line 42:
  
 Led-uri (5mm): Lumineaza cand se da gol Led-uri (5mm): Lumineaza cand se da gol
-</​note>​+ 
 + 
 + 
 +2) Lista cu pinii folositi: 
 + 
 +Microcontroller:​ Arduino UNO (A1) 
 + 
 +| Pin Arduino | Funcție ​                        | Legat la                                        | 
 +| ----------- | ------------------------------- | ----------------------------------------------- | 
 +| D2          | Trigger senzor ultrasonic ​      | TRIG pin (senzor ultrasonic) ​                   | 
 +| D3          | Echo senzor ultrasonic ​         | ECHO pin (senzor ultrasonic) ​                   | 
 +| D4          | Control LED1                    | Anod D1 (LED1) ​                                 | 
 +| D5          | Control LED2                    | Anod D2 (LED2) ​                                 | 
 +| D6          | Control buzzer ​                 | BZ1 (buzzer activ) ​                             | 
 +| A4 (SDA)    | I2C data                        | SDA (pin 3 de la ecranul LCD I2C - U2)          | 
 +| A5 (SCL)    | I2C clock                       | SCL (pin 4 de la ecranul LCD I2C - U2)          | 
 +| 5V          | Alimentare 5V pentru componente | VCC senzor ultrasonic, VDD LCD, buzzer, LED-uri | 
 +| GND         | Masă comună ​                    | GND senzor, LCD, buzzer, LED-uri ​               | 
 + 
 +Senzor Ultrasonic (HC-SR04) 
 + 
 +| Pin Senzor | Conectat la | 
 +| ---------- | ----------- | 
 +| VCC        | 5V Arduino ​ | 
 +| GND        | GND Arduino | 
 +| TRIG       | D2 Arduino ​ | 
 +| ECHO       | D3 Arduino ​ | 
 + 
 +LED-uri 
 + 
 +| LED | Anod       | Catod | 
 +| --- | ---------- | ----- | 
 +| D1  | D4 Arduino | GND   | 
 +| D2  | D5 Arduino | GND   | 
 + 
 +Buzzer (BZ1) 
 + 
 +| Pin Buzzer | Conectat la | 
 +| ---------- | ----------- | 
 +| 1          | D6 Arduino ​ | 
 +| 2          | GND         | 
 + 
 +LCD (U2: NHD-C0220BiZ – LCD cu interfață I2C) 
 + 
 +| Pin LCD         | Funcție ​            | Conectat la Arduino | 
 +| --------------- | ------------------- | ------------------- | 
 +| 1 (VOUT) ​       | Tensiune referință ​ | -                   | 
 +| 2 (VSS)         | GND                 | GND                 | 
 +| 3 (SDA)         | I2C data            | A4                  | 
 +| 4 (SCL)         | I2C clock           | A5                  | 
 +| 5 (VDD)         | Alimentare ​         | 5V                  | 
 +| 6 (RST)         | Reset               | -                   | 
 +| 7, 8 (C1+, C1-) | Condensatori ​       | -                   | 
 +| 9 (A)           | Anod LED backlight ​ | 5V                  | 
 +| 10 (K)          | Catod LED backlight | GND                 | 
  
 ===== Software Design ===== ===== Software Design =====
Line 52: Line 103:
 Descrierea codului aplicaţiei (firmware): Descrierea codului aplicaţiei (firmware):
   * mediu de dezvoltare: Arduino   * mediu de dezvoltare: Arduino
 +
   * librării şi surse 3rd-party: Wire.h, LiquidCrystal_I2C.h   * librării şi surse 3rd-party: Wire.h, LiquidCrystal_I2C.h
 +
   * algoritmi şi structuri pe care plănuiţi să le implementaţi:​   * algoritmi şi structuri pe care plănuiţi să le implementaţi:​
-  * Detecție bilă (senzor ultrasonic):​+ 
 +    ​Detecție bilă (senzor ultrasonic):​
         Măsoară distanța și detectează trecerea bilei prin poartă.         Măsoară distanța și detectează trecerea bilei prin poartă.
         Praguri ajustabile (distance < 15cm = gol, distance > 30cm = ratare).         Praguri ajustabile (distance < 15cm = gol, distance > 30cm = ratare).
Line 66: Line 120:
         Array-uri pentru sunete (goalSound[],​ missSound[]).         Array-uri pentru sunete (goalSound[],​ missSound[]).
         Boolean (ballDetected) pentru evitarea trigger-urilor multiple.         Boolean (ballDetected) pentru evitarea trigger-urilor multiple.
 +        ​
 +  * laboratoare utilizate:
 +
 +    GPIO - folosit in cam tot proiectul
 +    PWM - leduri luminozitate
 +    I2C - ecran LCD/I2C utilizat
 +    ​
 +  * pseudocod:
 +
 +    1) Inițializare
 +    Configurează pinii pentru:
 +    senzor ultrasonic (TRIG, ECHO)
 +    LED-uri (verde și roșu)
 +    buzzer
 +    buton de resetare
 +
 +    2) Inițializează ecranul LCD și afișează mesajul inițial:
 +    „Penalty Shootout” și „Score: 0”
 +
 +    3) Loop:
 +    3.1) Verifică dacă s-a apăsat butonul de reset:
 +    Dacă DA → resetează scorul la 0
 +    Afișează pe LCD: „Score Reset!” și „New Score: 0”
 +    Apoi revine la ecranul principal
 +
 +    3.2) Măsoară distanța cu senzorul ultrasonic:
 +    Trimite un semnal TRIG
 +    Măsoară timpul de întoarcere a semnalului ECHO
 +    Calculează distanța în centimetri
 +
 +    3.3) Verifică dacă mingea este detectată (GOAL):
 +    Dacă distanța este între 5 cm și 15 cm și mingea nu a fost deja detectată:
 +    Crește scorul
 +    Afișează pe LCD: „GOAL!” și noul scor
 +    Aprinde LED-ul verde
 +    Redă un sunet de succes cu buzzerul
 +
 +    3.4) Verifică dacă mingea a trecut și e afară (MISS):
 +    Dacă distanța e mai mare de 30 cm și mingea nu a fost detectată:
 +    Afișează pe LCD: „MISS!” și scorul curent
 +    Aprinde LED-ul roșu
 +    Redă un sunet de eșec cu buzzerul
 +
 +    3.5) Așteaptă puțin și revine la pasul 1
 +
 +    * cod sursa: https://​github.com/​BanicaDragos/​pm_project
  
 ===== Rezultate Obţinute ===== ===== Rezultate Obţinute =====
  
-<note tip> +În urma realizării proiectului ​"​Penalty Shootout",​ s-a reușit implementarea unui sistem interactiv de detectare a golurilor folosind un senzor ultrasonic. Dispozitivul a reacționat corect la trecerea mingii prin zona de detecție, afișând scorul pe un ecran LCD, oferind feedback vizual prin LED-uri și auditiv prin buzzer. Sistemul s-a dovedit funcțional și eficient în simularea unei experiențe de joc simplă, dar captivantă.
-Care au fost rezultatele obţinute în urma realizării proiectului ​vostru. +
-</​note>​+
  
 ===== Concluzii ===== ===== Concluzii =====
  
 +Proiectul a demonstrat cu succes integrarea senzorilor și a componentelor electronice într-o aplicație practică și distractivă. Prin combinarea hardware-ului cu programarea Arduino, s-a realizat un sistem capabil să ofere feedback în timp real, evidențiind potențialul tehnologiei în dezvoltarea jocurilor interactive.
 ===== Download ===== ===== Download =====
  
pm/prj2025/eradu/dragos.banica0711.1747839181.txt.gz · Last modified: 2025/05/21 17:53 by dragos.banica0711
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