Differences

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

Link to this comparison view

pm:prj2026:atoader:maria_andreea.budes [2026/05/09 20:47]
maria_andreea.budes created
pm:prj2026:atoader:maria_andreea.budes [2026/05/12 20:17] (current)
maria_andreea.budes
Line 2: Line 2:
 ===== Introducere ===== ===== Introducere =====
  
-Prin acest proiect îmi propun să realizez un **vehicul interactiv**,​ care să simuleze cât mai bine o mașină reală. Mașina este controlată prin comenzi seriale de la tastatura laptopului, dar dispune de controale fizice avansate: un //​vitezometru//​ sub formă de potențiometru care reglează accelerația motoarelor prin PWM, un //sistem de lumini// (faruri cu fază scurtă/​lungă,​ semnalizare stânga/​dreapta acționată de butoane) și un //claxon// (buzzer). ​O trăsătură distinctivă este //sistemul dual de afișaj ​LCD//: un ecran pentru monitorizarea stării sistemului și un al doilea ecran utilizat pentru afișarea unui număr ​de înmatriculare ​digital.+Prin acest proiect îmi propun să realizez un **vehicul interactiv**,​ care să simuleze cât mai bine o mașină reală. Mașina este controlată prin comenzi seriale de la tastatura laptopului, dar dispune de controale fizice avansate: un //​vitezometru//​ sub formă de potențiometru care reglează accelerația motoarelor prin PWM, un //sistem de lumini// (faruri cu fază scurtă/​lungă,​ semnalizare stânga/​dreapta acționată de butoane) și un //claxon// (buzzer). ​Întreaga stare a sistemului (viteza, direcția și starea luminilor) este monitorizată în timp real și afișată pe un //ecran LCD// integrat, care funcționează ca un tablou ​de bord digital.
  
-Pe lângă aplicarea noțiunilor învățate la laborator, scopul principal al proiectului este să construiesc o machetă funcțională care imită la o scară mică sistemele unei mașini reale. Mai exact, proiectul demonstrează practic cum placa centrală primește comenzi simple de la utilizator (cum ar fi apăsarea butoanelor sau rotirea potențiometrului pentru viteză) și le transformă imediat în acțiuni fizice: învârte roțile, aprinde farurile și semnalizarea,​ sau pornește claxonul. Pe scurt, este un model simplificat care arată pas cu pas modul în care răspunde un autovehicul la comenzile șoferului.+Pe lângă aplicarea noțiunilor învățate la laborator, scopul principal al proiectului este să construiesc o machetă funcțională care imită la o scară mică sistemele unei mașini reale. Mai exact, proiectul demonstrează practic cum placa centrală primește comenzi simple de la utilizator (cum ar fi apăsarea butoanelor sau rotirea potențiometrului pentru viteză) și le transformă imediat în acțiuni fizice: învârte roțile, aprinde farurile și semnalizarea,​ sau pornește claxonul. ​
  
 **Ideea de la care am pornit**: Am pornit de la o pasiune din copilărie pentru mașinuțele cu telecomandă,​ dorindu-mi să construiesc cu propriile mâini, de la 0, un vehicul care să nu fie doar o jucărie, ci o platformă experimentală care să replice fidel funcțiile unei mașini adevărate. **Ideea de la care am pornit**: Am pornit de la o pasiune din copilărie pentru mașinuțele cu telecomandă,​ dorindu-mi să construiesc cu propriile mâini, de la 0, un vehicul care să nu fie doar o jucărie, ci o platformă experimentală care să replice fidel funcțiile unei mașini adevărate.
 +
 +//​Laboratoare folosite//: GPIO, USART, Întreruperi,​ Timere și PWM, ADC, I2C
  
  
 ===== Descriere generală ===== ===== Descriere generală =====
  
-La momentul recepționării unei comenzi de deplasare prin interfața Serială (RX/TX), microcontrolerul o asociază cu tensiunea citită de la potențiometru prin intermediul convertorului intern ADC. Pe baza acestor date, sistemul generează semnale logice (pentru stabilirea direcției) și semnale PWM (pentru reglarea turației) către modulul driver L298N, acționând astfel tracțiunea motoarelor DC. Simultan, datele de telemetrie sunt transmise prin protocolul I2C către ​ecranele ​LCD pentru actualizarea statusului în timp real.+La momentul recepționării unei comenzi de deplasare prin interfața Serială (RX/TX), microcontrolerul o asociază cu tensiunea citită de la potențiometru prin intermediul convertorului intern ADC. Pe baza acestor date, sistemul generează semnale logice (pentru stabilirea direcției) și semnale PWM (pentru reglarea turației) către modulul driver L298N, acționând astfel tracțiunea motoarelor DC. Simultan, datele de telemetrie sunt transmise prin protocolul I2C către ​ecranul ​LCD pentru actualizarea statusului în timp real.
  
 În paralel, controlul sistemelor auxiliare (iluminat și acustic) este gestionat prin citirea pinilor GPIO asociați blocului de butoane. Folosind rutine software de filtrare (debouncing),​ microcontrolerul validează intenția utilizatorului pentru a preveni declanșările false. Odată confirmată o comandă, sistemul ajustează dinamic factorul de umplere (Duty Cycle) al semnalelor PWM pentru a comuta farurile între faza scurtă și faza lungă, sau utilizează funcții de temporizare non-blocante pentru a genera clipirea intermitentă a semnalizărilor și acționarea buzzerului, asigurând fluiditatea buclei principale de execuție. În paralel, controlul sistemelor auxiliare (iluminat și acustic) este gestionat prin citirea pinilor GPIO asociați blocului de butoane. Folosind rutine software de filtrare (debouncing),​ microcontrolerul validează intenția utilizatorului pentru a preveni declanșările false. Odată confirmată o comandă, sistemul ajustează dinamic factorul de umplere (Duty Cycle) al semnalelor PWM pentru a comuta farurile între faza scurtă și faza lungă, sau utilizează funcții de temporizare non-blocante pentru a genera clipirea intermitentă a semnalizărilor și acționarea buzzerului, asigurând fluiditatea buclei principale de execuție.
  
