Senzor de distanță

A. Scopul proiectului

 Vom măsura distanța până la un obiect folosind un senzor ultrasonic.

B. Componentele necesare

  • Arduino Uno;
  • Senzor ultrasonic HC-SR04;
  • Fire.

C. Diagrama de conectare

Diagrama de conectare a senzorului ultrasonic

D. Conexiunea firelor

  • VCC la 5V;
  • GND la GND;
  • ECHO la pinul D2 al plăcii Arduino;
  • TRIG la pinul D3 al plăcii Arduino;

E. Codul sursă

Link:

https://www.tinkercad.com/things/8bIIiIyBBu6-senzor-distanta

#define echoPin 2 // Pinu ECHO va prelua D2
#define trigPin 3 //Pinul TRIG va prelua D3
// definim variabilele
long duration; // variabilă pentru durata deplasării undelor sonore
int distance; // variabilă pentru măsurarea distanței
void setup() {
  pinMode(trigPin, OUTPUT); // Setăm pinul TRIG ca OUTPUT
  pinMode(echoPin, INPUT); // Setăm pinul ECHO ca INPUT
  Serial.begin(9600); 
  Serial.println("Test pentru senzorul ultrasonic HC-SR04"); // Scriem în Serial Monitor
}
void loop() {
  // Ștergem condiția TRIG
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  // Setăm pinul TRIG să funcționeze 10 milisecunde
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);
  //Citește echoPin, returnează timpul de deplasare al undei sonore în microsecunde
  duration = pulseIn(echoPin, HIGH);
  // Calculează distanța 
  distance = duration * 0.034 / 2; // Jumătate din viteza undei sonore
  // Afișăm distanța in Serial Monitor
  Serial.print("Distanta: ");
  Serial.print(distance);
  Serial.println(" cm");
}

F. Informații

Senzorul ultrasonic HC-SR04

Senzorul ultrasonic (HC-SR04) este un senzor care poate măsura distanța. Dispozitivul emite ultrasunete la 40 kHz care se deplasează în aer, iar dacă aceste undele se lovesc de un obstacol se vor întoarce la senzor. 

Senzorul este alcătuit dintr-un transmițător (ce trimite semnalul) și un receptor (care primește semnalul). Distanta maxima pe care o poate masura acest tip de senzor este de 450 cm, la un unghi mai mic de 15 grade fata de senzori.

Știați că? Viteza sunetului în aer este de aproximativ 340 m/s (depinde de temperatură)?

Exemplu: Cât timp se deplasează unda sonoră, dacă obiectul este situat la 20 de cm față de senzor, iar viteza sunetului este de 340 m/s?

 Calcul:
   v = 340 m/s;   vviteza  ddistața 
   v = 0.034 cm/μs;  ttimpul  sviteza sunetului
   t = d/s => 20/0.034 = 588 μs;
 Pinul ECHO va citi o valoare dublă deoarece unda sonoră trebuie  se deplaseze atât înainte, cât și inapoi.
 Deci, avem relația: d = t * 0.034 / 2