- Naudoti komponentai
- Ultragarso jutiklio modulis
- Ultragarso jutiklio „Arduino“ grandinės schema ir paaiškinimas
- „Arduino“ ultragarso jutiklio kodas atstumui matuoti
Ultragarsiniai jutikliai yra puikios priemonės matuoti atstumą ir aptikti objektus be jokio realaus kontakto su fiziniu pasauliu. Jis naudojamas įvairiose srityse, pvz., Matuojant skysčio lygį, tikrinant artumą ir dar populiaresni automobiliuose, kad padėtų savarankiškai statyti ar apsaugoti nuo susidūrimo. Anksčiau mes taip pat sukūrėme daugybę ultragarso jutiklių projektų, tokių kaip vandens lygio aptikimas, ultragarso radaras ir kt. Tai yra efektyvus būdas tiksliai išmatuoti mažus atstumus. Šiame projekte mes naudojome ultragarso jutiklį HC-SR04 su „Arduino“ nustatyti kliūties atstumą nuo jutiklio. Pagrindinis ultragarsinio atstumo matavimo principas pagrįstas ECHO. Kai garso bangos yra perduodamos aplinkoje, bangos, atsitrenkusios į kliūtį, grįžta į ECHO kilmę. Taigi mums tereikia apskaičiuoti abiejų garsų kelionės laiką - išeinantį laiką ir grįžimo laiką į pradinę vietą, smūgiuojant ant kliūties. Kadangi garso greitis mums yra žinomas, atlikę tam tikrą skaičiavimą galime apskaičiuoti atstumą. Šiam „ Arduino“ atstumo matavimo projektui naudosime tą pačią techniką, todėl pradėkime.
Naudoti komponentai
- „Arduino Uno“ arba „Pro Mini“
- Ultragarsinis jutiklio modulis
- 16x2 LCD ekranas
- Skalė
- Bandomoji Lenta
- 9 voltų baterija
- Jungiamieji laidai
Ultragarso jutiklio modulis
Yra daugybė „ Arduino“ atstumo jutiklių tipų, tačiau šiame projekte mes naudojome HC -SR04, kad matuotume atstumą 2–400 cm diapazone 3 mm tikslumu. Jutiklio modulį sudaro ultragarso siųstuvas, imtuvas ir valdymo grandinė. Ultragarso jutiklio veikimo principas yra toks:
- Aukšto lygio signalas siunčiamas 10 us naudojant Trigger.
- Modulis automatiškai siunčia aštuonis 40 KHz signalus ir nustato, ar gaunamas impulsas.
- Jei signalas gaunamas, tai per aukštą lygį. Ilgos trukmės laikas yra laiko tarpas tarp signalo siuntimo ir priėmimo.
Atstumas = (laikas x garso greitis ore (340 m / s)) / 2
Laiko schema
Modulis skirtas natūraliam ECHO garso reiškiniui. Pulsas siunčiamas maždaug 10 us, kad suaktyvintų modulį. Po to modulis automatiškai siunčia 8 40 KHz ultragarso signalo ciklus ir patikrina jo aidą. Po smūgio kliūtimi signalas grįžta atgal ir jį užfiksuoja imtuvas. Taigi kliūties atstumas nuo jutiklio paprasčiausiai apskaičiuojamas pagal formulę, pateiktą kaip
Atstumas = (laikas x greitis) / 2.
Čia mes padalijome greičio ir laiko sandaugą iš 2, nes laikas yra bendras laikas, kurio prireikė norint pasiekti kliūtį ir grįžti atgal. Taigi kliūčiai pasiekti reikia tik pusės viso laiko.
Ultragarso jutiklio „Arduino“ grandinės schema ir paaiškinimas
Aukščiau parodyta arduino ir ultragarso jutiklio grandinės schema, skirta matuoti atstumą. Grandinių jungtyse ultragarso jutiklio modulio „gaiduko“ ir „aido“ kaiščiai yra tiesiogiai prijungti prie „arduino“ 18 (A4) ir 19 (A5) kaiščių. 16x2 skystųjų kristalų ekranas yra sujungtas su „arduino“ 4 bitų režimu. Valdymo kaiščiai RS, RW ir En yra tiesiogiai prijungti prie 2 arduino kaiščių, GND ir 3. O duomenų kaištis D4-D7 yra prijungtas prie 4, 5, 6 ir 7 arduino.
Pirmiausia turime suaktyvinti ultragarso jutiklio modulį perduoti signalą naudojant „arduino“ ir palaukti, kol bus priimtas ECHO. „Arduino“ skaito laiką tarp suaktyvinimo ir gauto ECHO. Mes žinome, kad garso greitis yra apie 340m / s. taigi mes galime apskaičiuoti atstumą pagal pateiktą formulę:
Atstumas = (kelionės laikas / 2) * garso greitis
Kur garso greitis apie 340m per sekundę.
Atstumui rodyti naudojamas 16x2 skystųjų kristalų ekranas.
Sužinokite daugiau apie atstumo matavimo projekto darbą šioje pamokoje: Atstumo matavimas naudojant ultragarso jutiklį ir AVR mikrovaldiklį.
„Arduino“ ultragarso jutiklio kodas atstumui matuoti
Visas šio ultragarsinio atstumo matavimo projekto kodas pateiktas šio puslapio apačioje. Kode mes skaitome laiką naudodami pulseIn (PIN). Tada atlikite skaičiavimus ir 16x2 LCD ekrane rodomus rezultatus naudodami atitinkamas funkcijas.