摘 要:本設(shè)計(jì)介紹了一種高精度、微型化數(shù)字顯示超聲波測(cè)距儀的硬件電路和軟件設(shè)計(jì)思路,系統(tǒng)以MSP430F5438A控制器為主控核心,電路采用模塊化設(shè)計(jì),控制發(fā)射模塊發(fā)射超聲波。聲波在傳送過程中碰到障礙物產(chǎn)生反射,接收模塊接受回波,交給單片機(jī)計(jì)算處理。同時(shí),結(jié)合溫度傳感器,計(jì)算出環(huán)境溫度對(duì)應(yīng)的聲速,計(jì)算出往返距離。
關(guān)鍵詞:MSP430F5438A;超聲波;溫度傳感器
隨著電子技術(shù)的發(fā)展,出現(xiàn)了激光測(cè)距、微波雷達(dá)測(cè)距超聲波測(cè)距等幾種方式。前2種方法由于成本高、技術(shù)難度大,一般僅用于建筑測(cè)量和軍事工業(yè),而超聲波測(cè)距則由于其技術(shù)難度相對(duì)較低,且成本低廉,在民用測(cè)距儀中的應(yīng)用越來越廣。這是一個(gè)正在蓬勃發(fā)展而又有無限前景的技術(shù)及產(chǎn)業(yè)領(lǐng)域,作為一種非接觸式的檢測(cè)方法,朝著更加高定位高精度的方向發(fā)展。它不受被測(cè)對(duì)象顏色的影響。對(duì)于被測(cè)物處于煙霧、電磁干擾、黑暗、有灰塵、有毒等惡劣的環(huán)境下有一定的適應(yīng)能力。因此在液位測(cè)量、車輛防撞雷達(dá)等方面有廣泛應(yīng)用。而且超聲波傳感器具有結(jié)構(gòu)簡(jiǎn)單、體積小、信號(hào)處理可靠等特點(diǎn)。因此本設(shè)計(jì)也是利用超聲波來測(cè)量距離。
1 設(shè)計(jì)思路
超聲波測(cè)距的原理一般采用渡越世間法TOF(timeofflight)。原理是測(cè)量出超聲波從發(fā)射到經(jīng)過障礙物反射的回波到達(dá)發(fā)射探頭的時(shí)間,實(shí)際上是測(cè)量時(shí)間。從發(fā)射超聲波至接收回波所經(jīng)歷的射程時(shí)間,時(shí)間值乘以超聲波的傳播速度就可以得聲源與障礙物之間的往返距離。
采用MSP430F5438A為主控制器,使用16M晶振,其處理速度快,容量大而且自帶功能齊全。本設(shè)計(jì)中用到了MSP430F5438A芯片內(nèi)部集成溫度傳感器,不僅簡(jiǎn)化了外圍電路和降低硬件成本,而且還減小了測(cè)量誤差,測(cè)量精度理論上可以達(dá)到毫米級(jí)。
選用HC-SR04超聲波傳感器,這種型號(hào)的傳感器本身集成了濾波、積分比較電路,外圍電路設(shè)計(jì)較為簡(jiǎn)單。系統(tǒng)總體框圖如圖1所示。
設(shè)超聲波探頭與被測(cè)物體之間的距離s,往返時(shí)間為t,超聲波在空氣中的傳播速度為v,則距離s可有公式1-1得出
垂直距離d與高度h關(guān)系如公式1-2所示。
一般測(cè)距過程中,兩探頭間的距離很小,若d遠(yuǎn)大于h,本文中,h可以忽略不計(jì),所以可以認(rèn)為d=s。
2 控制設(shè)計(jì)
2.1 主控電路
該系統(tǒng)控制器采用TI公司的MSP430F5438A單片機(jī),采用16MHz外部晶體振蕩器,減小因內(nèi)部溫漂引起的工作頻率誤差。單片機(jī)內(nèi)部TB定時(shí)器工作在PWM模式,輸出超聲波傳感器所需的40KHz的方波信號(hào),利用中斷口監(jiān)測(cè)超聲波接收電路輸出的返回信號(hào),控制器通過檢測(cè)外部中斷信號(hào),當(dāng)中斷口引腳的輸入電平由高到低產(chǎn)生下降沿時(shí),就可判斷信號(hào)已經(jīng)返回,根據(jù)計(jì)數(shù)器所計(jì)的數(shù)值就可以計(jì)算出超聲波傳播中所經(jīng)歷的時(shí)間。
2.2 誤差影響
超聲波測(cè)距的主要誤差來源于控制器振蕩器的誤差、中斷到中斷響應(yīng)停止計(jì)時(shí)之間的滯后引起的計(jì)時(shí)器本身誤差和外部環(huán)境(溫度、壓力、濕度)對(duì)聲速的影響三大部分。
一般情況下,控制器內(nèi)部晶振由于工藝和溫度影響,穩(wěn)定度在2%左右,故對(duì)測(cè)量會(huì)造成較大誤差。多數(shù)外部晶振穩(wěn)定度在20-50PPM級(jí)別,故選取質(zhì)量好的晶振,可以顯著減小系統(tǒng)誤差。
外部邊沿信號(hào)觸發(fā)中斷到控制器響應(yīng)中斷讀取定時(shí)器值,需要耗費(fèi)多個(gè)不固定指令周期,對(duì)于短距離測(cè)量,誤差會(huì)相應(yīng)增加。為了避免滯后引起的誤差,選用定時(shí)器的捕捉方式對(duì)邊沿觸發(fā)信號(hào)進(jìn)行捕捉。這樣,控制器就不會(huì)因?yàn)轫憫?yīng)中斷而引起計(jì)數(shù)值的誤差。
由于外部環(huán)境的溫度、壓力、濕度不同,音速會(huì)變化,檢測(cè)電路的靈敏度也會(huì)變化。尤其是溫度的影響最大,但后兩個(gè)變化一般可以忽略。為了修正溫度對(duì)測(cè)量的影響,通常可以借助溫度補(bǔ)償計(jì)算對(duì)音速變化進(jìn)行修正,具體如公式2-1所示。
其中T為當(dāng)前環(huán)境溫度,對(duì)應(yīng)關(guān)系如圖2所示。
MSP430F5438A單片機(jī)內(nèi)部集成了溫度傳感器,可通過ADC內(nèi)部通道進(jìn)行訪問,節(jié)省了另外設(shè)計(jì)外部溫度傳感器電路的成本。
3 系統(tǒng)整體測(cè)試
經(jīng)過實(shí)驗(yàn)測(cè)試和分析,設(shè)計(jì)測(cè)量范圍為3.1mm——2.15m,最大誤差不超過1mm。同時(shí),為了減小誤差,使用軟件方法對(duì)數(shù)據(jù)進(jìn)行多次測(cè)量,對(duì)所測(cè)得每組數(shù)據(jù)去掉最大值和最小值,選取范圍較接近的值,再求出平均值,用來作為最終的測(cè)量數(shù)據(jù)輸出。
[參考文獻(xiàn)]
[1]牛余朋,成曙.基于單片機(jī)的超聲波測(cè)距系統(tǒng)[J].北京:兵工自動(dòng)化.2005.2.
[2]何莉,曾憲文,徐霞.基于PIC單片機(jī)的超聲波測(cè)距系統(tǒng)[J].北京:壓電與聲光.2004.4.
[3]宋敬國(guó),李元宗,徐玉華.PIC單片機(jī)在超聲波測(cè)距系統(tǒng)中的應(yīng)用[J].北京:機(jī)械工程與自動(dòng)化.2007.8。
[4]吳超.基于FPGA的超聲波測(cè)距系統(tǒng)[D].武漢:武漢理工大學(xué).2009.