概要
Arduinoを使って超音波センサーHC-SR04の距離測定を行う方法を解説します。本記事では、HC-SR04の製品仕様や配線方法、Arduinoでの制御コードについて詳しく説明します。
超音波センサーは、距離を測定するのに便利なデバイスであり、障害物検知やロボット制御などに広く利用されています。
この記事を読むことで、ArduinoでHC-SR04を簡単に制御し、シリアルモニタに距離を表示する基本的なコードを理解できます。
超音波センサー HC-SR04 とは?
HC-SR04は、超音波を利用して物体までの距離を測定できるセンサーです。発射した超音波が物体に当たり、反射波が戻ってくるまでの時間を測定することで、2cm〜400cm (4m) の範囲で距離を計測できます。
主な仕様
- 動作電圧: 5V
- 消費電流: 15mA
- 測定可能距離: 2cm 〜 400cm
- 測定精度: ±3mm
- 超音波周波数: 40kHz
HC-SR04は、ロボットの障害物検知や自動運転の制御、距離測定アプリケーションなどに幅広く使用されています。
HC-SR04 のピン配置
HC-SR04は4つのピンを持っており、それぞれの役割は以下の通りです。
| ピン | 役割 |
|---|---|
| VCC | 電源 (5V) |
| Trig | トリガー (超音波の発射指示) |
| Echo | エコー (反射波の受信) |
| GND | グラウンド |
Arduino との接続例
以下のようにHC-SR04をArduinoと接続します。
| HC-SR04 ピン | Arduino ピン |
|---|---|
| VCC | 5V |
| GND | GND |
| Trig | D9 |
| Echo | D10 |
ArduinoでHC-SR04を制御するコード
HC-SR04をArduinoで制御し、シリアルモニタに距離を表示する基本的なコードを紹介します。
Arduinoコード
const int trigPin = 9; // Trig ピン
const int echoPin = 10; // Echo ピン
void setup() {
Serial.begin(9600);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
}
void loop() {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
long duration = pulseIn(echoPin, HIGH); // Echo の HIGH の時間を取得
float distance = (duration * 0.0343) / 2; // 距離を計算(cm)
Serial.print("Distance: ");
Serial.print(distance);
Serial.println(" cm");
delay(500); // 500ms 待機
}
コードのポイント
trigPinに10μsのHIGHパルスを送信 → 超音波を発射。pulseIn(echoPin, HIGH)で 反射波が戻るまでの時間を測定。- 超音波の速度 (0.0343 cm/µs) を使って距離を計算。
- シリアルモニタに距離を表示。
動作確認方法
- ArduinoをPCに接続し、コードを書き込む。
- シリアルモニタ (9600 baud) を開く。
- 距離が cm 単位で表示されることを確認。
まとめ
本記事では、超音波センサーHC-SR04の基本仕様やピン配置、Arduinoを使った距離測定のコードについて解説しました。
HC-SR04は、ロボット制御や障害物回避などのプロジェクトに役立つセンサーです。測定精度は約3mmと高く、Arduinoとの接続も簡単なため、さまざまな用途に活用できます。
次のステップとして、測定結果を利用してモーターを制御することで、障害物回避や追従システムを作成することも可能です。
IT・ガジェット・電子工作の知識をこれひとつで

ここまで読んでいただきありがとうございます。最後に宣伝をさせてください。
PCアプリの操作解説、最新のガジェット情報、そして電子工作の専門書まで。 Kindle Unlimitedなら、あらゆるジャンルのIT・デジタル関連書籍が読み放題です。
「仕事の効率化」から「趣味の深掘り」まで、高価な専門書をわざわざ買わずに、必要な情報をその場で引き出せるのが最大のメリット。 現在は30日間の無料体験や、対象者限定の「3ヶ月499円」プランなどが用意されています。まずはご自身のアカウントでお得なオファーが表示されるかご確認ください。
