Môj profil
Kategórie produktov

HC-SR04 Ultrazvukový senzor vzdialenosti

1.65 (bez DPH 1.34 )

Ultrazvukový senzor pre meranie vzdialenosti do 4 metrov.

112 na sklade

Skladom 112 ks

Popis

HC-SR04 je ultrazvukový senzor určený na meranie vzdialenosti na základe doby odrazu ultrazvukového signálu od prekážky. Senzor pracuje s frekvenciou 40 kHz a je vhodný pre aplikácie vyžadujúce detekciu a meranie vzdialenosti objektov.

Technické parametre

Napájacie napätie 3,8 – 5,5 V
Spotreba prúdu 8 mA
Pracovná frekvencia 40 kHz
Merací rozsah 2 – 400 cm
Minimálna vzdialenosť 1-2 cm
Maximálna vzdialenosť 400 cm (4 m)
Presnosť 3 mm
Uhol detekcie 15°
Dĺžka trigger impulzu 10 µs
Rozhranie digitálne – Echo výstup

Princíp činnosti

Senzor obsahuje vysielač (transmitter) a prijímač (receiver) ultrazvukového signálu. Vysielač generuje sériu ultrazvukových pulzov, ktoré sa šíria vzduchu a odrážajú od prekážky. Prijímač zachytí odrazený signál a na základe času medzi vyslaním a prijatím sa vypočíta vzdialenosť. Presnosť merania závisí od kvality napájania a stability elektrickej siete.

Zapojenie a používanie

Senzor má štyri vývodné piny: VCC (napájanie), GND (zem), TRIG (trigger vstup) a ECHO (výstup). Meranie sa spúšťa krátkym pulzom na TRIG pine (minimum 10 µs). Výstup ECHO vracia pulz, ktorého trvanie je úmerné nameranej vzdialenosti. Kalkulácia vzdialenosti sa uskutočňuje programovo na základe dĺžky ECHO pulzu.

Aplikácie

  • Meranie hladín v nádobách
  • Detekcia objektov a prekážok v robotike
  • Automaty s bezkontaktným spínaním
  • Parkovacie asistenty a navigačné systémy
  • Systémy pre meranie vzdialenosti v priemysle

Dostupný materiál

V ponuke máme zaradený aj vode odolný typ JSN-SR04T. V našej ponuke môžete nájsť aj akrylický držiak pre tento senzor, či testovaciu dosku.

Poznámky k prevádzke

Presnosť merania je ovplyvňovaná kvalitou a stabilitou napájacieho napätia. Oscilujúce alebo nízko-kvalitné napájanie môže spôsobiť nepresnosti v meraniach. Pri meraní vlhkých alebo mokrých povrchov sa môže odrážajúci signál oslabiť. Ultrazvukový signál sa odráža predovšetkým od tuhých objektov; mäkké materiály (penový plast, textil) odrážajú zvuk s nižšou účinnosťou.

Ďalšie informácie

Hmotnosť 8 g
Návrhy na tutoriál

A)https://www.youtube.com/watch?v=hVLFuIDK0-I, B)https://www.youtube.com/watch?v=ZejQOX69K5M, https://howtomechatronics.com/tutorials/arduino/ultrasonic-sensor-hc-sr04/

Typ senzora

ultrazvuk

Dosah/rozsah merania

4 metre

Rozhranie

digitálne

Napájacie napätie

3.3V, 5V

Poznámka

Výrobok nie je samostatne funkčný celok a vyžaduje odbornú montáž

Návod

Návod - ultrazvukový senzor HC-SR04

V nasledujúcom článku sa povenujeme ultrazvukovému senzoru vzdialenosti HC-SR04. Používanie senzora je pomerne jednoduché, nakoľko nepotrebujeme žiadne knižnice a na pripojenie k vývojovej doske stačia 2 kábliky.

Princíp fungovania

Ultrazvukový modul HC-SR04 má na doske zabudované 2 kusy ultrazvukových transducerov. Jedná sa o vysielací a prijímací ultrazvukový reproduktor. Modul generuje štvorcový signál pre vysielací transducer, ktorý generuje ultrazvuk približne s frekvenciou 40KHz. Ľudské ucho počuje zvukové signály len do frekvencie 20KHz, takže pre nás je zvuk nepočuteľný. Tento ultrazvuk cestuje priestorom a v prípade, že sa v blízkosti nachádza prekážka, odrazí sa od nej naspäť smerom k modulu. Druhý prijímací transducer ultrazvuk deteguje a pomocou zabudovaných komponentov na doske sa ultrazvuk interpretuje na elektrický signál logickej 1 na výstupe. Podľa toho, ako dlho zvuku trvalo cestovanie priestorom vieme odhadnúť, v akej vzdialenosti sa prekážka nachádza.

Detecting distance with HC-SR04 sensor - Arduino Platform

Pre viac informácií odporúčame preštudovať datasheet.

