Differences

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

Link to this comparison view

pm:prj2025:iotelea:albert.antonescu [2025/05/30 14:01]
albert.antonescu [Software Design]
pm:prj2025:iotelea:albert.antonescu [2025/05/30 14:05] (current)
albert.antonescu [Concluzii]
Line 135: Line 135:
 ==== Pe Arduino (firmware) ==== ==== Pe Arduino (firmware) ====
  
-  * Implementare completă cu **scriere bare-metal** pentru: digitalRead,​ digitalWrite,​ analogRead.\ +  * Implementare completă cu **scriere bare-metal** pentru: digitalRead,​ digitalWrite,​ analogRead.\
-  * Control **PWM** pentru cele 3 servomotoare:​ Pan, Tilt, Fire.\ +  * Control **PWM** pentru cele 3 servomotoare:​ Pan, Tilt, Fire.\
-  * Control LED RGB + buzzer pentru feedback în timp real.\ +  * Control LED RGB + buzzer pentru feedback în timp real.\
-  * Trimitere și recepționare comenzi prin **UART Serial**.\ +  * Trimitere și recepționare comenzi prin **UART Serial**.\
-  * Implementare logica modurilor: `FREE`, `SCAN`, `LOCK`, `FIRE_WARN`,​ `MANUAL`.\+  * Implementare logica modurilor: `FREE`, `SCAN`, `LOCK`, `FIRE_WARN`,​ `MANUAL`.\\
  
 ==== Pe PC (Python + OpenCV) ==== ==== Pe PC (Python + OpenCV) ====
  
-  * Inițializare cameră și captură video în timp real.\ +  * Inițializare cameră și captură video în timp real.\
-  * Detecție țintă: **HoughCircles** pentru identificarea unui cerc roșu (țintă).\ +  * Detecție țintă: **HoughCircles** pentru identificarea unui cerc roșu (țintă).\
-  * Detecție punct laser: bazat pe intensitatea canalului roșu.\ +  * Detecție punct laser: bazat pe intensitatea canalului roșu.\
-  * Aliniere dinamică a servomotoarelor în funcție de pozițiile detectate.\ +  * Aliniere dinamică a servomotoarelor în funcție de pozițiile detectate.\
-  * Activare secvență de tragere când ținta este aliniată.\ +  * Activare secvență de tragere când ținta este aliniată.\
-  * Control complet al modurilor și resetare din tastatură sau buton.\+  * Control complet al modurilor și resetare din tastatură sau buton.\\
  
 === Funcții cheie implementate === === Funcții cheie implementate ===
Line 154: Line 154:
 **Pe Arduino:** **Pe Arduino:**
  
-  * `pinModeBare()`,​ `digitalWriteBare()`,​ `analogReadBare()` – acces direct la registre.\ +  * `pinModeBare()`,​ `digitalWriteBare()`,​ `analogReadBare()` – acces direct la registre.\
-  * `beep(freq, durată)` – feedback sonor fără tone().\ +  * `beep(freq, durată)` – feedback sonor fără tone().\
-  * `setRGB()` – stare vizuală în funcție de mod.\ +  * `setRGB()` – stare vizuală în funcție de mod.\
-  * `loop()` – gestionează comenzi seriale + logica modului activ.\+  * `loop()` – gestionează comenzi seriale + logica modului activ.\\
  
 **Pe PC (Python):** **Pe PC (Python):**
  
-  * `detect_target()` – caută cercuri și validează poziția.\ +  * `detect_target()` – caută cercuri și validează poziția.\
-  * `detect_laser()` – localizează punctul roșu intens.\ +  * `detect_laser()` – localizează punctul roșu intens.\
-  * `run_exploration_mode()` – mișcare servo stânga-dreapta și scanare automată.\ +  * `run_exploration_mode()` – mișcare servo stânga-dreapta și scanare automată.\
-  * `send(cmd)` – trimite comenzile UART către Arduino cu întârziere minimă controlată.\+  * `send(cmd)` – trimite comenzile UART către Arduino cu întârziere minimă controlată.\\
 ===== Rezultate Obţinute ===== ===== Rezultate Obţinute =====
  
Line 187: Line 187:
 Pe lângă valoarea educativă și tehnică, proiectul a fost și o provocare practică în a integra mai multe concepte: PWM, UART, ADC, protocoale de comunicație și prelucrare imagine în timp real. Pe lângă valoarea educativă și tehnică, proiectul a fost și o provocare practică în a integra mai multe concepte: PWM, UART, ADC, protocoale de comunicație și prelucrare imagine în timp real.
  
-📌 *Notă importantă:​* Aproximativ **jumătate din problemele întâlnite** în faza de prototipare s-au rezolvat rapid cu ajutorul **benzii adezive**. Fixările provizorii au devenit permanente, iar improvizația a făcut parte din procesul creativ. 😄+📌 **Notă importantă:​** Aproximativ **jumătate din problemele întâlnite** în faza de prototipare s-au rezolvat rapid cu ajutorul **benzii adezive**. Fixările provizorii au devenit permanente, iar improvizația a făcut parte din procesul creativ. 😄
  
 ===== Download ===== ===== Download =====
pm/prj2025/iotelea/albert.antonescu.1748602896.txt.gz · Last modified: 2025/05/30 14:01 by albert.antonescu
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