arduino教程-08.超声波的应用
topic
- 2.1 認(rèn)識(shí)超聲波
- 2.2 影響聲音傳播速度的因素
- 2.3 超聲波傳感器簡(jiǎn)介
- 2.4 實(shí)驗(yàn)
- 任務(wù)1:使用超聲波傳感器制作數(shù)字量尺
- 測(cè)量脈沖持續(xù)時(shí)間的pulseln()函數(shù)
- 2.5 hc-sr04超聲波傳感器
超聲波選型指南
2.1 認(rèn)識(shí)超聲波
可在空氣中傳播的超聲波頻率,大約介于20~200KHz之間,其衰減程度與頻率成正比(即頻率越高,傳播距離越短)
在室溫20°C的環(huán)境中,聲波的傳輸速度約為344m/s(**聲音在水中傳播的速度比在空氣快60倍),因此,假設(shè)超聲波往返的時(shí)間為600μs,可通過(guò)公式:距離=344米/秒×傳播時(shí)間2距離 = 344米/秒 \times \frac{傳播時(shí)間}{2}距離=344米/秒×2傳播時(shí)間? 求得:被測(cè)物的距離為10.3cm。
2.2 影響聲音傳播速度的因素
速度=V0+0.6×T速度 = V_0 + 0.6 \times T 速度=V0?+0.6×T
其中,V0V_0V0?:聲音在0攝氏度時(shí)的傳播速度331.5米/秒。T:溫度
波長(zhǎng)=相速度頻率波長(zhǎng) = \frac{相速度}{頻率} 波長(zhǎng)=頻率相速度?
2.3 超聲波傳感器簡(jiǎn)介
超聲波傳感器模塊上面通常有兩個(gè)超聲波元器件,一個(gè)用于發(fā)射,一個(gè)用于接收。電路板上有4個(gè)引腳:VCC(正極)、Trig(觸發(fā))、Echo(回應(yīng))、GND(接地),主要參數(shù):
- 工作電壓與電流 :5V、15mA。
- 感測(cè)距離 :2~400cm
- 感測(cè)角度:不大于15°。
- 被測(cè)物的面積不要小于50cm2并且盡量平整。
- 具備溫度補(bǔ)償電路。
在超聲波模塊的觸發(fā)腳位輸入10微妙以上的高電位,即可發(fā)射超聲波,發(fā)射超聲波之后,與接收到傳回的超聲波之前,“響應(yīng)”腳位呈現(xiàn)高電位。因此,程序可從“響應(yīng)”腳位的高電位脈沖持續(xù)時(shí)間,換算出被測(cè)物的距離。
2.4 實(shí)驗(yàn)
任務(wù)1:使用超聲波傳感器制作數(shù)字量尺
實(shí)驗(yàn)說(shuō)明: 使用超聲波感測(cè)與障礙物之間的距離,顯示在串口監(jiān)視器或LCD模塊。
實(shí)驗(yàn)材料:
| 超聲波傳感器 | 1個(gè) |
測(cè)量脈沖持續(xù)時(shí)間的pulseln()函數(shù)
Arduino提供一個(gè)測(cè)量脈沖時(shí)間長(zhǎng)度的pulseln()函數(shù),語(yǔ)法格式:
Syntax
pulseIn(pin, value)
pulseIn(pin, value, timeout)
此函數(shù)將傳回微妙單位的脈沖時(shí)間,建議用unsigned long類型的變量來(lái)存放。
pulseln()函數(shù)會(huì)等待脈沖出現(xiàn)再開(kāi)始計(jì)時(shí),預(yù)設(shè)的等待截止時(shí)間是1秒(即10610^6106微秒),假如脈沖信號(hào)未在等待時(shí)間內(nèi)出現(xiàn),pulseln()將傳回0.假如有需要,指定timeout的值為10微秒~3分鐘的等待截止時(shí)間。
如果想要測(cè)量信號(hào)的頻率,可以采用Martin Nawrath開(kāi)發(fā)的頻率計(jì)時(shí)器擴(kuò)展庫(kù)“FreqCounter”。
Parameters
pin: the number of the pin on which you want to read the pulse. (int)
value: type of pulse to read: either HIGH or LOW. (int)
timeout (optional): the number of microseconds to wait for the pulse to start; default is one second (unsigned long)
實(shí)驗(yàn)程序:
2.5 hc-sr04超聲波傳感器
HC-SR04超聲波傳感器使用聲納來(lái)確定物體的距離。它提供了非常好的非接觸范圍檢測(cè),準(zhǔn)確度高,讀數(shù)穩(wěn)定,易于使用,尺寸從2厘米到400厘米或1英寸到13英尺不等。
其操作不受陽(yáng)光或黑色材料的影響,盡管在聲學(xué)上,柔軟的材料(如布料等)可能難以檢測(cè)到。它配有超聲波發(fā)射器和接收器模塊。
| 電源 | + 5V DC |
| 靜態(tài)電流 | <2mA |
| 工作電流 | 15mA |
| 有效角度 | <15° |
| 測(cè)距距離 | 2厘米-400厘米/1英寸-13英尺 |
| 分辨率 | 0.3厘米 |
| 測(cè)量角度 | 30度 |
你將需要以下組件:
- 1 × Breadboard 面包板
- 1 × Arduino Uno R3
- 1 × 超聲波傳感器(HC-SR04)
超聲波傳感器有四個(gè)端子:+5V,Trigger,Echo和GND,連接如下:超聲波傳感器有四個(gè)端子:+5V,Trigger,Echo和GND,連接如下:
- 將+5V引腳連接到Arduino板上的+5v。
- 將Trigger連接到Arduino板上的數(shù)字引腳7。
- 將Echo連接到Arduino板上的數(shù)字引腳6。
- 將GND連接到Arduino上的GND。
在我們的程序中,我們通過(guò)串口顯示了傳感器測(cè)量的距離,單位為英寸和厘米。
結(jié)果,你將在Arduino串口監(jiān)視器上看到傳感器測(cè)量的距離,單位為英寸和厘米。
總結(jié)
以上是生活随笔為你收集整理的arduino教程-08.超声波的应用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。