《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 一種基于單片機(jī)的超聲波傳感器的研究與設(shè)計(jì)
一種基于單片機(jī)的超聲波傳感器的研究與設(shè)計(jì)
來(lái)源:微型機(jī)與應(yīng)用2010年第15期
蘇 強(qiáng),林旭梅
(青島理工大學(xué) 自動(dòng)化工程學(xué)院,山東 青島 266520)
摘要: 以AT89S52單片機(jī)為主控制器完成一種較高精度超聲波測(cè)距器的設(shè)計(jì)。對(duì)系統(tǒng)存在的測(cè)量誤差進(jìn)行詳細(xì)分析并給出提高精度的可行性方案。
Abstract:
Key words :

 摘  要:AT89S52單片機(jī)為主控制器完成一種較高精度超聲波測(cè)距器的設(shè)計(jì)。對(duì)系統(tǒng)存在的測(cè)量誤差進(jìn)行詳細(xì)分析并給出提高精度的可行性方案。
關(guān)鍵詞: 超聲波;發(fā)射;接收;溫度補(bǔ)償

    現(xiàn)代工業(yè)正向著智能化、自動(dòng)化的方向發(fā)展,測(cè)距技術(shù)作為工業(yè)生產(chǎn)的重要組成部分對(duì)穩(wěn)定度和精度的要求也日益嚴(yán)格。傳統(tǒng)測(cè)量手段由于受環(huán)境、工具和人為因素影響,已經(jīng)不能滿足現(xiàn)代工業(yè)測(cè)量的要求。超聲波測(cè)距作為一種非接觸式的測(cè)距方式,以其抗干擾能力強(qiáng)[1-2]、測(cè)量范圍廣、易于控制、測(cè)量精度高等優(yōu)點(diǎn),已經(jīng)在工業(yè)測(cè)量領(lǐng)域得到廣泛應(yīng)用。本系統(tǒng)設(shè)計(jì)應(yīng)用于石油泥漿液位測(cè)量,設(shè)計(jì)測(cè)量范圍為50 cm~600 cm,設(shè)計(jì)測(cè)量精度為厘米級(jí),特點(diǎn)在于系統(tǒng)采用溫度補(bǔ)償對(duì)測(cè)量數(shù)據(jù)進(jìn)行修正,確保準(zhǔn)確性。
1 工作原理及系統(tǒng)設(shè)計(jì)
1.1 超聲波測(cè)距原理

    超聲波傳感器主要由雙壓電晶片振子、圓錐共振板和電極等部分構(gòu)成。兩電極間加上一定的電壓時(shí)壓電晶片就會(huì)被壓縮產(chǎn)生機(jī)械形變,撤去電壓后壓電晶片恢復(fù)原狀。若在兩極間按照一定的頻率加上電壓,則壓電晶片也會(huì)保持一定的頻率振動(dòng)。經(jīng)試驗(yàn)測(cè)得此型號(hào)壓電晶片的固有頻率為38.4 kHz,則在兩極外加頻率為40 kHz的方波脈沖信號(hào),此時(shí)壓電晶片產(chǎn)生共振,向外發(fā)射出超聲波。同理,沒(méi)有外加脈沖信號(hào)的超聲波傳感器在共振板接收到超聲波時(shí)也會(huì)產(chǎn)生共振,在兩極間產(chǎn)生電信號(hào)[3]。
1.2 系統(tǒng)原理設(shè)計(jì)
    本系統(tǒng)硬件主要由超聲波發(fā)射、超聲波接收及放大、單片機(jī)控制與液晶顯示、溫度采集和補(bǔ)償?shù)炔糠纸M成,如圖1所示。當(dāng)按下復(fù)位鍵啟動(dòng)系統(tǒng)工作時(shí),單片機(jī)向傳感器發(fā)射頭送出若干40 kHz的方波脈沖,同時(shí)啟動(dòng)定時(shí)器對(duì)超聲波傳播時(shí)間進(jìn)行計(jì)時(shí)。當(dāng)接收頭收到反射回的超聲波(在有效測(cè)距范圍內(nèi))并經(jīng)放大濾波傳入單片機(jī)時(shí),定時(shí)器停止計(jì)時(shí)。查表得到測(cè)距溫度下的聲速,按式(1)計(jì)算出測(cè)量距離,送液晶顯示。


    s=Ct/2                 (1)
式中s為測(cè)量距離,C為超聲波傳播速度,t為傳播時(shí)間。
2 系統(tǒng)電路設(shè)計(jì)
2.1 超聲波發(fā)射電路

    由于系統(tǒng)工作環(huán)境比較惡劣,為保證測(cè)距的范圍和精度,需要保證傳感器發(fā)射頭的外加壓差足夠大。因此采用轉(zhuǎn)換范圍較大、工作穩(wěn)定的16位CMOS轉(zhuǎn)換器CD4049組成超聲波發(fā)射電路的主體(CD4049最大轉(zhuǎn)換電壓與探頭最大驅(qū)動(dòng)電壓同為20 V)。超聲波發(fā)射電路如圖2所示[4]。

    考慮到發(fā)射頭一般需要5個(gè)方波周期達(dá)到穩(wěn)定震蕩狀態(tài)的95%,經(jīng)1.5倍上升時(shí)間達(dá)穩(wěn)定震蕩狀態(tài)的99%[5]。為保證最大程度的觸發(fā),單片機(jī)每組產(chǎn)生12個(gè)帶寬為12 μs的方波經(jīng)調(diào)理電路傳到發(fā)射頭。
2.2 超聲波接收放大電路
    超聲波在空氣中傳播的衰減程度隨傳播距離的增加而增大,所以反射回來(lái)被接收頭收到的信號(hào)非常微弱,不能直接送入后級(jí)電路處理,首先要經(jīng)過(guò)信號(hào)放大。超聲波接收放大電路如圖3所示[6]。

    被接收頭收到的回波信號(hào)為正弦波信號(hào),信號(hào)強(qiáng)度一般只有幾十毫伏。接收部分前置放大電路是由集成運(yùn)放NE5532組成的自舉式同向交流放大電路。前兩級(jí)放大電路構(gòu)成10 000倍的放大器,對(duì)正弦波信號(hào)進(jìn)行足夠放大。后級(jí)采用集成LM311-8比較器對(duì)前級(jí)放大信號(hào)進(jìn)行調(diào)理,通過(guò)IN-引腳引入一個(gè)標(biāo)準(zhǔn)電平,輸入包絡(luò)信號(hào)的電位高于標(biāo)準(zhǔn)電平則為1,低于標(biāo)準(zhǔn)電平則為0,將包絡(luò)信號(hào)轉(zhuǎn)變?yōu)閱纹瑱C(jī)可識(shí)別的中斷脈沖信號(hào)。當(dāng)與單片機(jī)的中斷輸入端相連的LM311的第7管腳輸出一個(gè)低電平時(shí),計(jì)數(shù)器立即停止計(jì)時(shí)并保存數(shù)據(jù)。
2.3 單片機(jī)控制和顯示電路
    本系統(tǒng)的主控模塊是AT89S52單片機(jī)。該控制器具有8 KB的RAM內(nèi)存空間,在線編程與調(diào)試比較方便。單片機(jī)控制單元主要包括復(fù)位電路、液晶顯示電路、發(fā)射控制端、回波接收端幾部分。由于測(cè)量距離需要直觀顯示,且系統(tǒng)安裝于戶外功耗要盡可能低、體積盡可能小,因此采用易于與CMOS電路相匹配的128×64點(diǎn)陣式液晶顯示模塊。接口電路如圖4。

