Măsurarea distanței cu senzorul ultrasonic HC-SR04

Senzorul ultrasonic HC-SR04 este unul dintre cei mai utilizați pentru aflarea distanței. În special folosit pentru proiectele cu plăci de dezvoltare Arduino, are avantaje față de senzorii analogici, necesitând doar pini I/O digitali și prezintă o imunitate mai mare la zgomotul din jur.

Senzorul emite ultrasunete la o frecvență de 40000Hz care circulă prin aer, iar dacă întâlnește un obstacol, acesta se va întoarce înapoi spre modul, astfel, luând în considerare viteza sunetului se poate calcula distanța până la obiect.

Pinii senzorului HC-SR04

  • Pin 1: VCC
  • Pin 2: Triger
  • Pin 3: Echo
  • Pin 4: GND

Piese necesare pentru realizarea proiectului:

Cost total proiect: 82,33 RON – Costul poate varia în funcție de prețurile actuale, promoții sau eventuale piese și accesorii pe care le aveți deja.

Descrierea proiectului:

Utilizând aplicația Arduino IDE am programat placa de dezvoltare Arduino Nano V3. Alimentarea plăcii și transferul de date către aceasta sunt realizate prin cablul USB AM-B MINI. Codul sursă este disponibil la finalul articolului.

Se atașează un senzor ultrasonic HC-SR04 la o placă Arduino Nano V3 pentru a măsura distanța de la senzor până la primul obiect întâlnit. Acesta are o distanță de funcționare cuprinsă între 2cm și 4 metri. Iar pe ecranul LCD se va afișa distanța respectivă.

Interconectarea pieselor folosite:

  • Arduino Nano V3 – Senzor DS18B20+
    • GND – Gnd
    • D7 – Echo
    • D9 – Triger
    • 5V – Vcc
  • Arduino Nano V3 – LCD 1602 IIC/I2C
    • GND – GND
    • 5V – VCC
    • A4 – SDA
    • A5 – SCL

Procedura de programare:

Procedura de programare se împarte în trei etape. Prima etapă conține inițializarea pinilor și a timpului necesar ping-ului pentru a ajunge la țintă și înapoi, distanța dintre senzor și obiect, dar și viteza sunetului măsurată în mile pe oră. În a doua etapă și anume în funcția „setup” se deschide ecranul lcd ce va afișa un text pe prima linie. Iar în ultima etapă, funcția „loop” este alcătuită din linii de cod ce setează starea pinilor, ce convertesc timpul ping-ului în ore și apoi în secunde, ce afișează pe lcd datele colectate de senzor.

Codul sursă:

Codul sursă îl puteți downloada de AICI, iar dacă aveți întrebări nu ezitați să ne contactați.

Idei de dezvoltare ulterioară a proiectului:

  • Folosirea unui servomotor pentru a mări zona de acțiune a senzorului.

Tu ce ai fi făcut diferit la acest proiect sau ce îmbunătățiri crezi că îi poți aduce? Așteptăm răspunsul tău mai jos în comentarii.

Ne rezervăm dreptul de proprietate asupra materialelor foto & video și este interzisă orice preluare de astfel de materiale fără acordul nostru scris.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *