非接觸式的距離測(cè)量在工業(yè)中有廣泛的應(yīng)用機(jī)器人視覺系統(tǒng)中對(duì)距離的測(cè)量,汽車倒車?yán)走_(dá)系統(tǒng)及液位、物位的檢測(cè)系統(tǒng)等。有鑒于此,設(shè)計(jì)了基于超聲波傳感器的測(cè)距控制系統(tǒng),以實(shí)現(xiàn)距離的測(cè)量和顯示,并能輸出控制信號(hào)及實(shí)現(xiàn)和上位機(jī)的通信。與以往類似系統(tǒng)不同的是:本設(shè)計(jì)采用了一種直流電機(jī)PWM調(diào)速芯片作為超聲波發(fā)射驅(qū)動(dòng)電路。
其優(yōu)點(diǎn)是:電路簡(jiǎn)單,易于控制,而且對(duì)于不同電壓峰值要求的超聲波傳感器,可以改變其供電電壓值。
顯示部分采用一種串行通訊芯片驅(qū)動(dòng)數(shù)碼管,以節(jié)約單片機(jī)IO口的使用數(shù)量和提高數(shù)碼量,因此,系統(tǒng)應(yīng)用靈活,實(shí)用性強(qiáng),其模塊化設(shè)計(jì)可嵌入到不同的系統(tǒng)中。
1 超聲波測(cè)距傳感器
超聲波傳感器是一種換能器,它把電能或機(jī)械能轉(zhuǎn)換成聲能。本設(shè)計(jì)采用壓電式超聲波換能器,它是利用壓電晶體的諧振來工作的。該傳感器有2個(gè)壓電晶片和1個(gè)共振板,當(dāng)其兩極外加脈沖信號(hào),且頻率等于壓電晶片的固有振蕩頻率時(shí),壓電晶片將會(huì)發(fā)生共振,并帶動(dòng)共振板振動(dòng)產(chǎn)生超聲波。如果兩極問不加電壓,當(dāng)共振板接收到超聲波時(shí),聲波將迫使壓電晶片振動(dòng),使機(jī)械能轉(zhuǎn)換為電信號(hào),這時(shí)它就成為超聲波接收器。
每個(gè)傳感器的中心頻率都存在一定的誤差,在40 kHz左右波動(dòng)。而且超聲波傳感器發(fā)射波束時(shí)存在發(fā)散角問題,一般發(fā)散角都比較大,從而導(dǎo)致了方向性較差。同時(shí),隨著傳播距離的增大,在不同的發(fā)散角上信號(hào)衰減的程度也有變化。它在空氣中的發(fā)散角及耗散性如圖1所示。
圖1 發(fā)散角與耗散性
采用反射式超聲波測(cè)距的原理是:當(dāng)單片機(jī)控制超聲波傳感器向某一方向發(fā)射波束的同時(shí),單片機(jī)內(nèi)部開始計(jì)時(shí)。在傳播過程中,超聲波遇障礙物后反射回波。傳感器接收到第一個(gè)反射波后,停止計(jì)時(shí)。由于超聲波在空氣中的傳播速度是340 m/s,根據(jù)計(jì)時(shí)時(shí)間及公式S=340 t/2,即可得到發(fā)射點(diǎn)距障礙物的距離S.
2 系統(tǒng)總體方案設(shè)計(jì)
超聲波測(cè)距系統(tǒng)包括4個(gè)部分,即①發(fā)射電路中振蕩器驅(qū)動(dòng)控制電路;②接收電路中模擬放大、濾波、信號(hào)調(diào)制電路;③數(shù)碼管顯示電路;④單片機(jī)系統(tǒng)及其串口輸出、控制信號(hào)輸出、按鍵輸入部分。其方框圖如圖2所示。
圖2 系統(tǒng)原理框圖
3.1 超聲波發(fā)射單元
超聲波發(fā)射單元包括振蕩電路和驅(qū)動(dòng)電路。振蕩電路是由反相器CD4069組成的非對(duì)稱式多諧振蕩器,它產(chǎn)生40 kHz的方波脈沖電路如圖3所示。
圖3 振蕩電路
電路中G2輸出的電壓由于 ,的調(diào)節(jié),可以改變輸入到G1輸入端的相位。當(dāng)相位達(dá)到同相時(shí),G1和G2實(shí)現(xiàn)正反饋,G1和G2就成了穩(wěn)定的振蕩器。振蕩周期公式為T=2.2×Rf×C.因?yàn)镃D4069為CMOS結(jié)構(gòu),所以邏輯門前的電阻RP為G1的保護(hù)電阻。當(dāng)RP足夠大時(shí),G1的輸入電流可忽略不計(jì)。
由于超聲波換能器中心頻率都有偏差,所以Pf采用電位計(jì),可以調(diào)節(jié)到最佳諧振點(diǎn),這也是不用單片機(jī)產(chǎn)生方波的原因。電路中Z1,Z2同時(shí)得到相位相反的2路控制脈沖,提供給驅(qū)動(dòng)電路。
驅(qū)動(dòng)控制電路如圖4所示。它采用了L293型直流電機(jī)PWM調(diào)速芯片,它內(nèi)部的H橋電路可以產(chǎn)生相位相反的兩路脈沖。驅(qū)動(dòng)電路的直流電源電壓可以改變,以適應(yīng)不同傳感器對(duì)電壓的要求。振蕩電路中產(chǎn)生方波的Z1、Z2端,分別接到驅(qū)動(dòng)電路1N1,IN2端??刂戚敵鲭娐分蠩N端為輸出使能端,它接到單片機(jī)的P1.7端口,該端口精確輸出高電平時(shí)問來控制發(fā)射方波的個(gè)數(shù)。這在設(shè)計(jì)上使得控制和方波產(chǎn)生相對(duì)獨(dú)立,從而使得電路簡(jiǎn)單、控制精確、易于調(diào)試。
圖4 驅(qū)動(dòng)電路。
3.2 超聲波接收單元
超聲波接收單元中包括:模擬放大、濾波電路、電平轉(zhuǎn)換電路,如圖5所示。模擬放大器選用高精度儀用放大器LM318作為信號(hào)放大與濾波之用,它的單位增益帶寬為15 MHz,超出音頻范圍能夠滿足40 kHz的要求。在放大電路的負(fù)反饋回路中接入電容C1構(gòu)成低通濾波器。電容的選擇可由公式。f=1/2πRfC求出,式中f0為采用的超聲波頻率,Rf為第一級(jí)的反饋電阻。因?yàn)槎嘀C振蕩器中有高頻分量噪聲,所以通過低通濾波器將高頻噪聲濾掉。經(jīng)過2極放大后,通過電容耦合,信號(hào)與參考電壓比較產(chǎn)生高低電平,提供給單片機(jī)產(chǎn)生中斷。參考電壓設(shè)定為1 V左右,以提高靈敏度。第2個(gè)比較器僅起反相作用 .
圖5 接收電路
3.3 數(shù)碼管顯示電路
數(shù)據(jù)顯示采用串行接口LED顯示驅(qū)動(dòng)管理芯片MC14489,它的輸入端與系統(tǒng)CPU之間只有3條I/0口線相連。這3個(gè)端口是:使能端ENBLE、時(shí)鐘端CLOCK、數(shù)據(jù)端DATA IN,通過這3個(gè)端口寫控制字和數(shù)據(jù)。更新顯示寄存器的內(nèi)容,需要傳送3個(gè)字節(jié)的信息,更新配置寄存器的內(nèi)容僅需要傳送一個(gè)字節(jié)的信息。這種芯片可以顯示5位數(shù)碼管數(shù)據(jù),本系統(tǒng)只用到了4位。驅(qū)動(dòng)電壓為5 V,亮度調(diào)節(jié)通過 端口與地之間連接的電阻來調(diào)節(jié),電阻增大亮度減小。顯示電路如圖6所示。
圖6 顯示電路
3.4 單片機(jī)系統(tǒng)
發(fā)射的超聲波被調(diào)制成包含40 kHz方波的具有一定時(shí)間間隔的矩形波脈沖信號(hào),其發(fā)射、接收脈沖工作時(shí)序圖如圖7所示。由單片機(jī)AT89C2051的P1.7口控制H橋電路的使能端EN,送出40 kHz的超聲波脈沖信號(hào),其脈沖寬度及脈沖間隔均由軟件控制。脈沖寬度約為125~200us,即在一個(gè)調(diào)制脈沖內(nèi)包含5~8個(gè)40 kHz的方波。脈沖發(fā)送間隔取決于要求測(cè)量的最大距離。若在有效測(cè)距范圍內(nèi)有被測(cè)物體,則在后一次超聲波束發(fā)出之前應(yīng)當(dāng)接收到前一次發(fā)射的反射波,否則認(rèn)為前方無被測(cè)物體。因此,按有效測(cè)距范圍可以估算出最短的脈沖間隔發(fā)送時(shí)間。例如:最大測(cè)距范圍為10m時(shí),脈沖間隔時(shí)間t:2s/v=2×10/340≈60ms,實(shí)際應(yīng)取t≥60 ms.本系統(tǒng)為方便起見,選擇脈沖間隔定時(shí)器為65 ms.
圖7 發(fā)射和接收脈沖時(shí)序圖
3.5 串口輸出
MC14489可以通過和單片機(jī)串口進(jìn)行通信,當(dāng)顯示面板離主控制板較遠(yuǎn)時(shí),數(shù)據(jù)信號(hào)將會(huì)衰減,所以可通過串口來傳輸數(shù)據(jù)。
3.6 按鍵輸入
本系統(tǒng)可以設(shè)定距離值,當(dāng)大于或小于設(shè)定值時(shí)將發(fā)出控制信號(hào)。P1.5、P1.6輸出高低電平,從而可以控制繼電器等外部設(shè)備。由3個(gè)按鍵設(shè)定距離值:S0的作用是進(jìn)入和退出設(shè)定,S1和S2分別是向上加值和向下減值,每按一次加或減一厘米,由數(shù)碼管輸出顯示。
4 系統(tǒng)軟件設(shè)計(jì)
該系統(tǒng)軟件采用8051匯編語言編寫,主程序流程圖如圖8所示。AT89C2051單片機(jī)有2個(gè)外中斷口,分別用于接收回波中斷和按鍵輸人中斷,對(duì)應(yīng)2個(gè)外中斷子程序。此外,還用到了內(nèi)部中斷定時(shí)器, 它用于控制發(fā)送載波脈沖,如圖9所示。 定時(shí)器65 ms產(chǎn)生中斷一次,主要是發(fā)送載波脈沖和計(jì)數(shù)器清零。外中斷0將在有下降沿觸發(fā)時(shí)產(chǎn)生中斷,用于讀取定時(shí)器產(chǎn)生的計(jì)時(shí)值和使標(biāo)志位置位。外中斷1是按鍵輸人中斷,用于提供比較值來輸出控制信號(hào)。S0第一次觸發(fā)為中斷產(chǎn)生信號(hào),再次觸發(fā)則為輸入確定信號(hào)。S1和S2按鍵是輸入值增加和減少按鍵,它們通過判斷對(duì)應(yīng)的10口狀態(tài)來確定是否輸入。
圖8 主程序流程圖
圖9 各中斷子程序流程圖
5 測(cè)試結(jié)果與分析
超聲波測(cè)距系統(tǒng)調(diào)試完成后,對(duì)系統(tǒng)進(jìn)行了測(cè)試。在超聲波換能器與較大平面(如墻壁面)法線方向一致時(shí),量程為0.04-10 m,測(cè)距盲區(qū)為4Cm,分辨率為0.01 m,最大測(cè)量誤差≤0.02 m.因?yàn)槌暡ň哂幸欢òl(fā)散角,所以當(dāng)在正前方和斜前方都有物體時(shí),會(huì)以距發(fā)射器最近的物體作為探測(cè)目標(biāo)。
誤差分析:限制該系統(tǒng)最大可測(cè)距離的因素包括:超聲波的幅度、反射面的質(zhì)地、反射和入射聲波之間的夾角以及接收換能器的靈敏度。接收換能器對(duì)聲波脈沖的直接接收能力將決定最小的可測(cè)距離。測(cè)距誤差主要于以下幾個(gè)方面:①超聲波波束對(duì)探測(cè)目標(biāo)的入射角的影響;②超聲波回波聲強(qiáng)與待測(cè)距離的遠(yuǎn)近有直接關(guān)系;③超聲波傳播速度對(duì)測(cè)距是有影響的。穩(wěn)定準(zhǔn)確的超聲波傳播速度是保證測(cè)量精度的必要條件,傳播媒質(zhì)的特性,如溫度、壓力、密度對(duì)聲速都將產(chǎn)生影響。因此,為了準(zhǔn)確地計(jì)算距離,應(yīng)對(duì)聲速加以修正,系統(tǒng)程序中采用了軟件補(bǔ)償措施。
6 結(jié)束語
介紹了一種超聲波測(cè)距系統(tǒng),采用單片機(jī)及專門設(shè)計(jì)的驅(qū)動(dòng)和接收電路,通過超聲波換能器,可以測(cè)量和顯示0.04-10 m內(nèi)的物體距離,分辨率可達(dá)到O.O1 m.這種測(cè)距系統(tǒng)可用于物面和液面測(cè)量,汽車倒車報(bào)警裝置。硬件采用模塊化設(shè)計(jì),可以嵌入到其他系統(tǒng)中。
-
傳感器
+關(guān)注
關(guān)注
2550文章
51035瀏覽量
753068 -
檢測(cè)系統(tǒng)
+關(guān)注
關(guān)注
3文章
954瀏覽量
43029 -
超聲波
+關(guān)注
關(guān)注
63文章
3014瀏覽量
138348
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論