3 軟件設(shè)計(jì)及流程
3.1 軟件整體流程

    系統(tǒng)軟件主要由主程序、初始化程序、發(fā)射子程序、中斷子程序、顯示子程序組成。軟件整體流程如圖5。

    系統(tǒng)上電后首先初始化,設(shè)置定時(shí)器、計(jì)數(shù)器工作方式,打開(kāi)總中斷,顯示端口清零等。為避免從發(fā)射頭發(fā)出的超聲波直接被接收頭作為回波接收,在調(diào)用定時(shí)器中斷子程序(發(fā)射方波)后設(shè)置0.2 ms的延時(shí),然后打開(kāi)外部中斷0接收回波[7]。系統(tǒng)采用晶振頻率為12 MHz,機(jī)器周期為1 μs,主程序檢測(cè)到回波接收成功后將計(jì)數(shù)器T0中的值T0按下式計(jì)算即可得測(cè)量距離(設(shè)20 ℃時(shí)聲速為340 m/s)[8]:
    s=(CT0)/2=170T0/100 000                      (2)
    最后將所得數(shù)值以二進(jìn)制數(shù)形式通過(guò)P0口直接傳入液晶顯示。
3.2 發(fā)射和中斷子程序
    超聲波發(fā)射子程序的作用是通過(guò)P1.2口在定時(shí)器的設(shè)定時(shí)刻取反交替產(chǎn)生寬度為12 μs的高低電平輸出方波脈沖。定時(shí)器中斷程序[9]流程如圖6。外部中斷程序流程如圖7。

4 誤差分析及系統(tǒng)精度提高
    在系統(tǒng)測(cè)試過(guò)程中發(fā)現(xiàn)對(duì)系統(tǒng)性能和測(cè)量精度影響較大的主要有測(cè)量盲區(qū)、回波時(shí)間的確定、控制器定時(shí)器偏差、溫度對(duì)速度的影響等幾方面。
4.1 測(cè)量盲區(qū)
    造成測(cè)量盲區(qū)存在主要有兩方面因素:超聲波發(fā)射頭在發(fā)射出一串方波信號(hào)后經(jīng)過(guò)一段延時(shí)才打開(kāi)外部中斷入口,防止方波信號(hào)直接進(jìn)入接收頭作為回波引起中斷,產(chǎn)生誤測(cè)量,延時(shí)對(duì)應(yīng)的距離即為盲區(qū);另一方面,在測(cè)量較近距離時(shí),回波信號(hào)會(huì)與發(fā)射余波重疊造成尋峰失敗,同樣產(chǎn)生測(cè)量盲區(qū)。
    對(duì)于第一種測(cè)量盲區(qū),經(jīng)試驗(yàn)證明,在可承受范圍內(nèi)減小脈沖寬度、減少脈沖發(fā)射個(gè)數(shù),從而間接減小了延時(shí)時(shí)間,擴(kuò)大測(cè)量范圍。但同時(shí)會(huì)由于脈沖個(gè)數(shù)的減少對(duì)測(cè)量上限造成影響。對(duì)第二種測(cè)量盲區(qū),主要做法是在回波接收電路中加入余振吸收電路,改變接收放大倍數(shù),適當(dāng)延時(shí),并利用部分未飽和余波等方式共同減小盲區(qū)[10]。
4.2 回波時(shí)間的確定
    發(fā)射的方波信號(hào)由于強(qiáng)度所限,在經(jīng)過(guò)傳播和反射后,回波信號(hào)強(qiáng)度有所衰減,出現(xiàn)包絡(luò)現(xiàn)象,但其頻率與發(fā)射波相同,沒(méi)有變化。單片機(jī)確定接收到回波的時(shí)刻實(shí)際是一個(gè)高低電平的變化時(shí)刻,與回波頻率無(wú)關(guān)。而包絡(luò)信號(hào)不是優(yōu)質(zhì)的電平信號(hào),直接輸入單片機(jī)會(huì)造成較大誤差。解決方案是接收電路中加入一個(gè)電平比較器,其輸出頻率也為40 kHz,輸出標(biāo)準(zhǔn)方波電平信號(hào)作為比對(duì),在接收電路的放大器輸入(接收到)高于0.4 V的電平信號(hào)時(shí),通過(guò)比較器的輸出電壓變?yōu)闃?biāo)準(zhǔn)的+5 V電平輸入單片機(jī),此時(shí)刻即為回波接收時(shí)刻[11]。
