Kuidas ühendada HC-SR04 Ultraheli Kaugusmõõtja Arduinoga

Sisukord:

Kuidas ühendada HC-SR04 Ultraheli Kaugusmõõtja Arduinoga
Kuidas ühendada HC-SR04 Ultraheli Kaugusmõõtja Arduinoga

Video: Kuidas ühendada HC-SR04 Ultraheli Kaugusmõõtja Arduinoga

Video: Kuidas ühendada HC-SR04 Ultraheli Kaugusmõõtja Arduinoga
Video: EASY! Ultrasonic Sensor with Arduino 2024, Detsember
Anonim

Selles artiklis ühendame HC-SR04 ultraheli kaugusmõõtja-kajaloodi Arduinoga.

Ultraheliandur HC-SR04
Ultraheliandur HC-SR04

Vajalik

  • - Arduino;
  • - ultraheliandur HC-SR04;
  • - juhtmete ühendamine.

Juhised

Samm 1

Ultraheli kaugusmõõturi HC-SR04 tegevus põhineb kajamise põhimõttel. See kiirgab kosmosesse heliimpulsse ja võtab vastu takistuselt peegelduva signaali. Kauguse objektini määrab helilaine levimise aeg takistuseni ja tagasi.

Helilaine käivitatakse vähemalt 10 mikrosekundilise positiivse impulsi rakendamisega kaugusmõõturi TRIG-jalale. Niipea kui impulss lõpeb, kiirgab kaugusmõõtur tema ees olevasse ruumi 40 kHz sagedusega heliimpulsse. Samal ajal käivitatakse peegeldunud signaali viivituse määramise algoritm ja kaugusmõõturi ECHO jalale ilmub loogiline üksus. Niipea kui sensor tuvastab peegeldunud signaali, ilmub ECHO tihvtile loogiline null. Selle signaali kestus (joonisel "Kaja viivitus") määrab kauguse objektist.

HC-SR04 kaugusmõõturi kauguse mõõtepiirkond - kuni 4 meetrit eraldusvõimega 0,3 cm. Vaatenurk - 30 kraadi, efektiivne nurk - 15 kraadi. Voolutarve ooterežiimis on 2 mA, töö ajal - 15 mA.

Ultraheli kaugusmõõturi HC-SR04 tööpõhimõte
Ultraheli kaugusmõõturi HC-SR04 tööpõhimõte

2. samm

Ultraheli kaugusmõõturi toiteallikas toimub pingega +5 V. Ülejäänud kaks tihvti on ühendatud Arduino mis tahes digitaalsete pordidega, me ühendame 11 ja 12.

HC-SR04 ultraheli kaugusmõõturi ühendamine Arduinoga
HC-SR04 ultraheli kaugusmõõturi ühendamine Arduinoga

3. samm

Nüüd kirjutame visandi, mis määrab takistuse kauguse ja väljastab selle jadaporti. Kõigepealt määrame TRIG ja ECHO tihvtide numbrid - need on tihvtid 12 ja 11. Siis kuulutame päästiku väljundiks ja kaja sisendiks. Initsialiseerime jadapordi kiirusega 9600 baud. Silmuse () iga korduse korral loeme kauguse ja väljastame selle pordini.

Funktsioon getEchoTiming () genereerib päästikuimpulsi. See loob lihtsalt 10 mikrosekundilise impulsi voolu, mis on helipaketi kaugusmõõturi poolt kosmosesse kiirguse käivitamiseks käivitaja. Siis meenub talle aeg helilaine ülekande algusest kuni kaja saabumiseni.

Funktsioon getDistance () arvutab kauguse objektini. Koolifüüsika kursuselt mäletame, et vahemaa on võrdne kiirusega, mis korrutatakse ajaga: S = V * t. Heli kiirus õhus on 340 m / s, meile teadaolev aeg mikrosekundites on "duratuion". Aega sekundites saamiseks jagage see 1 000 000-ga. Kuna heli liigub kaks korda kaugemale - objektini ja tagasi -, peate jagama vahemaa pooleks. Nii selgub, et kaugus objektist S = 34000 cm / sek * kestus / 1 000 000 sek / 2 = 1,7 cm / sek / 100, mille me sketšisse kirjutasime. Mikrokontroller teostab korrutamise kiiremini kui jagamine, nii et asendasin "/ 100" samaväärse "* 0, 01" -ga.

Visand ultrahelilokaatoriga HC-SR04 töötamiseks
Visand ultrahelilokaatoriga HC-SR04 töötamiseks

4. samm

Samuti on paljud raamatukogud kirjutatud töötama ultraheli kaugusmõõturiga. Näiteks see: https://robocraft.ru/files/sensors/Ultrasonic/HC-SR04/ultrasonic-HC-SR04.zip. Teek on installitud tavapärasel viisil: laadige alla, pakkige lahti teekide kataloogi, mis asub Arduino IDE kaustas. Pärast seda saab raamatukogu kasutada.

Pärast raamatukogu installimist kirjutame uue visandi. Selle töö tulemus on sama - jadapordimonitor kuvab kauguse objektini sentimeetrites. Kui kirjutate visandisse float dist_cm = ultraheli. Vahemik (INC); kuvatakse vahemaa tollides.

Ultraheli kajaloodi visand raamatukogu abil
Ultraheli kajaloodi visand raamatukogu abil

5. samm

Niisiis ühendasime ultraheli kaugusmõõturi HC-SR04 Arduinoga ja saime sealt andmeid kahel erineval viisil: spetsiaalse teegi abil ja ilma.

Raamatukogu kasutamise eeliseks on see, et koodimaht väheneb oluliselt ja programmi loetavus paraneb, te ei pea süvenema seadme nõtkustesse ja saate seda kohe kasutada. Kuid see on ka miinus: saate vähem hästi aru, kuidas seade töötab ja millised protsessid selles toimuvad. Igal juhul sõltub see, millist meetodit kasutada.

Soovitan: