超音波距離感測器 HC-SR04

超音波距離感測器 HC-SR04,是利用超音波射出和反射的時間差,來測定感測器和障礙物之間的距離 。如下圖所示:感測器有兩個筒狀物,其中一個為超音波發射器 (Transmitter),另一個為接收器 (Receiver)。當發射的超音波遇到感測器前方的障礙物後,會被反射。接收器接到反射的超音波後,會計算出從發射到接收的時間差。在氣溫不變下,超音波在空氣中傳播速度是固定的。時間差乘以傳播速度,就可以得到感測器和障礙物之間的距離。

現在我們結合超音波感測器和一個蜂鳴器,來模擬做一個 "倒車雷達"。先看看成果影片:

當感測器和障礙物的距離大於15公分時,蜂鳴器叫的頻率較低。距離介於5到15公分時,蜂鳴器叫的頻率較高。距離小於5公分時,蜂鳴器則一直叫。

材料和接線圖

  • Arduino Uno x1
  • 超音波感測器 HC-SR04 x1
  • 蜂鳴器 Buzzer x1
  • 電線 數條

因超音波感測器前方要偵測障礙物,電線要接在感測器的後方。

感測器 Arduino

Gnd GND (黑線)

Echo pin 12 (藍線)

Trig pin 11 (綠線)

Vcc 5V (紅線)

蜂鳴器 Arduino

+ pin 7

_ GND

共用 Arduino GND 和 5V 在麵包板上:

GND 接麵包板藍線 -

5V 接麵包板紅線 +

程式

複製貼上下列程式於 Arduino IDE中,點擊 ”工具”,確認開發板是 Arduino/Genuino Uno, 序列埠 Port COM已接上。再點擊 ”上傳”,大功告成。

點擊 Arduino 右上方的序列埠監控器,即可看到距離感測值。

創客點子

除蜂鳴器外,加上一個 RGB LED。不同的距離,LED 顯示不同的顏色 。