norr@manorshi.com         +86-519-89185720
1
Centar vijesti

Kako koristiti ultrazvučni senzor s Arduinom?

Pregleda: 164     Autor: Grace Vrijeme objave: 26. srpnja 2021. Podrijetlo: stranica

facebook gumb za dijeljenje
gumb za dijeljenje na twitteru
gumb za dijeljenje linije
wechat gumb za dijeljenje
linkedin gumb za dijeljenje
pinterest gumb za dijeljenje
WhatsApp gumb za dijeljenje
gumb za dijeljenje kakao
snapchat gumb za dijeljenje
gumb za dijeljenje telegrama
podijeli ovaj gumb za dijeljenje

Kako koristiti ultrazvučni senzor s Arduinom: Vodič za HC-SR04

The Ultrazvučni senzor HC-SR04 jedan je od najpopularnijih modula za mjerenje udaljenosti za Arduino projekte. Naširoko se koristi u robotima za izbjegavanje prepreka, senzorima za parkiranje, otkrivanju razine, pametnim kantama za smeće, mjeračima udaljenosti i drugim aplikacijama za beskontaktno otkrivanje.

Modul emitira ultrazvučne valove od 40 kHz putem odašiljača. Kada se zvučni val susretne s objektom, reflektira se natrag do prijemnika. Mjerenjem vremena odjeka i korištenjem brzine zvuka, Arduino može izračunati udaljenost između senzora i objekta.

HC-SR04 ultrazvučni senzorski modul za Arduino mjerenje udaljenosti

HC-SR04 Glavni tehnički parametri

Parametar Vrijednost
Tipični radni napon 5V DC
Statička radna struja Manje od 5mA na nekim verzijama modula
Radna frekvencija Ultrazvučni val od 40 kHz
Udaljenost detekcije Uobičajeni raspon: 2 cm do 400 cm; neke verzije s podešavanjem pojačanja mogu podržavati veći domet.
Kut detekcije Obično unutar 15 stupnjeva; neke verzije s većim pojačanjem mogu doseći oko 30 stupnjeva.
Preciznost Do otprilike 0,3 cm pod odgovarajućim uvjetima ispitivanja
Slijepa zona Oko 2 cm minimalne mjerne udaljenosti

Opis pina HC-SR04

Ultrazvučni modul HC-SR04 ima četiri pina: VCC, TRIG, ECHO i GND. Arduino šalje kratki okidački impuls na TRIG pin, zatim čita povratni impuls s ECHO pin-a.

HC-SR04 Pin Arduino veza Funkcija
VCC 5V Napajanje za ultrazvučni modul.
TRIG Digitalni pin 9 Unos okidača. Arduino primjenjuje impuls od 10us za početak mjerenja.
ODJEK Digitalni pin 10 Eho izlaz. Arduino očitava širinu impulsa kako bi izračunao udaljenost.
GND GND Priključak na uzemljenje.

HC-SR04 pinout ultrazvučnog senzora VCC TRIG ECHO GND

Princip rada ultrazvučnog senzora HC-SR04

HC-SR04 radi na temelju mjerenja vremena leta. Arduino šalje okidački signal visoke razine od najmanje 10 mikrosekundi na TRIG pin. Modul zatim automatski šalje osam ultrazvučnih impulsa od 40 kHz i čeka reflektirani eho.

Kada se detektira reflektirani ultrazvučni signal, ECHO pin emitira puls visoke razine. Trajanje ovog impulsa je vrijeme povratnog putovanja ultrazvučnog vala.

Udaljenost = vrijeme visoke razine odjeka × brzina zvuka / 2

U Arduino kodu, uobičajena pojednostavljena formula je:

Udaljenost u cm = trajanje × 0,0343 / 2

HC-SR04 princip rada ultrazvučnog modula vrijeme leta

HC-SR04 vremenski dijagram ultrazvučnog modula

Proces mjerenja vremena je jednostavan: Arduino kratko drži TRIG na niskom nivou, šalje visoki puls od 10us, zatim vraća TRIG na niski. HC-SR04 šalje ultrazvučni prasak i postavlja ECHO visoko dok se reflektirani signal ne vrati ili dok mjerenje ne istekne.

