超聲波模組HC-SR04簡介以及程式設計
之前做避障車用到了超聲波模組,總結了下資料
1、本模組效能穩定,測度距離精確,模組高精度,盲區小。 產品應用領域: 機器人避障 物體測距 液位檢測 公共安防 停車場檢測 。
2、 主要技術引數:
1:使用電壓:DC---5V
2:靜態電流:小於2mA
3:電平輸出:高5V
4:電平輸出:底0V
5:感應角度:不大於15度
6:探測距離:2cm-450cm
7:高精度 可達0.2cm
接線方式:VCC、trig(控制端)、 echo(接收端)、 GND
基本工作原理:
(1)採用IO口TRIG觸發測距,給至少10us的高電平訊號;
(2)模組自動傳送8個40khz的方波,自動檢測是否有訊號返回;
(3)有訊號返回,通過IO口ECHO輸出一個高電平,高電平持續的時間就是超聲波從發射到返回的時間。測試距離=(高電平時間*聲速(340M/S))/2;
本模組使用方法簡單,一個控制口發一個10US以上的高電平,就可以在接收口等待高電平輸出.一有輸出就可以開定時器計時,當此口變為低電平時就可以讀定時器的值,此時就為此次測距的時間,方可算出距離.如此不斷的週期測,即可以達到你移動測量的值
5、 操作:初始化時將trig和echo埠都置低,首先向給 trig 傳送至少10 us的高電平脈衝(模組自動向外傳送8個40K的方波),然後等待,捕捉 echo 端輸出上升沿,捕捉到上升沿的同時,開啟定時器開始計時,再次等待捕捉echo的下降沿,當捕捉到下降沿,讀出計時器的時間,這就是超聲波在空氣中執行的時間,按照 測試距離=(高電平時間*聲速(340M/S))/2 就可以算出超聲波到障礙物的距離。
本帖最後由 海神 於 2013-6-15 18:07 編輯 超聲波發射器向某一方向發射超聲波,在發射的同時開始計時,超聲波在空氣中傳播,途中碰到障礙物就立即返回來,超聲波接收器收到反射波就立即停止計時。聲波在空氣中的傳播速度為340m/s,根據計時器記錄的時間t,就可以計算出發射點距障礙物的距離s,即:s=340m/s× t / 2 。這就是所謂的時間差測距法。本實驗利用超聲波測得的距離從串列埠中顯示。
元器件清單: Zduino UNO × 1; USB資料線 × 1 ; 1p杜邦線 × 4 ; 超聲波感測器 × 1; 知識要點: pulseIn():用於檢測引腳輸出的高低電平的脈衝寬度。 pulseIn(pin, value) pulseIn(pin, value, timeout) Pin---需要讀取脈衝的引腳 Value---需要讀取的脈衝型別,HIGH或LOW Timeout---超時時間,單位微秒,資料型別為無符號長整型。
使用方法及時序圖:
1、使用Arduino採用數字引腳給SR04的Trig引腳至少10μs的高電平訊號,觸發SR04模組測距功能; 2、觸發後,模組會自動傳送8個40KHz的超聲波脈衝,並自動檢測是否有訊號返回。這步會由模組內部自動完成。 3、如有訊號返回,Echo引腳會輸出高電平,高電平持續的時間就是超聲波從發射到返回的時間。此時,我們能使用pulseIn()函式獲取到測距的結果,並計算出距被測物的實際距離。
SR04與Arduino接線示意圖:
|
相關文章
- 藍橋杯微控制器 超聲波模組和PCA模組PCA
- STM32微控制器連線HC_SR04超聲波模組測距
- shell程式設計—簡介(一)程式設計
- 超全的設計模式簡介(45種)設計模式
- 超全的設計模式簡介(45 種)設計模式
- Scala 簡介 [摘自 Scala程式設計 ]程式設計
- SpringBoo+HTMX程式設計簡介Spring程式設計
- WebGL程式設計指南(1)簡介Web程式設計
- Day43--GUI程式設計簡介GUI程式設計
- Windows 程式設計簡介從C/C++到Windows程式設計Windows程式設計C++
- 01 Python3程式設計之程式設計語法簡介Python程式設計
- 51超聲波測距簡易程式碼
- 併發程式設計基礎——JMM簡介程式設計
- 響應式程式設計簡介之:Reactor程式設計React
- 簡述JavaScript模組化程式設計(二)JavaScript程式設計
- Python 函數語言程式設計、裝飾器以及一些相關概念簡介Python函數程式設計
- ModbusTCP協議簡介與程式設計流程圖TCP協議程式設計流程圖
- Rust語言非同步程式設計簡介 - ShakaibRust非同步程式設計AI
- 非同步程式設計測試Awaitlity簡介| Baeldung非同步程式設計AI
- 區塊鏈上程式設計:DApp 開發簡介區塊鏈程式設計APP
- Quartz 2D程式設計指南 (一) —— 簡介(一)quartz程式設計
- 好程式設計師Python培訓分享numpy簡介程式設計師Python
- 超聲波測距模組使用
- java設計模式一一設計模式的簡介和介紹Java設計模式
- 23種設計模式簡介設計模式
- Yii2設計模式——設計模式簡介設計模式
- 區塊鏈組織-超級賬本(Hyperledger)的簡介區塊鏈
- 002 Rust 非同步程式設計,async await 簡單介紹Rust非同步程式設計AI
- 簡單介紹python程式設計之檔案讀寫Python程式設計
- 第二章:C#非同步程式設計簡介C#非同步程式設計
- python之超程式設計Python程式設計
- NIO程式設計介紹程式設計
- ASP.NETCore簡介-ASP.NETCore基礎教程-簡單教程,簡單程式設計ASP.NETNetCore程式設計
- Java設計模式簡介(總結)Java設計模式
- 領域驅動設計簡介
- Tekton 設計簡介 及 實踐
- 《程式設計時間簡史系列》JavaScript 模組化的歷史程式程式設計JavaScript
- 好程式設計師web前端培訓分享HTML DOM簡介程式設計師Web前端HTML