This shows you the differences between two versions of the page.
|
pm:prj2021:avaduva:rev_parking_sensor [2021/04/25 19:39] teodora.rumanu created |
pm:prj2021:avaduva:rev_parking_sensor [2021/06/02 04:17] (current) teodora.rumanu [Bibliografie/Resurse] |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ===== Reverse Parking Sensor ===== | ===== Reverse Parking Sensor ===== | ||
| + | |||
| + | Autor: [[teodora.rumanu@stud.acs.upb.ro|Teodora RUMÂNU]] | ||
| ===== Introducere ===== | ===== Introducere ===== | ||
| Line 6: | Line 8: | ||
| ===== Descriere generală ===== | ===== Descriere generală ===== | ||
| - | Cu ajutorul unui senzor este determinată distanța mașinii față de obstacol. | + | Pentru a înțelege modul de funcționare, trebuie avute în vedere două praguri pentru distanță - unul aflat la 10cm, iar celălalt aflat la 50cm - care descriu trei zone: |
| - | * Daca distanța este suficient de mare (astfel încât să nu existe pericol de accidentare), LED-ul verde este aprins. | + | {{ :pm:prj2021:avaduva:schema_sistem.png?direct&200 |}} |
| - | * Daca distanța se micșorează și scade sub pragul de distanță sigură, se aprinde LED-ul galben. | + | * //**Zona verde**//: aflată după pragul de 50cm, la o distanță suficient de mare astfel încât să ofere siguranță |
| - | * În cazul în care distanța se micșorează și mai mult, se prinde LED-ul roșu si se declanșează alarma. | + | * //**Zona galbena**//: are limitele între cele două praguri, descrie o distanță mai puțin sigură, dar nu alarmantă, însă este nevoie de un avertisment pentru a preveni un potențial accident |
| + | * //**Zona roșie**//: se află sub pragul de 10cm, la o distanță critică, alarmantă, foarte aproape de impact cu obstacolul | ||
| ==== Schema bloc ==== | ==== Schema bloc ==== | ||
| - | {{ :pm:prj2021:avaduva:schema_bloc_revparking.png?300 |}} | + | {{ :pm:prj2021:avaduva:schema_bloc_rev_park.png?600 |}} |
| ===== Hardware Design ===== | ===== Hardware Design ===== | ||
| ==== Lista de Piese ==== | ==== Lista de Piese ==== | ||
| - | * Arduino UNO | + | * [[https://cleste.ro/kit-inva-are-arduino.html|Arduino UNO]] |
| - | * Breadboard | + | * [[https://cleste.ro/kit-inva-are-arduino.html|Breadboard]] |
| - | * Senzor Ultrasonic HC-SR04 | + | * [[https://cleste.ro/senzor-ultrasonic-hc-sr04.html|Senzor Ultrasonic HC-SR04]] |
| - | * Buzzer | + | * [[https://cleste.ro/buzzer-3-24v.html|Buzzer]] |
| - | * LED-uri | + | * [[https://cleste.ro/kit-inva-are-arduino.html|LED-uri]] |
| - | * Rezistențe | + | * [[https://cleste.ro/kit-inva-are-arduino.html|Rezistențe]] |
| - | * Fire mamă-tată | + | * [[https://cleste.ro/kit-inva-are-arduino.html|Fire tată-tată]] |
| - | * Fire tată-tată | + | |
| - | ===== Software Design ===== | + | ==== Schema electrică ==== |
| - | ===== Rezultate Obținute ===== | + | {{ :pm:prj2021:avaduva:schema_electica_rev_parking.png?direct&700 |}} |
| - | ===== Concluzii ===== | + | |
| - | ===== Download ===== | + | |
| - | ===== Jurnal ===== | + | |
| - | ===== Bibliografie/Resurse ===== | + | |
| + | **Senzor Ultrasonic HC-SR04** | ||
| + | * funcționează precum un aparat de sonar - emite ultrasunete la o frecvență de 40000Hz în aer iar dacă acestea lovesc un obiect, sunt reflectate, conform schemei: | ||
| + | {{ :pm:prj2021:avaduva:sensor_func.png?direct&100 |}} | ||
| + | * detectează obiecte de la 2 cm la 4m distanță | ||
| + | * are 4 pini - GND, VCC, Trig și Echo | ||
| + | * pinii GND și VCC se conectează la pinii echivalenți de pe Breadboard, care la rândul lor sunt conectați la pinii de GND și VCC de pe placă | ||
| + | * pinul Trig este conectat la pinul 10 de pe plăcuța Arduino, iar Echo, la pinul 9 | ||
| + | **Buzzer** | ||
| + | * de tip Piezoelectric | ||
| + | * are incorporate două fire, unul negru(GND) și unul roșu | ||
| + | * firul de GND este conectat la pinul corespunzător de pe Breadboard, iar firul roșu este conectat la pinul 2 de pe Arduino | ||
| + | ===== Software Design ===== | ||
| + | * Mediu de dezvoltare și compilare: Arduino IDE | ||
| + | === Implementare === | ||
| + | - înainte de setup(): | ||
| + | * definire pini ce urmează să fie folosiți | ||
| + | * definire variabile pentru timp și distanța | ||
| + | - setup(): | ||
| + | * setare pini pentru OUTPUT/INPUT | ||
| + | * start interfață seriala | ||
| + | - loop(): | ||
| + | * curățare pin TRIG prin setarea acestuia la LOW pentru 5 microsecunde | ||
| + | * TRIG este setat la HIGH pentru 10 microsecunde pentru a putea emite ultrasunetele | ||
| + | * pentru calcularea distanței, se folosește formula //d=t*v//, unde | ||
| + | //**v**//- viteza sunetului, iar //**t**// - timpul de parcurgere al undelor de la senzor la obiect și înapoi, aflat cu ajutorul funcției //pulseIn()// | ||
| + | * dacă distanța este mai mică de 10 cm, atunci se aprinde doar LED-ul //roșu// și se activează alarma cu ajutorul funcțiilor //tone()// și //delay()//- pentru a produce sunet pentru 2,5s și //noTone()// pentru a face pauza între sunete | ||
| + | * dacă distanța este între 10 și 50 cm, atunci este aprins LED-ul //galben//, iar alarma devine mai rară, având o pauză mai mare între sunete și o frecvența mai puțin gravă decât alarma din zona roșie | ||
| + | * dacă distanța este mai mare decât 50cm, atunci nu se mai declanșează nicio alarmă și se aprinde LED-ul //verde// | ||
| + | ===== Rezultate Obținute ===== | ||
| + | Poze circuit: | ||
| + | {{ :pm:prj2021:avaduva:rev_parking_sensor_1.jpeg?direct&300 |}} | ||
| + | {{ :pm:prj2021:avaduva:rev_parking_sensor_2.jpeg?direct&300 |}} | ||
| + | {{ :pm:prj2021:avaduva:rev_parking_sensor_3.jpeg?direct&300 |}} | ||
| + | {{ :pm:prj2021:avaduva:rev_parking_sensor_4.jpeg?direct&300 |}} | ||
| + | {{ :pm:prj2021:avaduva:rev_parking_sensor_5.jpeg?direct&300 |}} | ||
| + | Video funcționalitate: [[https://drive.google.com/drive/folders/1bOkUIls670o8j077YUHlMBAaX7-OypxY?usp=sharing|Demo proiect]] | ||
| + | ===== Concluzii ===== | ||
| + | Proiectul funcționează conform celor descrise mai sus. În funcție de distanța dintre senzor(mașină) și obstacol - distanță determinată prin intermediul pinului Echo al senzorului - circuitul are diferite comportamente, aprinzând anumite LED-uri sau declanșând alarme. | ||
| + | Per total, a fost un proiect plăcut de realizat, fără creare de probleme și interesant de testat. | ||
| + | ===== Download ===== | ||
| + | {{:pm:prj2021:avaduva:parking_sensor.zip|Rev_Parking_Sensor}} | ||
| + | |||
| + | [[https://ocw.cs.pub.ro/courses/pm/prj2021/avaduva/rev_parking_sensor?do=export_pdf|Export to PDF]] | ||
| + | |||
| + | ===== Bibliografie/Resurse ===== | ||
| + | [[https://cdn.sparkfun.com/datasheets/Sensors/Proximity/HCSR04.pdf]] | ||
| + | [[https://howtomechatronics.com/tutorials/arduino/ultrasonic-sensor-hc-sr04/]] | ||
| + | [[https://randomnerdtutorials.com/complete-guide-for-ultrasonic-sensor-hc-sr04/]] | ||
| + | [[https://www.pcbway.com/blog/News/New_product_in_gift_shop__HC_SR04_Ultrasonic_Ranging_Sensor_Module.html]] | ||
| + | [[https://create.arduino.cc/projecthub/mudit_5246/arduino-car-reverse-parking-alert-system-bd518b?ref=tag&ref_id=alarm&offset=21]] | ||
| + | [[https://www.arduino.cc/reference/en/language/functions/advanced-io/tone/]] | ||
| + | [[https://www.arduino.cc/reference/en/language/functions/advanced-io/pulsein/]] | ||
| + | [[https://create.arduino.cc/projecthub/Vijendra/arduino-based-collision-detection-warning-system-d1beec?ref=search&ref_id=arduino%20uno&offset=49]] | ||
| + | [[https://ocw.cs.pub.ro/courses/pm/prj2021/avaduva/rev_parking_sensor?do=export_pdf|Export to PDF]] | ||