Spustenie ultrazvuku vieme ovládať pomocou pinu TRIG a následne teda sledujeme, za aký čas sa nám objaví signál na pine ECHO.

Program a zapojenie

Ako bolo spomínané vyššie, na správne fungovanie nepotrebujeme žiadne knižnice, stačí nám trošku matematiky.

Pre ovládanie senzora použijeme 2 kábliky podľa zapojenia:

HC SR04

A kód:

//tento kód nám zabezpečí odmeranie vzdialenosti a zároveň ju vypíšeme na seriálový monitor

int triggerPin = 11;    // Trigger pin
int echoPin = 12;    // Echo pin
long trvanie;
int vzdialenosť;

void setup() {
  
  Serial.begin(9600); //inicializácia komunikácie s PC  
  pinMode(triggerPin, OUTPUT); //definovanie pinu ako výstup
  pinMode(echoPin, INPUT);  //definovanie pinu ako vstup
}

void loop() {
  // na veľmi krátky čas 10 mikrosekúnd spustíme ultrazvuk
  digitalWrite(triggerPin, LOW);
  delayMicroseconds(5);
  digitalWrite(triggerPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(triggerPin, LOW);

  pinMode(echoPin, INPUT);
  trvanie = pulseIn(echoPin, HIGH);  //funkcia pulseIn() nám počká kým na pine echoPin bude signál a vráti nám hodnotu v mikrosekundách

  // konverzia času na vzdialenosť
  vzdialenost = trvanie * 0.0343 / 2;

  Serial.print(vzdialenost); //výpis vzdialenosti
  Serial.print("cm"); //výpis
  Serial.println(); //prázdny riadok pre medzeru

  delay(250); //chvíĺu medzi meraniami počkáme, konkrétne 250 milisekúnd
}

Vysvetlenie vzorca [vzdialenost = trvanie * 0.0343 / 2;]

Ako sme spomínali vyššie, modul funguje tak, že spustí ultrazvuk a čaká, kým sa nám signál vráti cez priestor naspäť. Najskôr teda vynásobíme trvanie tohto cestovania rýchlosťou zvuku vo vzduchu, teda 343 metrov za sekundu. My však máme nameraný časv mikrosekundách, takže keď to premeníme je to 0.000343 metrov za mikrosekundu. Okrem toho potrebujeme centimetre takže *100 = 0.0343.

Potom myslime na to, že signál vlastne cestoval tam a späť, takže ešte musíme vydeliť výsledok dvomi (my chceme len vzdialenosť cesty „tam“).

Ďalšie čítanie a zdroje

  • https://sk.wikipedia.org/wiki/R%C3%BDchlos%C5%A5_zvuku
  • https://www.makerguides.com/wp-content/uploads/2019/02/HCSR04-Datasheet.pdf
  • https://www.arduinoplatform.com/detecting-distance-with-hc-sr04-sensor/
  • http://electronoobs.com/eng_arduino_tut80.php

Časté otázky

Ako presne funguje meranie vzdialenosti?

Senzor vysiela ultrazvukový pulz na frekvencii 40 kHz. Signál sa odráža od prekážky a vráti sa k prijímaču. Čas medzi vyslaním a príchodom odrazu sa konvertuje na vzdialenosť na základe rýchlosti zvuku vo vzduchu.

Aký je minimálny a maximálny rozsah merania?

Minimálna merateľná vzdialenosť je 1-2 cm, maximálna je 400 cm (4 m). Presnosť v celom rozsahu je približne 3 mm.

Ako sa pripája senzor k Arduino?

TRIG pin sa pripája na ľubovoľný digitálny výstupný pin, ECHO pin na vstup s možnosťou merania času (ideálne pin s prerušením). VCC sa pripája na 5V, GND na zem. Programovo sa vytvorí 10 µs pulz na TRIG pine a meria sa trvanie ECHO pulzu.

Prečo senzor nie vždy dáva presné hodnoty?

Merania sú ovplyvňovaná kvalitou napájania. Nestabilné napájanie alebo výrazné kolísanie napätia sa prejavuje na presnosti. Takisto teplota vzduchu ovplyvňuje rýchlosť zvuku. Ultrazvuková energia sa tlmí na väčšie vzdialenosti.

Čo sa stane, keď senzor nemeraný objekt nevidí?

Ak sa ultrazvukový pulz nevracia (bez prekážky v dosahu), ECHO pin ostáva HIGH podľa nastavenia timeout hodnoty. Programovo sa zvyčajne nastaví maximálny čas čakania (typicky okolo 30 ms), aby sa zabránilo zacykleniu.

Ako ovplyvňuje teplota presnosť merania?

Teplota vzduchu priamo ovplyvňuje rýchlosť zvuku. Pri vyšších teplotách sa zvuk šíri rýchlejšie, pri nižších pomalšie. Teplotné zmeny až o niekoľko stupňov Celzia spôsobujú odchýlky v meraniach v rozsahu jednotiek milimetrov.