工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 産業技術

HC-SR04超音波距離センサ徹底解説:動作原理からArduino実装まで

超音波とは、人間の可聴域(20kHz)を超える高周波音波です。HC-SR04は約400cm先までの距離を非接触で測定できる低コスト・定番センサモジュール。本記事では動作原理、ピン配置、Arduinoとの接続・スケッチ例、注意点まで完全網羅します。

HC-SR04 概要と仕様

HC-SR04超音波距離センサ徹底解説:動作原理からArduino実装まで
超音波の周波数帯域位置づけ
HC-SR04超音波距離センサ徹底解説:動作原理からArduino実装まで
送信機(T)と受信機(R)が一体化
項目仕様
動作電圧DC 5V
動作電流約15mA
動作周波数40kHz
測定範囲2cm 〜 400cm(実用2〜300cm)
精度±3mm
測定角度15°(指向角)
トリガパルス10μs以上のHighパルス
寸法45×20×15mm(メーカーにより微差あり)

ピン配置(4ピン)

HC-SR04超音波距離センサ徹底解説:動作原理からArduino実装まで
HC-SR04ピンアサイン
Pin名称機能
1VCC5V電源入力
2Trig (Trigger)測定開始トリガ入力(10μs High)
3Echo測定結果出力(High幅=往路+復路時間)
4GNDグランド

動作原理:飛行時間(Time-of-Flight)測定

HC-SR04超音波距離センサ徹底解説:動作原理からArduino実装まで
超音波センサの測定原理
  1. Trigピンに10μs以上のHighパルスを入力
  2. 内部で8サイクルの40kHz超音波バーストを送信
  3. EchoピンがHighになる(送信完了時点)
  4. 物体で反射した超音波を受信するとEchoがLowに戻る
  5. Echo High継続時間 = 音波の往復時間

距離計算式

距離(cm) = (音速 34000 cm/s × Echo High時間 μs) / 2 ÷ 1,000,000

簡易式:距離(cm) ≈ Echo時間(μs) × 0.017 または 距離(cm) = Echo時間(μs) / 58

例:Echo High = 1,500μs → 距離 = 1500 × 0.017 = 25.5cm

タイムアウト処理

物体がない場合、約38ms(約6.5m相当)でEchoが自動的にLowになります。スケッチ側でタイムアウト判定を入れると安全です。

Arduino UNOとの接続・プログラミング

配線図

HC-SR04超音波距離センサ徹底解説:動作原理からArduino実装まで
HC-SR04とArduino UNO配線図
ArduinoHC-SR04
5VVCC
GNDGND
D2Trig
D3Echo

スケッチ例(ライブラリ不要・標準関数のみ)

const uint8_t TRIG_PIN = 2;
const uint8_t ECHO_PIN = 3;

void setup() {
  pinMode(TRIG_PIN, OUTPUT);
  pinMode(ECHO_PIN, INPUT);
  Serial.begin(115200);
}

void loop() {
  // トリガパルス生成
  digitalWrite(TRIG_PIN, LOW);
  delayMicroseconds(2);
  digitalWrite(TRIG_PIN, HIGH);
  delayMicroseconds(10);
  digitalWrite(TRIG_PIN, LOW);

  // Echoパルス幅測定(タイムアウト30ms設定)
  unsigned long duration = pulseIn(ECHO_PIN, HIGH, 30000);
  
  if (duration == 0) {
    Serial.println("Out of range / Timeout");
  } else {
    float distance_cm = duration * 0.017f;  // または duration / 58.0
    Serial.print("Distance: ");
    Serial.print(distance_cm, 1);
    Serial.println(" cm");
  }
  delay(100); // 測定間隔
}

コード解説ポイント

寸法図

HC-SR04超音波距離センサ徹底解説:動作原理からArduino実装まで
HC-SR04外形寸法(メーカーにより微差あり)

既知の制限・注意点

応用例

結論

HC-SR04は安価・低消費・扱いやすく、2cm〜4mの距離測定に最適なエントリーセンサです。Arduinoとの相性も良く、pulseIn関数だけで簡単に実装できます。上記の制限を理解し、用途に合わせてフィルタリング(移動平均/メディアン)や複数センサ融合を施せば、実用レベルのシステム構築が可能です。ご質問はお気軽にお問い合わせください。

産業技術

  1. コンパクトなArduinoレーダーシステム – HC-SR04超音波センサー & 1.8インチST7735ディスプレイ搭載
  2. Arduino UNOとSR04超音波センサーで作る距離測定器 – 入門ガイド
  3. Arduino HC-SR04 超音波距離センサー 完全チュートリアル
  4. PIRモーションセンサー: 動作原理とArduino連携ガイド
  5. コンデンサの仕組み:エネルギー蓄積の原理と現代エレクトロニクスでの役割
  6. 3Dプリンティング完全ガイド:種類、プロセス、仕組み、材料、活用事例
  7. アーク溶接完全ガイド:種類・仕組み・メリット・デメリット
  8. ベベルプロトラクター:精密角度測定の原理、構造、用途
  9. CNCボーリングミルを理解する:仕組みと主なメリット
  10. クラウドコンピューティングを理解する:仕組みと重要性
  11. 超音波洗浄機があらゆる産業を変革する仕組み