Kako biste izbjegli nestabilna očitanja, ostavite kratku pauzu između mjerenja. Obično se koristi ciklus mjerenja od oko 60 ms kako bi prethodni ultrazvučni odjek imao vremena nestati prije sljedećeg okidača.

Osnove programiranja Arduina: funkcija pulseIn

Funkcija Arduino pulseIn() koristi se za mjerenje koliko dugo digitalni pin ostaje HIGH ili LOW. Za HC-SR04, Arduino koristi pulseIn(echoPin, HIGH) za očitavanje širine pulsa visoke razine s ECHO pina.

Sintaksa Značenje
pulseIn(pin, vrijednost) Očitava trajanje VISOKOG ili NISKOG pulsa.
pulseIn(pin, vrijednost, vrijeme čekanja) Očitava puls s vrijednošću vremenskog ograničenja u mikrosekundama.

Preporuča se korištenje vremenskog ograničenja. Ako se ne vrati odjek, funkcija može prestati čekati i vratiti 0 umjesto predugog blokiranja programa.

Arduino ploča koja se koristi s HC-SR04 ultrazvučnim senzorom udaljenosti

Kako spojiti HC-SR04 ultrazvučni senzor na Arduino

Ožičenje je jednostavno. Spojite VCC na 5V, GND na GND, TRIG na Arduino digitalni izlazni pin, a ECHO na Arduino digitalni ulazni pin. Sljedeći primjer koristi Arduino Uno, TRIG na pinu 9 i ECHO na pinu 10.

Dijagram ožičenja matične ploče Arduino Uno za ultrazvučni senzor HC-SR04

HC-SR04 Arduino kod ultrazvučnog senzora

Sljedeći tipični Arduino program šalje okidački impuls od 10us, očitava širinu ECHO impulsa, izračunava udaljenost u centimetrima i ispisuje rezultat u serijskom monitoru.

const int trigPin = 9; const int echoPin = 10; dugo trajanje; float distanceCm; void setup() { pinMode(trigPin, OUTPUT);   pinMode(echoPin, INPUT);   Serial.begin(9600); } void petlja() { digitalWrite(trigPin, LOW);   kašnjenje mikrosekundi(2);   digitalWrite(trigPin, HIGH);   kašnjenje u mikrosekundama (10);   digitalWrite(trigPin, LOW);   trajanje = pulseIn(echoPin, HIGH, 30000);   if (duration == 0) { Serial.println('Izvan raspona');   } else { udaljenostCm = trajanje * 0,0343 / 2;     Serial.print('Udaljenost: ');     Serial.print(distanceCm);     Serial.println(' cm');   } kašnjenje(60); }

Ako vidite vrijednosti udaljenosti u serijskom monitoru, ultrazvučni senzor HC-SR04 i Arduino ožičenje rade ispravno. Zatim možete koristiti podatke o udaljenosti za otkrivanje prepreka, kontrolu kretanja robota, automatska vrata, podsjetnike za parkiranje ili projekte razine tekućine.

Program za određivanje dometa ultrazvučnog senzora Arduino HC-SR04

Kako poboljšati HC-SR04 točnost mjerenja

  • Držite mjereni objekt unutar preporučenog raspona udaljenosti i izvan slijepe zone od 2 cm.

  • Koristite ravnu i čvrstu ciljnu površinu za bolju ultrazvučnu refleksiju.

  • Izbjegavajte mjerenje mekih, pod kutom, poroznih materijala ili materijala koji apsorbiraju zvuk.

  • Koristite stabilno napajanje od 5 V, a ožičenje neka bude kratko i sigurno.

  • Dodajte vremensko ograničenje za pulseIn() kako biste spriječili dugo blokiranje kada se ne vrati eho.

  • Prosjek ili medijan-filtrirajte nekoliko očitanja kako biste smanjili šum.

  • Za veću točnost, kompenzirajte temperaturu jer se brzina zvuka mijenja s temperaturom zraka.

