1.模組簡介
hc-sr04超聲波模組常用於機械人避障、物體測距、液位檢測、公共安防、停車場檢測等場所。hc-sr04超聲波模組主要是由兩個通用的壓電陶瓷超聲感測器,並加外圍訊號處理電路構成的。如圖:
兩個壓電陶瓷超聲感測器,乙個用於發出超聲波訊號,乙個用於接收反射回來的超聲波訊號。由於發出訊號和接收訊號都比較微弱,所以需要通過外圍訊號放大器提高發出訊號的功率,和將反射回來訊號進行放大,以能更穩定地將訊號傳輸給微控制器。模組整體電路如圖:
2.模組引數
(1)模組主要電氣引數
使用電壓:dc—5v
靜態電流:小於2ma
電平輸出:高5v
電平輸出:底0v
感應角度:不大於15度
探測距離:2cm-450cm
高精度 可達0.2cm
(2)模組引腳
超聲波模組有4個引腳,分別為vcc、 trig(控制端)、 echo(接收端)、 gnd;其中vcc、gnd接上5v電源, trig(控制端)控制發出的超聲波訊號,echo(接收端)接收反射回來的超聲波訊號。模組如圖:
與微控制器的連線如圖:
控制原理:通過trig引腳發乙個 10us 以上的高電平,就可以在echo接收口等待高電平輸出;一有輸出就可以開定時器計時,當此口變為低電平時就可以讀定時器的值,此時就為此次測距的時間,方可算出距離.如此不斷的週期測,就可以達到你移動測量的值了。
3.控制程式
(1)工作流程
a.微控制器引腳觸發trig測距,給至少 10us 的高電平訊號;
b.模組自動傳送 8 個 40khz 的方波,自動檢測是否有訊號返回;
c.有訊號返回,通過 io 輸出一高電平,並微控制器定時器計算高電平持續的時間;
d.超聲波從發射到返回的時間.
計算公式:測試距離=(高電平時間*聲速(340m/s))/2;
整個控制時序如圖:
(2)驅動程式
1.微控制器引腳觸發trig測距,給至少 10us 的高電平訊號;
void startmodule() //啟動模組
2.自動檢測是否有訊號返回,如果有,啟動定時器;
while(!rx); //當rx為零時等待
tr0=1; //開啟計數
while(rx); //當rx為1計數並等待
tr0=0; //關閉計數
conut(); //計算
3.定時器計算高電平持續的時間,並計算出距離;
void conut(void)
樹莓派上使用HC SR04超聲波測距模組
hc sr04 模組可以測量 3cm 4m 的距離,精確度可以達到 3mm。這個模組包括 超聲波發射器 超聲波接收器和控制電路三部分。有 4 個引腳。4 個引腳由 2 個電源引腳 vcc gnd 和 2 個控制引腳 trig echo 組成。vcc 和 gnd 接 5v dc 電源,使用樹莓派或微控...
樹莓派使用HC SR04超聲波測距模組
hc sr04 模組可以測量 3cm 4m 的距離,測量角度為15度,精確度可以達到 3mm。這個模組包括超聲波發射器 超聲波接收器和控制電路三部分。有如下 4 個引腳 注意 echo 返回的是 5v訊號,而樹莓派的 gpio 接收超過 3.3v 的訊號可能會被燒毀,因此需要加乙個分壓電路 樹莓派向...
HC SR04超聲波測距模組的正確理解
今天,在閱讀關於hc sr04超聲波測距模組的51微控制器程式時,比對相應參考資料,發現乙個矛盾的地方,一時間想了好久,才有了一點眉目,特此記錄。主函式部分 如下 while 1 而使用者手冊上說 即有訊號返回才輸出高電平訊號。這句話的意思很顯然表示,如果沒有訊號返回,就不輸出高電平。那麼程式中 w...