新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于單片機(jī)的超聲波測距系統(tǒng)的研究與設(shè)計

基于單片機(jī)的超聲波測距系統(tǒng)的研究與設(shè)計

作者: 時間:2009-12-16 來源:網(wǎng)絡(luò) 收藏

此外,還有幾點需要說明的是:
(1)定時器T1之所以是65 ms溢出是因為它是16位定時/計數(shù)器(65 535)。在使用12MHz的晶振時,由于周期T=1/f=1/[(12×106)/12]=1μs,則一個機(jī)器周期是1μs,計數(shù)器每65 ms計數(shù)器溢出。
(2)本中40 kHz方波的產(chǎn)生采用軟件方式實現(xiàn):控制P1.0口輸出12μs的高電平,再輸出13μs的低電平,這樣得到一個周期的40 kHz的脈沖,再循環(huán)發(fā)送8次。
(3)在CPU停止發(fā)送脈沖群后,由于電阻尼,換能器不能立即停止發(fā)送,在一段時間內(nèi)仍然會發(fā)送,故這段時間內(nèi)不可立即開啟INT0接收回波,要等待一段后以避免發(fā)送端的部分直射波未經(jīng)被測物就直接繞射到接收端,這段被稱為“虛假反射波”。從發(fā)射開始一直到“虛假反射波”結(jié)束這段時間,不開放INT0中斷申請,可有效躲避干擾,但也會造成測試的“盲區(qū)”。本次設(shè)為1 ms,假定溫度為20℃,則測量盲區(qū)為s=1×10-3×344/2≈17.2 cm。
(4)最大測試距離將取決于:兩次脈沖群發(fā)送之間的最小時間間隔和脈沖的能量。一般來說,發(fā)射端脈沖個數(shù)越多,能量越大,所能測的距離也越遠(yuǎn)。但也不是無限制的,本次讀取定時器T0的計數(shù)值,最大能測試的距離是T0尚沒溢出,故在溫度20℃下,最大測試距離為s=vt/2=65 535×344/(2×106)=11.272 m。在一些周期性發(fā)射設(shè)備中,如果要測試的最大距離是10 m,則兩次脈沖群之間的最小時間為t=2×s/v=2×10/344≈60:ms 。


5 結(jié)束語
為了驗證的測量精度,在實驗室進(jìn)行了實地測量。利用本對20~1 000 cm范圍進(jìn)行了多次測試,經(jīng)補(bǔ)償后最大誤差達(dá)2 cm,線性度、穩(wěn)定性和重復(fù)性都比較好。具有結(jié)構(gòu)簡單、體積小、實時LCD顯示和報警、帶溫度補(bǔ)償、抗干擾性能好等優(yōu)點。系統(tǒng)的誤差主要來自于發(fā)射探頭發(fā)出的是呈喇叭狀擴(kuò)散傳播、被測物的表面不光滑且不一定垂直于兩探頭的軸線而導(dǎo)致所反射回來的波也許是從不同點獲得,此外電子元器件自身的時延、干擾等也造成一定影響??梢愿鶕?jù)具體場合,選擇合適功率的探頭,以及調(diào)整程序中脈沖的頻率、寬度和個數(shù)等提高精度或測量距離,擴(kuò)大系統(tǒng)的應(yīng)用范圍。


上一頁 1 2 3 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