超音波偵測
超音波傳感器的目的在於測量距離,透過超音波碰撞到物體之後反射回來的時間差,就可以計算超音波傳感器與相對應物體之間的距離。
接線與實作
這裏使用的超音波傳感器的型號為 HC-SR04,接線的方式只要將 VCC 接在 3.3V 或 VCC 的位置,GND 接在 GND 的位置,Trig 接在 16,Echo 接在 14。
超音波要接在 3.3V 或 VCC 必須看傳感器本身的規格而定,若偵測時候發現距離偵測不準確,可先更換 3.3V 或 VCC 的接線。
Webduino Blockly 操作解析
在畫面中放入開發板積木,開發板下拉選單選擇「Smart」,連線方式選擇「Wi-Fi」,填入 Device ID,在開發板內放入超音波傳感器的積木,Trig 腳位設定 16,Echo 腳位設定 14。
取得 Device ID、使用 IP 來進行 WebSocket 操控,請參考:Webduino Smart ( 初始化設定 )
放入使用超音波偵測的積木,設定為每 500 毫秒 ( 0.5 秒 ) 偵測一次,並用網頁互動測試區的「顯示文字」顯示偵測到的距離,入裝置 Device ID,確認開發板上線,點選右上方紅色按鈕執行,就可以看到偵測到的距離顯示在網頁裡了。
因為距離的偵測,是透過超音波的一來一往時間差所計算出,所以如果受測的物體是傾斜狀態、待測物會吸收聲波、或待測物完全遮住超音波傳感器 ( 距離為 0 ),測出來的距離就會有不準確的情形發生。
除了利用「每 500 毫秒偵測一次」的偵測方式,也可以透過超音波「擷取距離」的積木,即時偵測距離,若使用擷取距離來偵測,偵測的間隔時間為「一次發送與接收」( 速度遠快於 500 毫秒 )。
因為偵測只有「一次發送與接收」,所以若要連續偵測,可透過「無窮迴圈」來實現,因此可以在畫面中放入「迴圈」,將迴圈設定為「直到」,最後使用網頁互動測試區的「顯示文字」顯示偵測到的距離。
迴圈積木在「基本功能 > 迴圈」目錄下,若迴圈設定為「直到」,表示直到發生什麼事情迴圈會停下,設定為「當」表示當發生什麼事情,迴圈會啟動。
填入裝置 Device ID,確認開發板上線,點選右上方紅色按鈕執行,就可以即時的用超音波偵測距離了。
相關參考
- 範例解答:https://goo.gl/eYnBnq
- 完整程式碼:http://bin.webduino.io/piyasa/edit?html,js,output
- 其他超音波教學文:超音波
聯絡我們
如果對於 Webduino 產品有興趣,歡迎透過下列方式購買:
個人線上購買:https://store.webduino.io/ ( 支援信用卡、超商取貨付款 )
企業&學校採購:來信 [email protected] 或來電 07-3388511。
如果對於這篇教學有任何問題或建議,歡迎透過下列方式聯繫我們:
Email:[email protected] ( 如對於產品有使用上的問題,建議透過 Email 附上照片或影片聯繫 )
Facebook 粉絲團:https://www.facebook.com/webduino/
Facebook 技術討論社團:https://www.facebook.com/groups/webduino/