Uobičajene primjene Arduino ultrazvučnih senzorskih projekata

Primjena Kako se koristi HC-SR04
Robot za izbjegavanje prepreka Otkriva objekte u blizini i pomaže robotu promijeniti smjer.
Parkirni senzor Mjeri udaljenost između vozila i prepreke.
Detekcija razine tekućine Mjeri udaljenost od senzora do površine tekućine bez kontakta.
Pametna kanta za smeće Otkriva ruku ili predmet u blizini i pokreće automatsko otvaranje poklopca.

Sažetak

Za korištenje ultrazvučnog senzora HC-SR04 s Arduinom, spojite VCC na 5V, GND na GND, TRIG na digitalni izlazni pin i ECHO na digitalni ulazni pin. Pošaljite okidački impuls od 10us, očitajte trajanje jeke pomoću pulseIn() i izračunajte udaljenost pomoću formule za vrijeme leta.

HC-SR04 je jeftin, jednostavan za korištenje i prikladan za mnoge Arduino projekte mjerenja udaljenosti. Za najbolje rezultate obratite pozornost na ciljnu površinu, mjerni kut, slijepu zonu, stabilnu snagu, rukovanje vremenskim ograničenjima i temperaturne učinke.

Često postavljana pitanja o HC-SR04 Arduino ultrazvučnom senzoru

Kako ultrazvučni senzor HC-SR04 radi s Arduinom?

Arduino šalje 10us impuls na TRIG pin. HC-SR04 emitira osam ultrazvučnih impulsa od 40 kHz i postavlja ECHO pin visoko dok se reflektirani zvuk ne vrati. Arduino mjeri ovo vrijeme pulsa i izračunava udaljenost.

Koja je formula udaljenosti za HC-SR04 Arduino projekte?

Formula je udaljenost = trajanje × brzina zvuka / 2. U centimetrima, uobičajena Arduino formula je udaljenost Cm = trajanje × 0,0343 / 2, gdje se trajanje mjeri u mikrosekundama.

Zašto rezultat ultrazvučnog senzora dijelimo s 2?

Izmjereno vrijeme odjeka je vrijeme povratnog putovanja od senzora do objekta i natrag do senzora. Dijeljenje s 2 daje jednosmjernu udaljenost između senzora i objekta.

Koje Arduino pinove trebam koristiti za TRIG i ECHO?

Možete koristiti većinu Arduino digitalnih pinova. U mnogim primjerima, TRIG je spojen na digitalni pin 9, a ECHO je spojen na digitalni pin 10. Kod mora odgovarati pinovima koji se koriste u vašem ožičenju.

Zašto moj ultrazvučni senzor HC-SR04 vraća nulu ili nasumične vrijednosti?

Uobičajeni uzroci uključuju labavo ožičenje, nestabilno napajanje od 5 V, pogrešne brojeve pinova TRIG ili ECHO, nema predmeta u dometu, ciljne površine pod kutom, mekane materijale, blokirane glave senzora ili nedostatak vremenskog ograničenja u funkciji pulseIn().

Što je slijepa zona ultrazvučnog senzora HC-SR04?

Slijepa zona je minimalna udaljenost na kojoj modul ne može pouzdano mjeriti. Za HC-SR04, slijepa zona je obično oko 2 cm. Objekti bliže od ovoga mogu dati nestabilna očitanja.

Može li HC-SR04 mjeriti razinu vode s Arduinom?

Da, HC-SR04 se može koristiti za jednostavne beskontaktne projekte razine vode ako je senzor zaštićen od vlage i montiran iznad površine tekućine. Za vlažne, vanjske ili industrijske spremnike preporučuje se vodootporni ultrazvučni senzor.

Kako mogu učiniti očitanja Arduino ultrazvučnog senzora stabilnijima?

Koristite stabilno napajanje, držite senzor okomito na cilj, izbjegavajte meke ili nagnute površine, dodajte pulseIn timeout, uzmite više očitanja, koristite srednje filtriranje i ostavite oko 60 ms između mjerenja.

Sadržaj