This shows you the differences between two versions of the page.
pm:prj2025:iotelea:andreea.olteanu3110 [2025/05/18 16:30] andreea.olteanu3110 [Cum interactioneaza acestea?] |
pm:prj2025:iotelea:andreea.olteanu3110 [2025/05/22 23:11] (current) andreea.olteanu3110 [Hardware Design] |
||
---|---|---|---|
Line 73: | Line 73: | ||
===== Schema bloc ===== | ===== Schema bloc ===== | ||
- | {{:pm:prj2025:iotelea:windshield_wipers.png|}} | + | {{:pm:prj2025:iotelea:wipers_schema_bloc.png|700}} |
===== Schema electrica ===== | ===== Schema electrica ===== | ||
+ | {{:pm:prj2025:iotelea:electric_wipers.png|700}} | ||
===== Hardware Design ===== | ===== Hardware Design ===== | ||
Line 95: | Line 96: | ||
^ Nr. crt. ^ Componentă ^ Tip de semnal / protocol ^ Pini Arduino folosiți ^ | ^ Nr. crt. ^ Componentă ^ Tip de semnal / protocol ^ Pini Arduino folosiți ^ | ||
| 1 | Arduino UNO R3 ATmega328P| GPIO, PWM, ADC| — | | | 1 | Arduino UNO R3 ATmega328P| GPIO, PWM, ADC| — | | ||
- | | 2 | LCD 1602 | - | D2, D3, D4, D11, D12, D13 | | + | | 2 | LCD 1602 | — | D2, D3, D4, D11, D12, D13 | |
| 3 | Modul senzor ploaie | ADC (Analog Input) | A0 | | | 3 | Modul senzor ploaie | ADC (Analog Input) | A0 | | ||
| 4 | Senzor lumina fotorezistor | ADC (Analog Input) | A1 | | | 4 | Senzor lumina fotorezistor | ADC (Analog Input) | A1 | | ||
Line 103: | Line 104: | ||
| 8 | LED verde | GPIO (Digital Output) | D9 | | | 8 | LED verde | GPIO (Digital Output) | D9 | | ||
| 9 | LED alb | GPIO (Digital Output) | D10 | | | 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: | ||
+ | |||
+ | {{:pm:prj2025:iotelea:circuit.jpg?500|}} | ||
+ | |||
+ | {{:pm:prj2025:iotelea:lcd_functional.jpg?300|}} | ||
+ | |||
+ | {{:pm:prj2025:iotelea:masina.jpg?500|}} | ||
+ | |||
+ | Pentru videoclip accesati link-ul [[https://drive.google.com/file/d/1s6rIF-9qkGIjMB1QSkm7WiVDKdR_ng_W/view?usp=drive_link| Wipers Video]] | ||
===== Software Design ===== | ===== Software Design ===== | ||
- | Codul a fost dezvoltat in mediul Arduino IDE. Nu au fost utilizate biblioteci externe, doar functionalitati standard (pinMode, analogRead, digitalWrite, delay etc.). | + | 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: | Structura software: | ||
Line 114: | Line 127: | ||
* Decizie logica pe baza combinatiei celor doua valori. | * Decizie logica pe baza combinatiei celor doua valori. | ||
- | * Comanda PWM simplificata catre servomotoare pentru a simula miscarea de stanga-dreapta la 90°. | + | * Comanda PWM catre servomotoare pentru a simula miscarea de stanga-dreapta la 90°. |
* Comanda luminoasa prin aprinderea LED-urilor in functie de starea parbrizului. | * Comanda luminoasa prin aprinderea LED-urilor in functie de starea parbrizului. | ||
+ | |||
+ | * Afisarea pe LCD a timpului de functionare a stergatoarelor. | ||
Functii implementate: | Functii implementate: | ||
Line 133: | Line 148: | ||
* Daca senzorul de lumina detecteaza un nivel scazut de lumina(parbriz murdar), LED-ul rosu se aprinde si stergatoarele sunt oprite pentru a preveni deteriorarea. | * Daca senzorul de lumina detecteaza un nivel scazut de lumina(parbriz murdar), LED-ul rosu se aprinde si stergatoarele sunt oprite pentru a preveni deteriorarea. | ||
+ | |||
+ | * Dupa oprirea stergatoarelor se afiseaza pe LCD durata de functionare a acestora. | ||
Simularile cu ploaie de intensitati diferite si cu parbriz murdar/curat au aratat o buna functionalitate a sistemului. | Simularile cu ploaie de intensitati diferite si cu parbriz murdar/curat au aratat o buna functionalitate a sistemului. | ||
Line 138: | Line 155: | ||
===== Concluzii ===== | ===== Concluzii ===== | ||
+ | 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. | ||
===== Download ===== | ===== Download ===== | ||
+ | Codul poate fi descarcat de la [[https://github.com/Deea2oo3/Winshield-Wipers| Pagina de GitHub]] | ||
===== Jurnal ===== | ===== Jurnal ===== | ||
Line 162: | Line 180: | ||
===== Bibliografie/Resurse ===== | ===== Bibliografie/Resurse ===== | ||
- | <note> | + | [[https://www.makerguides.com/how-to-control-a-360-degree-servo-motor-with-arduino/| Controlul unui servomotor]] |
- | [[| Pagina de GitHub]] | + | |
+ | [[https://www.youtube.com/watch?v=PA4G6-9jHx4| Cum sa folosesti un display LCD]] | ||
+ | [[https://schemaelectrica.blogspot.com/2017/11/fotorezistorul.html| Fotorezistor]] | ||
+ | [[https://circuitspedia.com/arduino-servo-motor-control/| Conexiuni Servomotor]] |