4.3 溫度補(bǔ)償
    在常溫常壓下聲速可以認(rèn)為是定值,但液位監(jiān)測(cè)的工作環(huán)境溫度變化較大。聲速與溫度的關(guān)系為[12-13]:
    v=311.5+0.607t                (3)
    溫度變化范圍為-20℃~+40℃,則聲速會(huì)產(chǎn)生36 m/s的巨大變化,必須設(shè)置溫度對(duì)聲速的補(bǔ)償。
    離線條件下計(jì)算出不同溫度下的聲速值并放存儲(chǔ)器存儲(chǔ),18B20測(cè)得現(xiàn)場(chǎng)溫度傳入單片機(jī)后,查找對(duì)應(yīng)溫度的聲速并以此作為校正值進(jìn)行距離的計(jì)算??諝庵新曀俦磉_(dá)式可寫為:


    由此可見(jiàn)經(jīng)過(guò)溫度補(bǔ)償后的精度達(dá)到厘米級(jí),可以較好地達(dá)到測(cè)量要求。測(cè)量溫度為11.2℃時(shí)的實(shí)驗(yàn)數(shù)據(jù)如表1。由表1可以看出測(cè)量上限為600 cm,下限為50 cm,有效測(cè)距范圍內(nèi)測(cè)量誤差小于±2 cm。


    通過(guò)大量實(shí)現(xiàn)數(shù)據(jù)表明,本系統(tǒng)測(cè)量誤差小于±2 cm,滿足設(shè)計(jì)要求,并且符合工業(yè)標(biāo)準(zhǔn)?;诔暡ㄊ芊蹓m、震動(dòng)及電磁波等惡劣工業(yè)因素影響極小的特點(diǎn),本系統(tǒng)還可廣泛用于工業(yè)測(cè)距、汽車行駛、金屬探傷等領(lǐng)域,具有較好的應(yīng)用前景。
參考文獻(xiàn)
[1] VOEGELIA F A, SMALEB M J, WEBBERC D M, et al. Ultrasonic Telemetry, Tracking and Automated Monitoring Technology for Sharks[J]. Environmental Biology of Fishes, 2001(60):267-281.
[2] HORN O, CAOURCELLF A. Interpretation of ultrasonic readings for autonomous robot localization. Journal of Intelligent and Robotic Systems: Theory and Applications[J]. 2004,39:265-285.
[3] 陳勇,劉金.超聲波測(cè)距儀電路及程序設(shè)計(jì)[J].電子測(cè)量技術(shù),1998(3):18-20.
[4] 凌陽(yáng)科技.超聲波測(cè)距模組V2.0使用說(shuō)明書[Z].2006.
[5] 鄭志聰.超聲波測(cè)距技術(shù)[J].福建農(nóng)機(jī),2008(2):28-29.
[6] 凌陽(yáng)科技.超聲波測(cè)距模組V1.0使用說(shuō)明書[Z].2005.
[7] 朱士虎,何培忠,王立?。贏T89S52超聲波測(cè)距儀設(shè)計(jì)[J].儀表技術(shù),2009(6):22-24.
[8] 周功明,周陳?。贏T89C52單片機(jī)的超聲波測(cè)距器設(shè)計(jì)[J].綿陽(yáng)師范學(xué)院學(xué)報(bào),2008,27(8):49-53.
[9] 王維斌.超聲波測(cè)距系統(tǒng)的設(shè)計(jì)[J].電子技術(shù),2009(3):18-20.
[10] 陳先中,張爭(zhēng).復(fù)雜工況下超聲波液位測(cè)量系統(tǒng)的設(shè)計(jì)[J].傳感器技術(shù),2005,24(11):41-43.
[11] 王啟宇.超聲波測(cè)距系統(tǒng)的研究[J].農(nóng)機(jī)使用與維修,2009(3):43-44.
[12] 雷建龍.便攜式液位測(cè)量?jī)x的研制[J].傳感技術(shù)學(xué)報(bào),2006,19(4):1117-1120.
[13] 黃邦彥,胡于進(jìn).制動(dòng)裝置的超聲波檢測(cè)方法研究[J].武漢船舶職業(yè)技術(shù)學(xué)院學(xué)報(bào),2002(2).

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。