16×2LCDを使用した超音波距離計回路

問題を排除するために楽器を試してください





この記事では、Arduinoと16x2LCDを使用して超音波距離計回路を構築します。また、超音波モジュールとは何か、それがどのように機能するか、そしてそれを使用して距離を測定する方法についても見ていきます。

超音波とは何ですか?

平均的な健康な人間は、20Hzから20,000Hzの範囲の周波数を聞くことができます。 20,000Hzまたは20KHzを超えると、人間の耳はこれらの周波数を検出できません。 20 KHzを超える音響共振は、次のように呼ばれます。 超音波 20Hz未満で共振する音響は超低周波音と呼ばれます。



猫や犬などの家畜のほとんどは、人間よりも広い範囲の音響周波数を聞くことができます。私たちのいくつか 電子デバイス 超音波が電子機器で使用されている理由は、彼らを困らせるかもしれません 蚊よけ剤 そしてまた 犬の忌避剤。

しかし、コウモリなどの野生動物の多くは超音波を利用しており、捕食者と被食者の間の距離を決定するのに役立ちます。超音波を送受信して距離を計算する生体センサーを搭載しています。



この原則は多くの現代で利用されています 電子測定器 同じ原理を現在のプロジェクトにもどのように適用できるかを学びます。

超音波センサー:

非常に人気があり、eコマースサイトや電気小売店で一般的に入手可能な特別な電子デバイス超音波トランシーバモジュールHC-SR04を使用します。

これは、Vcc、グランド、トリガー、エコーの4つのピンで構成されています。これらのピンは、arduinoマイクロコントローラーとインターフェースします。

それは持っています 送信機と受信機のモジュール 見た目は同じで、送信機と受信機の開口部にあるアルミニウム製のシリンダーとメッシュで保護されています。このモジュールは、エコー信号をデコードするマイクロコントローラーでも構成されています。

距離を測定するには、一連の超音波バーストを送信し、エコーをリッスンする必要があります。これを行うには、トリガーピンを10マイクロ秒ハイに保つ必要があります。送信機は8パルスの超音波バーストを送信します。

レシーバーモジュールは、障害物にぶつかった後、これらのバーストをリッスンします。エコーピンは距離に比例して高い信号を出します。 Arduinoは、送受信された信号の時間を解釈して、実際の距離を決定します。

音は空気中340m / sで伝わり、送信信号と受信信号を比較することで時間を決定できるため、速度と距離の式を使用して距離を決定できます。

距離=速度 バツ 時間

これらの値はArduinoによって計算され、LCDディスプレイに適切な値を出力します。提案された超音波距離計回路は、センチメートルとメートルで距離を表示できます。

著者のプロトタイプ:

16x2LCDを使用した超音波距離計回路のテスト済み動作モデル

回路図:

16x2LCDを使用した超音波距離計回路

超音波距離計回路の接続は、標準のarduino-LCDインターフェースを介して行われます。これは、他の多くの同様のarduino-LCDベースのプロジェクトでも見られます。ポテンショメータは、LCDディスプレイのコントラストを調整するために使用されます。

ザ・ 超音波センサー 著者のプロトタイプに示されているように、A0からA3までのアナログピンに直接挿入できます。センサーが外側を向いているため、上記の回路を複製しながらワイヤの混雑を減らすことができます。

プログラムコード:

#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) }


前:電動サンシェード回路 次へ:TDA1011を使用した6ワットのオーディオアンプ回路