如何使用HC-SR04進(jìn)行超聲波距離測(cè)量
HC-SR04是一款超聲波測(cè)距模塊。它的外觀看起來(lái)像一雙眼睛,這就是為什么它經(jīng)常被安裝在機(jī)器人汽車(chē)或機(jī)器昆蟲(chóng)上作為他們的“視覺(jué)”。
工作原理很簡(jiǎn)單:
1. 首先,將三角引腳設(shè)置為HIGH(快速HIGH→LOW脈沖)。
2. HC-SR04發(fā)送8超聲波脈沖在40千赫,并提高回聲引腳高。
3. 當(dāng)反射聲波返回時(shí),ECHO引腳再次變?yōu)長(zhǎng)OW。
如何計(jì)算距離
假設(shè)聲速為340m /s,則在空氣中傳播1cm所需的時(shí)間為:
340 × 100 × 10?26 = 29 μs
因?yàn)槁暡ㄔ谖矬w之間來(lái)回傳播,所以總傳播距離是原來(lái)的兩倍。因此,公式為:
距離=(時(shí)間/ 29)/ 2 =時(shí)間/ 58
重要事項(xiàng):電壓注意事項(xiàng)
HC-SR04工作電壓為5V。當(dāng)ECHO引腳輸出5V HIGH信號(hào)時(shí),可能會(huì)損壞BW21-CBV-Kit的GPIO引腳。
為了避免這種情況,必須使用電阻或電平移位器降壓。
接線圖(BW21-CBV-Kit +電阻)
使用1:2的電阻分壓器(任何合適的值都可以,避免過(guò)高的電阻)。如果沒(méi)有電阻器,可以使用邏輯電平轉(zhuǎn)換器。
示例代碼
打開(kāi)示例:File→Examples→AmebaGPIO→HCSR04_Ultrasonic
將其編譯并上傳到BW21-CBV-Kit中,然后按復(fù)位按鈕。打開(kāi)串行監(jiān)視器-測(cè)量結(jié)果每2秒打印一次。
筆記
由于HC-SR04使用的是反射聲波,因此測(cè)量到的距離可能會(huì)因物體表面的材料而異:
?粗糙的表面會(huì)使聲音分散
?柔軟的表面會(huì)吸收聲音
代碼引用
觸發(fā)測(cè)量脈沖高10μs:
digitalWrite (trigger_pin、高);delayMicroseconds (10);digitalWrite (trigger_pin、低);
測(cè)量ECHO引腳上HIGH脈沖的持續(xù)時(shí)間:
duration = pulseIn(echo_pin, HIGH);
計(jì)算距離:
距離=持續(xù)時(shí)間/ 58;
本文編譯自hackster.io





