Obwód ultradźwiękowego miernika odległości wykorzystujący wyświetlacz LCD 16 × 2

Wypróbuj Nasz Instrument Do Eliminowania Problemów





W tym artykule zamierzamy zbudować obwód ultradźwiękowego miernika odległości z wykorzystaniem Arduino i wyświetlacza LCD 16x2. Zobaczymy również, czym jest moduł ultradźwiękowy, jak działa i jak można go wykorzystać do pomiaru odległości.

Co to jest ultradźwięki?

Przeciętny zdrowy człowiek słyszy częstotliwości w zakresie od 20 Hz do 20000 Hz. Powyżej 20 000 Hz lub 20 kHz ludzkie ucho nie jest w stanie wykryć tych częstotliwości. Każdy rezonans akustyczny większy niż 20 kHz nazywany jest as ultradźwiękowy a każda akustyka rezonująca poniżej 20 Hz jest nazywana infradźwiękową.



Większość zwierząt domowych, takich jak kot czy pies, słyszy szeroki zakres częstotliwości akustycznej większy niż ludzie. Niektóre z naszych urządzenia elektryczne może ich denerwować, dlatego w elektronice używa się ultradźwięków środki odstraszające komary a także w repelenty dla psów.

Jednak wiele dzikich zwierząt, takich jak nietoperze, wykorzystuje ultradźwięki, które pomagają im określić odległość między drapieżnikiem a ofiarą. Posiada czujniki biologiczne, które obliczają odległość, emitując i odbierając fale ultradźwiękowe.



Ta zasada jest stosowana w wielu nowoczesnych elektroniczny sprzęt pomiarowy dowiemy się, jak tę samą zasadę można zastosować również w obecnym projekcie.

Czujnik ultradźwiękowy:

Zamierzamy użyć specjalnego modułu nadajnika-odbiornika ultradźwiękowego HC-SR04, który jest bardzo popularny i powszechnie dostępny w sklepach internetowych i detalicznych.

Składa się z 4 pinów Vcc, masy, wyzwalacza i echa. Te piny są połączone z mikrokontrolerem arduino.

To ma moduły nadajnika i odbiornika które wyglądają identycznie i są chronione aluminiowym cylindrem i siatką w otworze nadajnika i odbiornika. Moduł składa się również z mikrokontrolerów, które dekodują sygnały echa.

Aby zmierzyć odległość, musimy wysłać serię impulsów ultradźwiękowych i nasłuchiwać echa. Aby to zrobić, musimy utrzymać wysoki pin wyzwalacza przez 10 mikrosekund, nadajnik wysyła 8 impulsów impulsów ultradźwiękowych.

Moduł odbiornika nasłuchuje tych wybuchów po uderzeniu w przeszkodę. Pin echa wysyła wysoki sygnał proporcjonalny do odległości. Arduino interpretuje czas wysłanych i odebranych sygnałów w celu określenia rzeczywistej odległości.

Ponieważ dźwięk przemieszcza się w powietrzu z prędkością 340 m / s, a czas można określić porównując wysyłane i odbierane sygnały, możemy określić odległość, korzystając ze wzoru prędkość-odległość:

Odległość = prędkość x czas

Wartości te zostaną obliczone przez Arduino i wydrukują odpowiednie wartości na wyświetlaczu LCD. Proponowany obwód ultradźwiękowego dalmierza może pokazywać odległość zarówno w centymetrach, jak i w metrach.

Prototyp autora:

Przetestowany model roboczy obwodu ultradźwiękowego miernika odległości przy użyciu wyświetlacza LCD 16x2

Schemat obwodu:

Obwód ultradźwiękowego miernika odległości wykorzystujący wyświetlacz LCD 16x2

Podłączenie obwodu ultradźwiękowego dalmierza odbywa się za pomocą standardowego interfejsu arduino-LCD, który możemy również znaleźć w wielu innych podobnych projektach opartych na arduino-LCD. Potencjometr służy do regulacji kontrastu wyświetlacza LCD.

Plik czujnik ultradźwiękowy można umieścić bezpośrednio na pinie analogowym, jak pokazano w prototypie autora, od A0 do A3, czujniki skierowane na zewnątrz mogą zmniejszyć zatory przewodów podczas powielania powyższego obwodu.

Kod programu:

#include LiquidCrystal lcd(12,11,5,4,3,2) const int trigger = A1 const int echo = A2 int vcc = A0 int gnd = A3 long Time float distanceCM float distanceM float resultCM float resultM void setup() { lcd.begin(16,2) pinMode(trigger,OUTPUT) pinMode(echo,INPUT) pinMode(vcc,OUTPUT) pinMode(gnd,OUTPUT) } void loop() { digitalWrite(vcc,HIGH) digitalWrite(gnd,LOW) digitalWrite(trigger,LOW) delay(1) digitalWrite(trigger,HIGH) delayMicroseconds(10) digitalWrite(trigger,LOW) Time=pulseIn(echo,HIGH) distanceCM=Time*0.034 resultCM=distanceCM/2 resultM=resultCM/100 lcd.setCursor(0,0) lcd.print('Distance:') lcd.print(resultM) lcd.print('M') lcd.setCursor(0,1) lcd.print('Distance:') lcd.print(resultCM) lcd.print('cm') delay(1000) }


Poprzedni: Zmotoryzowany obwód przeciwsłoneczny Dalej: 6-watowy obwód wzmacniacza audio przy użyciu TDA1011