Autor: Andreea-Denisa Olteanu
Grupa: 332CD
In conditii meteorologice nefavorabile, cum ar fi ploaia, vizibilitatea la volan scade considerabil. Stergatoarele de parbriz joaca un rol esential in mentinerea claritatii vizuale pentru sofer. Acest proiect urmareste sa simuleze in miniatura un sistem automatizat de stergatoare de parbriz care reactioneaza in functie de intensitatea ploii, dar si de starea de curatenie a parbrizului, indicand starea acestuia cu ajutorul unor led-uri si specificand timpul de functionare al stergatoarelor.
Scopul acestui proiect este de a proiecta si implementa un sistem automat de stergatoare de parbriz folosind o placa de dezvoltare Arduino UNO R3, senzori de ploaie si lumina, cu scopul de a imbunatati siguranta rutiera prin mentinerea unei bune vizibilitati in timpul deplasarii. In plus, sistemul detecteaza daca parbrizul este murdar si intrerupe automat functionarea stergatoarelor pentru a evita uzura sau deteriorarea acestora.
Sistemul ofera o reprezentare vizuala a starii parbrizului prin aprinderea unor LED-uri colorate:
In plus, mai exista un LED alb situat in fata parbrizului cu scopul de a face lumina pentru senzorul de intensitate luminoasa astfel incat acesta sa poata transmite in mod corect cand este parbrizul murdar si un LCD ce transmite durata de functionare a stergatoarelor pe timpul deplasarii.
Proiectul consta in realizarea unui sistem de stergatoare inteligente, controlat de o placa Arduino UNO R3. Sistemul foloseste un senzor de ploaie care detecteaza nivelul de umiditate si ajusteaza viteza stergatoarelor pe baza acestuia, un senzor de lumina amplasat pe partea interioara a parbrizului care masoara cantitatea de lumina ce trece prin geam pentru a detecta daca geamul este murdar sau nu, doua motoare mici cu brat de stergator care simuleaza miscarea stergatoarelor si un LCD care afiseaza timpul de functionare al acestora.
Componentele sunt alimentate prin Arduino, care actioneaza ca unitate de control central, analizand in timp real datele primite de la senzori si luand deciziile corespunzatoare pentru actionarea stergatoarelor si semnalizarea luminoasa a starii parbrizului.
Lista de piese:
1 x Arduino UNO R3 ATmega328P
2 x Servomotor SG90
1 x Modul senzor ploaie
1 x Senzor lumina cu fotorezistor
1 x Breadboard
6 x Rezistor
4 x LED(alb, verde, galben, rosu)
1 × LCD 1602
Fire de conectare
Senzorul de ploaie detecteaza picaturile de apa. Arduino citeste valoarea de pe pinul analogic:
Senzorul de lumina masoara lumina care trece prin parbriz:
Servomotoarele sunt controlate de Arduino in funcție de aceste doua variabile (ploaie si lumina), simuland stergatoarele de parbriz intr-un mod realist.
LED-uri pentru starea sistemului:
LED-ul alb este mereu aprins pentru a asigura iluminarea necesara senzorului de lumina.
LCD-ul 1602 ofera o interfața suplimentara pentru utilizator. Acesta afisează durata totala in care stergatoarele au fost active, oferind un feedback util legat de conditiile meteo parcurse.
Bill Of Materials:
Nr. crt. | Componentă | Tip de semnal / protocol | Pini Arduino folosiți |
---|---|---|---|
1 | Arduino UNO R3 ATmega328P | GPIO, PWM, ADC | — |
2 | LCD 1602 | — | D2, D3, D4, D11, D12, D13 |
3 | Modul senzor ploaie | ADC (Analog Input) | A0 |
4 | Senzor lumina fotorezistor | ADC (Analog Input) | A1 |
5 | Servomotor SG90 | PWM (semnal control servo) | D5, D6 |
6 | LED rosu | GPIO (Digital Output) | D7 |
7 | LED galben | GPIO (Digital Output) | D8 |
8 | LED verde | GPIO (Digital Output) | D9 |
9 | LED alb | GPIO (Digital Output) | D10 |
Pentru servomotoare am ales pinii D5 si D6 pentru a putea folosi PWM ca si protocol de comunicatie.
In plus, mai jos pot fi vazute imagini si un videoclip cu circuitul si functionalitatea acestuia:
Pentru videoclip accesati link-ul Wipers Video
Codul a fost dezvoltat in mediul Arduino IDE. Ca si biblioteci externe am folosit doar LiquidCrystal.h pentru utilizarea LCD-ului, iar in rest am folosit doar functionalitati standard (pinMode, analogRead, digitalWrite, delay etc.).
Structura software:
Functii implementate:
Sistemul raspunde corect in functie de starea senzorilor:
Simularile cu ploaie de intensitati diferite si cu parbriz murdar/curat au aratat o buna functionalitate a sistemului.
Desi servomotoarele mi-au dat batai de cap, a fost amuzant sa “mesteresc” la acest proiect, iar satisfactia de la final a facut sa merite.
Codul poate fi descarcat de la Pagina de GitHub