超音波感測器

最後更新日期:2022-03-24 10:27:21

超音波(音波頻率大於人耳能聽到的範圍) HC-SR04模組,使用音波反射的原理,來量測與物體之間的距離。距離計算公式是以音波速率 x 時間,但海拔高度及氣溫等,都會影響該速率,一般常聽到的音速約343公尺/秒,是以海平面且氣溫為攝氏20 °C來定義的。

音波反射原理

HC-SR04模組的真實樣貌,其腳位由左至右依序為:VCC、Trig(發送端)、Echo(接收端)、GND。

超音波HC-SR04

# 實作步驟

  • 學習使用
  • 設計電路圖
  • 連接電路
  • 搭建積木程式 & 執行

# 學習使用

學習使用超音波感測器對應的積木,每秒進行一次量測,並將量測的結果顯示在LX終端機畫面上。

超音波量測距離2cm

超音波量測距離10cm

# 設計電路圖

電路圖設計如下:(眼尖的各位應該注意到了右方有三個電阻,到底這三個電阻的作用是什麼呢?)

超音波量測距離電路圖

因HC-SR04模組使用的VCC是5V,而樹莓派的GPIO輸入電壓允許的範圍是0V ~ 3.3V,若直接將超音波感測器Echo輸出的5V,直接接上樹莓派的GPIO腳位,可能會造成其損害。此處提供一種解決方式「電阻分壓」,讓GPIO腳位輸入的電壓盡可能不超過3.3V。

超音波感測器電阻分壓

# 連接電路

實際線路如下圖,建議連接步驟如下,若您要移除電路時,請使用相反的順序進行即可。

  1. 於麵包板上連接相關元件
  2. 資料、控制腳位連接上樹莓派
  3. GND腳位連接上樹莓派
  4. VCC(5V or 3.3V)腳位連接上樹莓派

超音波量測距離實際電路連接-正面

超音波量測距離實際電路連接-背面

# 搭建積木程式 & 執行

開啟積木程式畫面如下,若您已經下載代理程式,並且完成「rp_agent」設定,可以將首次使用須知下方的框框,勾選「不再顯示此訊息」,並按下「確定」按鈕。

PS. cwBlockly頁面請於樹莓派中執行。

積木程式首次使用須知

初始畫面如下。

積木程式初始畫面

控制超音波感測器的積木位於「感測元件」→「超音波感測器」。

超音波感測器元件

拖曳「超音波感測器定義積木」至RPi預設積木中,並將腳位編號依序調整為:Trig(12)、Echo(11)。

超音波感測器定義積木

要使用超音波感測器來量測距離,還需要距離量測積木,來取得量測的距離(cm)。再次打開「超音波感測器」積木區,拖曳並放置「距離量測」積木。

拖曳距離量測積木

放置距離量測積木

發現距離量測積木,無法加入上方的積木塊中,因為此積木的作用不同,我們必須決定將取回的數值,做什麼動作,例如:顯示在LX終端機中;或放在判斷積木中,進行數值的判斷,實現自走車的避障功能等。

此處我們以最簡單的觀察方式,就是讓這個數值,輸出在LX終端機上,「輸出」的積木位於「文字」積木區中。

輸出積木

放置輸出積木

還記得上方輸入的樣式嗎?如下圖,先輸出量測的距離數值,後面接著一個「空白格」及一個單位詞「cm」。

輸出樣式

所以我們需要使用一個組合輸出文字的積木,其一樣位於「文字」積木區中。

字串組合積木

放置字串組合積木

用來要設定「空白格」及「cm」的字串積木,也位於「文字」積木區中。

字串積木

放置好「字串」積木後,記得內容改成「 cm」。

放置字串積木

再將量測積木,接上字串組合積木中即可。

量測距離接上字串積木

別急,我們希望間隔一秒量測一次,而目前僅會量測一次,程式就結束了,相信各位知道怎麼調整,就能實現預定目標對吧!

量測距離積木程式

「執行」程式,請點擊右上方紅色Play按鈕。

執行積木程式

下載本範例積木程式 ULTRASONIC_01.rpb


若您對基礎電子套件有興趣,可至蝦皮賣場購買,若是學校團體亦可來信訂購,謝謝。

若對本篇教學文章有任何建議或問題,歡迎您來信:chipwaygo@gmail.com,謝謝。