-{{:​pm:​prj2026:​atoader:​budes_maria_schema.png?800|}}+{{:​pm:​prj2026:​atoader:​budes_schema_buna.drawio.png?800|}}
  
 ===== Hardware Design ===== ===== Hardware Design =====
Line 25: Line 27:
 | **3** | **Motor DC cu reductor** | 2 | Acționarea mecanică a roților pentru asigurarea tracțiunii și direcției mașinii | | **3** | **Motor DC cu reductor** | 2 | Acționarea mecanică a roților pentru asigurarea tracțiunii și direcției mașinii |
 | **4** | **Modul Driver Motoare L298N** | 1 | Puntea de forță, izolează placa de curentul mare și comandă motoarele via PWM | | **4** | **Modul Driver Motoare L298N** | 1 | Puntea de forță, izolează placa de curentul mare și comandă motoarele via PWM |
-| **5** | **Display LCD 1602 cu modul I2C** | | Interfața vizuală: afișare parametri de sistem ​(Ecran 1) și număr înmatriculare digital (Ecran 2) |+| **5** | **Display LCD 1602 cu modul I2C** | | Interfața vizuală: afișare parametri de sistem |
 | **6** | **Potențiometru rotativ (10kΩ)** | 1 | Convertit prin ADC, funcționează ca un vitezometru manual (pedală de accelerație) | | **6** | **Potențiometru rotativ (10kΩ)** | 1 | Convertit prin ADC, funcționează ca un vitezometru manual (pedală de accelerație) |
 | **7** | **Push Button (Butoane tactile)** | 4 | Generarea semnalelor digitale (input) pentru controlul luminilor, semnalizării și claxonului | | **7** | **Push Button (Butoane tactile)** | 4 | Generarea semnalelor digitale (input) pentru controlul luminilor, semnalizării și claxonului |
Line 36: Line 38:
 //Notă: Elementele de interfață (butoane, LED-uri, rezistențe,​ potențiometru,​ buzzer și breadboard-ul) fac parte dintr-un Arduino Starter Kit standard.// //Notă: Elementele de interfață (butoane, LED-uri, rezistențe,​ potențiometru,​ buzzer și breadboard-ul) fac parte dintr-un Arduino Starter Kit standard.//
  
 +Pinii folosiți:
 +^Componentă ^ Pin ^ Tip Semnal ^ Funcționalitate ^ 
 +| **Modul LCD I2C** | PC4 (SDA), PC5 (SCL) | I2C | Comunicație serială pentru afișarea informațiilor |
 +| **Potențiometru (Vitezometru)** | PC0 (ADC0) | Analogic (Input) | Citește variația de tensiune pentru a controla viteza motoarelor |
 +| **Buton 1 (Semnal Stânga)** | PC1 | Digital (Input) | Declanșează secvența de clipire pentru LED-urile de pe stânga |
 +| **Buton 2 (Semnal Dreapta)** | PC2 | Digital (Input) | Declanșează secvența de clipire pentru LED-urile de pe dreapta |
 +| **Buton 3 (Faruri)** | PC3 | Digital (Input) | Schimbă starea farurilor (oprit / fază scurtă / fază lungă) |
 +| **Buton 4 (Claxon)** | PD3 | Digital (Input) | Acționează manual buzzer-ul |
 +| **LED-uri Faruri** | PB1 | PWM (Output) | Permite reglare intensității luminoase din cod |
 +| **LED-uri Semnalizare Stânga** | PB2 | PWM (Output) | Control led-uri stânga |
 +| **LED-uri Semnalizare Dreapta**| PB3 | PWM (Output) | Control led-uri dreapta |
 +| **Buzzer** | PB4 | Digital (Output) | Claxonul |
 +| **L298N - Viteză** | PD5, PD6 | PWM (Output) | Semnal (0-255) pentru controlul turației motoarelor |
 +| **L298N - Direcție** | PD2, PD4, PD7, PB0 | Digital (Output) | Stabilesc sensul de rotație (înainte/​înapoi) |
 +
 +Schema electrică:
 +
 +{{:​pm:​prj2026:​atoader:​budes_schematic_pm.png?​1000|}}
 ===== Software Design ===== ===== Software Design =====
  
pm/prj2026/atoader/maria_andreea.budes.1778348836.txt.gz · Last modified: 2026/05/09 20:47 by maria_andreea.budes
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