Slik Kobler Du HC-SR04 Ultralydavstandsmåler Til Arduino

Innholdsfortegnelse:

Slik Kobler Du HC-SR04 Ultralydavstandsmåler Til Arduino
Slik Kobler Du HC-SR04 Ultralydavstandsmåler Til Arduino

Video: Slik Kobler Du HC-SR04 Ultralydavstandsmåler Til Arduino

Video: Slik Kobler Du HC-SR04 Ultralydavstandsmåler Til Arduino
Video: HC-SR04 Датчик расстояния и сигнализация на Ардуино! 2024, Kan
Anonim

I denne artikkelen vil vi koble HC-SR04 ultralydavstandsmåler-ekkolodd til Arduino.

Ultralydssensor HC-SR04
Ultralydssensor HC-SR04

Nødvendig

  • - Arduino;
  • - ultralydssensor HC-SR04;
  • - tilkobling av ledninger.

Bruksanvisning

Trinn 1

Handlingen til HC-SR04 ultralydavstandsmåler er basert på prinsippet om ekkolokalisering. Den avgir lydimpulser i rommet og mottar et signal reflektert fra en hindring. Avstanden til objektet bestemmes av lydbølgens forplantningstid til hinderet og tilbake.

Lydbølgen utløses ved å bruke en positiv puls på minst 10 mikrosekunder til TRIG-benet i avstandsmåleren. Så snart pulsen slutter, avgir avstandsmåleren et utbrudd av lydpulser med en frekvens på 40 kHz inn i rommet foran det. Samtidig lanseres algoritmen for å bestemme forsinkelsestiden for det reflekterte signalet, og en logisk enhet vises på ECHO-beinet i avstandsmåleren. Så snart sensoren oppdager det reflekterte signalet, vises et logisk null på ECHO-pinnen. Varigheten av dette signalet ("Echo delay" i figuren) bestemmer avstanden til objektet.

Avstandsmålingsområde for HC-SR04 avstandsmåler - opptil 4 meter med en oppløsning på 0,3 cm. Observasjonsvinkel - 30 grader, effektiv vinkel - 15 grader. Strømforbruket i standby-modus er 2 mA under drift - 15 mA.

Prinsippet om drift av ultralydavstandsmåler HC-SR04
Prinsippet om drift av ultralydavstandsmåler HC-SR04

Steg 2

Strømforsyningen til ultralydavstandsmåler utføres med en spenning på +5 V. De to andre pinnene er koblet til alle digitale porter i Arduino, vi kobler til 11 og 12.

Koble HC-SR04 Ultrasonic Rangefinder til Arduino
Koble HC-SR04 Ultrasonic Rangefinder til Arduino

Trinn 3

La oss nå skrive en skisse som bestemmer avstanden til hindringen og sender den ut til serieporten. Først setter vi tallene til TRIG- og ECHO-pinnene - dette er pinn 12 og 11. Deretter erklærer vi utløseren som en utgang og ekko som en inngang. Vi initialiserer serieporten til 9600 baud. Ved hver repetisjon av sløyfen () leser vi avstanden og sender den ut til porten.

GetEchoTiming () -funksjonen genererer en triggerpuls. Det skaper bare en strøm på 10 mikrosekunder puls, som er en utløser for start av stråling ved avstandsmåleren til en lydpakke ut i rommet. Så husker hun tiden fra begynnelsen av overføringen av lydbølgen til ekkoets ankomst.

GetDistance () -funksjonen beregner avstanden til objektet. Fra skolens fysikkurs husker vi at avstanden er lik hastigheten ganget med tid: S = V * t. Lydens hastighet i luften er 340 m / s, tiden i mikrosekunder vi kjenner er "duratuion". For å få tiden i sekunder, del med 1.000.000. Siden lyden beveger seg to ganger avstanden - til objektet og tilbake - må du dele avstanden i to. Så det viser seg at avstanden til objektet S = 34000 cm / sek * varighet / 1.000.000 sek / 2 = 1.7 cm / sek / 100, som vi skrev i skissen. Mikrokontrolleren utfører multiplikasjon raskere enn divisjon, så jeg byttet ut "/ 100" med tilsvarende "* 0, 01".

Skisse for arbeid med ultralydsonar HC-SR04
Skisse for arbeid med ultralydsonar HC-SR04

Trinn 4

Også mange biblioteker er skrevet for å arbeide med en ultralydavstandsmåler. For eksempel denne: https://robocraft.ru/files/sensors/Ultrasonic/HC-SR04/ultrasonic-HC-SR04.zip. Biblioteket er installert på en standard måte: last ned, pakk ut til bibliotekkatalogen, som ligger i mappen med Arduino IDE. Etter det kan biblioteket brukes.

Etter å ha installert biblioteket, la oss skrive en ny skisse. Resultatet av arbeidet er det samme - den serielle portmonitoren viser avstanden til objektet i centimeter. Hvis du skriver float dist_cm = ultrasonic. Ranging (INC); i skissen, vil avstanden vises i tommer.

Ultralyds ekkoloddskisse ved hjelp av bibliotek
Ultralyds ekkoloddskisse ved hjelp av bibliotek

Trinn 5

Så vi koblet HC-SR04 ultralydavstandsmåler til Arduino og mottok data fra den på to forskjellige måter: ved hjelp av et spesielt bibliotek og uten.

Fordelen med å bruke biblioteket er at mengden kode reduseres betydelig og lesbarheten til programmet forbedres, du trenger ikke å fordype deg i enhetens komplikasjoner, og du kan umiddelbart bruke den. Men dette er også ulempen: du forstår mindre godt hvordan enheten fungerer og hvilke prosesser som foregår i den. Uansett, hvilken metode du skal bruke er opp til deg.

Anbefalt: