距離傳感器是機(jī)器人項(xiàng)目最有用的傳感器之一。 HC-SR04超聲波距離傳感器價(jià)格便宜,并且可以幫助您的機(jī)器人在房間周圍導(dǎo)航。通過(guò)一些努力和額外的組件,它也可以用作測(cè)量設(shè)備。在本篇文章中,您將學(xué)習(xí)到通過(guò)Arduino開(kāi)發(fā)板使用這個(gè)美妙的小設(shè)備所需要知道的一切。
HC-SR04超聲波距離傳感器
HC-SR04超聲波距離傳感器是一種便宜的設(shè)備,對(duì)于機(jī)器人和測(cè)試設(shè)備項(xiàng)目非常有用。這個(gè)微小的傳感器能??夠測(cè)量自身和最近的固體物體之間的距離,如果您試圖避免進(jìn)入墻壁,這是非常好的信息!
HC-SR04可以直接連接到Arduino或其他微控制器,它的工作電壓為5伏。它也可以與Raspberry Pi一起使用,但是由于HC-SR04需要5V電壓,因此需要一對(duì)電阻來(lái)連接Pi的3.3V GPIO端口。
這種超聲波距離傳感器能夠測(cè)量2厘米到400厘米之間的距離(對(duì)于那些不會(huì)說(shuō)“公制”的人來(lái)說(shuō),大約在1英寸到13英尺之間)。這是一個(gè)低電流設(shè)備,所以它適用于電池供電設(shè)備。作為獎(jiǎng)勵(lì),它甚至看起來(lái)很酷,就像一對(duì)Wall-E機(jī)器人的眼睛為您的最新機(jī)器人發(fā)明!
那么請(qǐng)繼續(xù)閱讀,并告訴您如何連接和使用HC-SR04超聲波距離傳感器。我們也會(huì)通過(guò)一些測(cè)試來(lái)看看它是多么準(zhǔn)確,我們將看看我們?nèi)绾文軌蛱?a target="_blank">高精度。當(dāng)然,我會(huì)有一些示例代碼和項(xiàng)目供您試用。讓我們開(kāi)始吧!
HC-SR04的工作原理
超聲波距離傳感器使用超聲波脈沖(超出人類聽(tīng)覺(jué)范圍的聲音)來(lái)檢測(cè)它們與附近固體物體之間的距離。傳感器由兩個(gè)主要部分組成:
● 超聲波發(fā)射機(jī) - 發(fā)射超聲波脈沖,它工作在40KHz。
● 超聲波接收機(jī) - 接收發(fā)射的脈沖。如果接收到它們,則會(huì)產(chǎn)生一個(gè)輸出脈沖,其寬度可用于確定脈沖行進(jìn)的距離。
HC-SR04有以下四個(gè)連接:
● VCC - 5V正電源。
● Trig - “觸發(fā)器”引腳,驅(qū)動(dòng)該引腳發(fā)送超聲波脈沖。
● Echo - 當(dāng)接收到反射信號(hào)時(shí)產(chǎn)生脈沖的引腳。脈沖的長(zhǎng)度與發(fā)送信號(hào)被檢測(cè)到的時(shí)間成正比。
● GND - 接地引腳。
該設(shè)備的工作過(guò)程如下:
1. 一個(gè)持續(xù)時(shí)間至少10微秒的5伏脈沖施加到Trigger引腳。
2. HC-SR04通過(guò)以40KHz發(fā)送8個(gè)脈沖來(lái)響應(yīng)。這個(gè)8脈沖模式使得設(shè)備的“超聲波簽名”是獨(dú)一無(wú)二的,使接收機(jī)能夠區(qū)分發(fā)射模式和超聲背景噪聲。
3. 八個(gè)超聲波脈沖通過(guò)遠(yuǎn)離發(fā)射機(jī)的空氣傳播。同時(shí),Echo引腳變?yōu)楦唠娖?,開(kāi)始形成回波信號(hào)的開(kāi)始。
4. 如果脈沖信號(hào)不反射回來(lái),則回聲信號(hào)將在38毫秒(38毫秒)后超時(shí)并返回低電平。這會(huì)產(chǎn)生一個(gè)38毫秒的脈沖,表明傳感器范圍內(nèi)沒(méi)有任何障礙物。
5. 如果脈沖被反射回來(lái),當(dāng)收到信號(hào)時(shí),Echo引腳變?yōu)榈碗娖健_@產(chǎn)生了一個(gè)脈沖,其寬度在150μs到25mS之間變化,這取決于信號(hào)被接收所花費(fèi)的時(shí)間。
6. 接收到的脈沖寬度用于計(jì)算到反射物體的距離。請(qǐng)記住,脈沖表示信號(hào)被發(fā)送出去并反射回來(lái)的時(shí)間,所以你需要將結(jié)果除以2來(lái)得到距離。
下圖顯示了HC-SR04超聲波距離傳感器的尺寸以及有效操作角度。正如你所看到的,當(dāng)待檢測(cè)物體直接位于其前面時(shí),傳感器是最準(zhǔn)確的,但是你可以在45度“視角”內(nèi)得到物體的響應(yīng)。文件建議將窗口限制在30度(兩邊15度)以獲得準(zhǔn)確的讀數(shù)。
連接HC-SR04
將HC-SR04連接到Arduino非常簡(jiǎn)單。您將需要一些數(shù)字I / O端口,并連接到Arduino的5V和接地引腳。
事實(shí)上,如果你缺少引腳,甚至可以將HC-SR04的觸發(fā)和回聲引腳連接到Arduino上的一個(gè)數(shù)字I / O引腳,并使用代碼在輸出之間切換引腳(發(fā)送10 us脈沖)和輸入(接收回聲脈沖)。有些超聲波傳感器實(shí)際上只有一個(gè)引腳兼有觸發(fā)和回聲。我會(huì)進(jìn)一步討論這個(gè)問(wèn)題,繼續(xù)往下看,所以請(qǐng)繼續(xù)閱讀。
我將在這里向大家展示的大多數(shù)示例都使用更傳統(tǒng)的雙引腳方法。任何免費(fèi)的Arduino和任意數(shù)字I / O引腳都可以使用,所以如果你希望把它連接到一組不同的I / O引腳,只需要改變示例來(lái)反映這些變化。演示程序中我將使用Arduino Uno,引腳10為T(mén)rigger,引腳13為Echo。
HC-SR04的應(yīng)用筆記強(qiáng)調(diào),在連接VCC之前,您需要連接接地引腳,所以如果您在面包板上進(jìn)行“實(shí)時(shí)”實(shí)驗(yàn),則可能需要牢記這一點(diǎn)。
所以現(xiàn)在我們已經(jīng)連接了超聲波距離傳感器,是時(shí)候來(lái)編寫(xiě)代碼并進(jìn)行測(cè)試了。
編輯:hfy
-
微控制器
+關(guān)注
關(guān)注
48文章
7844瀏覽量
153377 -
超聲波
+關(guān)注
關(guān)注
63文章
3074瀏覽量
139522 -
Arduino
+關(guān)注
關(guān)注
188文章
6485瀏覽量
189707 -
HC-SR04
+關(guān)注
關(guān)注
9文章
82瀏覽量
42937 -
距離傳感器
+關(guān)注
關(guān)注
3文章
76瀏覽量
15338
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
超聲波傳感器HC-SR04測(cè)距實(shí)例軟件
如何對(duì)基于STM32F103VET6的超聲波傳感器HC-SR04進(jìn)行測(cè)距呢
HC-SR04超聲波測(cè)距模塊原理
HC-SR04超聲波具有哪些參數(shù)應(yīng)用
基于Arduino Nano和HC-SR04超聲波傳感器制作社交距離項(xiàng)目
HC-SR04超聲波測(cè)距模塊及程序
HC-SR04超聲波測(cè)距資料
HC-SR04超聲波測(cè)距塊講解(附32單片機(jī)源碼)

帶有HC-SR04的超聲波傳感器陣列
HC-SR04超聲波傳感器開(kāi)源分享

Zephyr RTOS和HC-SR04超聲波傳感器開(kāi)源

超聲波傳感器HC-SR04(Arduino項(xiàng)目)

評(píng)論