This is an old revision of the document!
SmartBumper
Introducere
Ce face proiectul:
Proiectul reprezinta un sistem automatizat capabil sa masoare viteza unui vehicul in miscare folosind doi senzori cu infrarosu (IR) si sa actioneze un “bumper” (limitator de viteza/bariera fizica) controlat de un servomotor. Daca vehiculul depaseste limita de viteza stabilita (30 km/h), bumperul se ridica, iar un semnal sonor de avertizare este emis. Viteza si starea limitei sunt afisate in timp real pe un ecran LCD.
Care este scopul lui:
Scopul principal este sporirea sigurantei active in trafic, in special in zonele cu limitari stricte de viteza (zone rezidentiale, scoli, treceri de pietoni), prin implementarea unui sistem fizic de descurajare a vitezei excesive.
Ideea de la care am pornit:
Limitatoarele de viteza clasice (bumperele din asfalt) afecteaza toate vehiculele, inclusiv pe cele care circula regulamentar, cauzand uzura inutila a suspensiilor si disconfort. Ideea a fost crearea unui sistem “inteligent” de aerodinamica sau limitare fizica, care sa actioneze doar impotriva soferilor care incalca regulile, lasand calea libera pentru cei care respecta viteza.
De ce este util:
Pentru societate, acest concept ar putea eficientiza fluidizarea traficului si reduce poluarea fonica/uzura auto in zonele rezidentiale.
Descriere generala
Proiectul este structurat intr-o unitate centrala de procesare (microcontrollerul ATmega328P) care interactioneaza cu doua categorii de module: de intrare (Senzori IR) si de iesire (Servomotor, Buzzer, LCD).
Interactiunea modulelor (Logica de functionare):
Modulul de Input (Detectie): Cei doi senzori IR sunt amplasati la o distanta fizica fixa unul de celalalt. Trecerea vehiculului prin dreptul primului senzor genereaza un semnal care declanseaza o Intrerupere Externa (External Interrupt) pe microcontroller, determinandu-l sa porneasca imediat un Timer hardware. Trecerea pe la al doilea senzor declanseaza o a doua intrerupere, care opreste Timerul.
Modulul de Procesare (Calcul): Microcontrollerul citeste valoarea Timerului si calculeaza timpul scurs cu precizie. Folosind distanta fixa si timpul masurat intre cele doua intreruperi, calculeaza viteza vehiculului.
Modulul de Output (Reactie):
Viteza este trimisa pe magistrala I2C catre ecranul LCD.
Daca viteza calculata > 30 km/h, microcontrollerul comanda Servomotorul si Buzzer-ul prin intermediul pinilor GPIO (manipuland direct registrii de port). Buzzer-ul emite o alarma sonora timp de 3 secunde, iar servomotorul este actionat pentru a ridica limitatorul de viteza.
Daca viteza este sub limita, servomotorul ramane in repaus (0 grade).
Schema bloc:
Hardware Design
Lista de piese si Rolul lor in proiect:
Placa de dezvoltare compatibila Arduino Uno: Functioneaza ca placa de baza pentru microcontrollerul ATmega328P, care reprezinta “creierul” proiectului. Acesta proceseaza intreruperile, calculeaza timpul si viteza, si comanda perifericele.
2 x Modul Senzor Infrarosu (IR): Au rolul de a detecta momentul exact in care vehiculul trece prin doua puncte de referinta. Ofera un semnal digital (LOW/HIGH) atunci cand raza IR este intrerupta.
1 x Servomotor SG90: Actioneaza ca mecanism fizic pentru ridicarea si coborarea bumperului (limitatorului de viteza).
1 x Ecran LCD 16×2 cu modul I2C: Interfata cu utilizatorul, folosita pentru a afisa in timp real viteza calculata a vehiculului si mesajul de stare (“LIMITA DEPASITA”).
1 x Buzzer: Unitate de avertizare sonora care se activeaza daca se depaseste pragul de viteza stabilit.
Conectarea componentelor si justificarea pinilor folositi:
Senzorul IR 1 (Start): Conectat la pinul Arduino D2, care corespunde pinului fizic PD2 al ATmega328P.
Senzorul IR 2 (Stop): Conectat la pinul Arduino D3, care corespunde pinului fizic PD3 al ATmega328P.
Ecranul LCD I2C: Conectat la pinii Arduino A4 (SDA) si A5 (SCL), corespunzatori pinilor fizici PC4 si PC5 ai ATmega328P.
*Justificare:* Acesti doi pini sunt pinii hardware dedicati pentru magistrala TWI (Two-Wire Interface / I2C) din arhitectura microprocesorului, permitand o comunicare directa si eficienta prin manipularea registrilor TWBR, TWCR, TWSR, TWDR.
Servomotorul SG90: Conectat la pinul Arduino D9, care corespunde pinului PB1.
Buzzer-ul: Conectat la pinul Arduino D12, care corespunde pinului PB4.
Schema electrica:
Schema ilustreaza conexiunile logice si de alimentare prezentate in sectiunea anterioara. Microcontrollerul este alimentat prin regulatorul placii, iar de pe liniile de 5V/GND sunt alimentate toate perifericele externe.
Proiectul in functiune:
Bumper coborat. Vehiculul circula cu viteza legala (< = 30 km/h)
Bumper ridicat. Vehiculul circula cu viteza ilegala (> 30 km/h)
Software Design
Descrierea codului aplicatiei (firmware):
mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR)
librarii si surse 3rd-party (e.g. Procyon AVRlib)
algoritmi si structuri pe care planuiti sa le implementati
(etapa 3) surse si functii implementate
Rezultate Obtinute
Care au fost rezultatele obtinute in urma realizarii proiectului vostru.
Concluzii
Download
O arhiva (sau mai multe daca este cazul) cu fisierele obtinute in urma realizarii proiectului: surse, scheme, etc. Un fisier README, un ChangeLog, un script de compilare si copiere automata pe uC creaza intotdeauna o impresie buna

.
Fisierele se incarca pe wiki folosind facilitatea Add Images or other files. Namespace-ul in care se incarca fisierele este de tipul :pm:prj20??:c? sau :pm:prj20??:c?:nume_student (daca este cazul). Exemplu: Dumitru Alin, 331CC → :pm:prj2009:cc:dumitru_alin.
Jurnal
Puteti avea si o sectiune de jurnal in care sa poata urmari asistentul de proiect progresul proiectului.
Bibliografie/Resurse
Lista cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe Resurse Software si Resurse Hardware.
Export to PDF