崔 靚, 王冠龍, 朱學軍
(寧夏大學 機械工程學院,寧夏 銀川 750021)
在工業(yè)生產(chǎn)和日常生活中,經(jīng)常會碰到一些需要非接觸測距的場合,超聲波測距作為一種便捷的無線測距手段,有效避免了測距人員與危險環(huán)境的接觸,較好地滿足了無線測距的要求,且超聲波在傳播時指向性強,能量易于集中且消耗較緩慢,也不受光線、電磁等其他因素的影響,因此廣泛應用于距離的測量。
超聲波是指振動頻率高于20 kHz的在彈性介質中傳播的機械波。超聲波測距原理為發(fā)射換能器向外發(fā)射超聲波同時開始計時,超聲波在空氣中傳播,遇到障礙物后反射,接收換能器收到超聲波馬上停止計時。假設s為發(fā)射源與目標障礙物之間的距離(m),t為發(fā)射與接收超聲波之間的時間差(s),v為超聲波在空氣中的傳播速度(m/s),則被測物體的距離〖2~4〗為
s=vt/2
(1)
系統(tǒng)主要由超聲波發(fā)射電路和接收電路、溫度補償電路、數(shù)碼管顯示電路和通信電路等組成〖5,6〗。采用STC12C5A60S2單片機作為核心處理元件,利用其P3.3引腳產(chǎn)生超聲波集成模塊工作所需的信號,外部中斷口接收返回信號以及內部定時器T0來計算超聲波發(fā)射與接收所用時間間隔,結合溫度補償后的超聲波速度,根據(jù)式(1)得到傳感器與障礙物之間的距離,最后通過4位共陽極數(shù)碼管顯示電路實時顯示,并通過串口通信傳送到上位機界面。該系統(tǒng)可提供 2~400 cm的非接觸式距離感測功能,測距精度可達高到毫米(mm)級。系統(tǒng)整體結構如圖1所示。
圖1 系統(tǒng)整體結構
超聲波發(fā)射電路通過發(fā)射探頭向目標障礙物發(fā)射40 kHz的脈沖信號,由單片機P3.3口通過定時器定時輸出,但功率不夠大,將其送入由74LS04組成的功率放大器以便使發(fā)射距離足夠遠。超聲波發(fā)射電路如圖2。
圖2 超聲波發(fā)射電路
超聲波接收電路是將探頭接收到的微弱信號放大、濾波和整形后輸出,最后計算超聲波在空氣中的傳播時間t。超聲波接收電路如圖3。
圖3 超聲波接收電路
為了得到更加精確的測量結果,系統(tǒng)采用了溫度補償?shù)姆椒?。文中采用高精度的DS18B20數(shù)字溫度傳感器模塊,該模塊自帶模/數(shù)轉換且電路簡單,可直接使用。通過 DS18B20 溫度傳感器測量環(huán)境溫度,再由單片機進行聲速修正和計算得出精確的距離。
本文采用4位共陽極數(shù)碼管顯示,數(shù)碼管具有功耗低、顯示操作簡單、體積小、性能可靠等優(yōu)點。
包括有線測距設備和無線測距設備。在有線通信中,應用的是以PL2303芯片為主的串口通信模塊;在無線系統(tǒng)中,采用數(shù)據(jù)傳送裝置(data transfer unit,DTU)無線通信模塊,實現(xiàn)下位機與上位機的通信。
1)PL2303通信模塊該模塊內含PL2303芯片,工作頻率為12 MHz,28腳貼片SOIC封裝,符合USB2.0通信協(xié)議,可以直接將USB信號轉換成串口信號,使用方便快捷。
2)DTU無線通信模塊
DTU將超聲波傳感器采集的數(shù)據(jù)通過通用分組無線業(yè)務(general packet radio service,GPRS)通信網(wǎng)絡發(fā)送到上位機進行顯示、保存、分析等操作。上位機一端安裝一個引入DTU的軟件,在軟件內部將 DTU用虛擬串口的方法,通過晶體管—晶體管邏輯(transisitor-transistor logic,TTL)電路轉RS—232的串口將單片機的數(shù)據(jù)發(fā)送給DTU,從而實現(xiàn)下位機與上位機之間的無線數(shù)據(jù)交換。
本文設計的單片機C語言開發(fā)采用模塊化形式,主要由系統(tǒng)主程序,超聲波測距子程序,溫度補償子程序,外部中斷子程序和數(shù)碼管顯示子程序構成。系統(tǒng)程序流程如圖4。
圖4 系統(tǒng)程序流程
1)超聲波測距子程序
單片機驅動P3.3引腳先發(fā)出驅動信號,檢測是否有回波信號產(chǎn)生,若檢測到有回波信號則驅動成功,單片機可處理其他的程序,若沒有檢測到回波信號,則程序停在此處等待回波信號,直至檢測到回波信號。
2)溫度補償子程序
如圖5所示,溫度補償子程序主要對溫度傳感器DS18B20進行初始化,進而采集溫度值并將數(shù)據(jù)送入單片機,對超聲波傳播速度進行修正,以得到更準確的距離值。
圖5 溫度補償子程序流程
3)外部中斷子程序
本文超聲波測距系統(tǒng)使用了定時器0中斷和定時器1中斷。檢測到有回波信號產(chǎn)生時,開定時器T0計數(shù),同時打開外部中斷0,當產(chǎn)生外部中斷0時,即單片機P3.2引腳變?yōu)榈碗娖?,停止計?shù),此時計數(shù)器的時間就是Echo引腳為低電平的時間,即實現(xiàn)了對時間的精確測量。
4)數(shù)碼管顯示子程序
本系統(tǒng)中的數(shù)碼管采用動態(tài)掃描的方式顯示,在顯示子程序之前,根據(jù)所用共陽極數(shù)碼管編寫好數(shù)字0~9的段碼以及數(shù)碼管的位選碼。
3.2.1 VISA配置
為了使單片機發(fā)出的數(shù)據(jù)能在LabVIEW中顯示,需要采用LabVIEW中VISA庫。采用了VISA標準,就可以不考慮時間及I/O選擇項,驅動軟件可以相互兼容使用,使用 LabVIEW中的 VISA 庫可以實現(xiàn)計算機的串口通信。
3.2.2 LabVIEW程序設計
本文系統(tǒng)利用LabVIEW軟件開發(fā)上位機的顯示監(jiān)測界面,在程序使用的過程中,首先進行串口配置,通過VISA函數(shù)讀取下位機向LabVIEW顯示監(jiān)測界面發(fā)送的數(shù)據(jù)。程序外部框架采用循環(huán)結構和事件結構,事件結構的引用是為了增加按鈕功能;最后優(yōu)化程序的前面板,使人機交互界面效果友好。同時在程序框圖中編寫數(shù)據(jù)記錄程序,能夠將下位機采集的數(shù)據(jù)寫入Excel表格,實現(xiàn)數(shù)據(jù)記錄的功能,方便以后對數(shù)據(jù)進行分析。另外系統(tǒng)設置了上極限距離和下極限距離,可以實現(xiàn)距離警告功能,若距離警告綠色燈亮,提醒注意;相反,則為距離安全,繼續(xù)采集數(shù)據(jù)。
在實驗中選擇墻壁為障礙物進行測試,為了驗證測距系統(tǒng)的精度,在實驗中,采用米尺對測量距離實際測量,以檢驗系統(tǒng)測得數(shù)據(jù)。測試數(shù)據(jù)包括溫度值和測量距離值,并且在Excel中記錄數(shù)據(jù)。
系統(tǒng)測試距離值,根據(jù)有溫度補償和無溫度補償兩種方式進行計算,其中溫度補償計算公式有三種,分別為式(2)、式(3),其中式(3)為式(2)速度的平均值,無溫度補償?shù)乃俣戎禐镃=340 m/s
(2)
(3)
式中C為空氣中聲波的傳播速度;t為空氣介質的溫度,℃;T0=273.16 ℃。
分別用這4種速度計算方式計算距離,共產(chǎn)生4組數(shù)據(jù),分別用Y1~Y4表示用各公式和無溫度補償速度計算出的距離,Y5為距離真實值,保證這4組數(shù)據(jù)是在基本相同的環(huán)境下測量所得,采集數(shù)據(jù)表如表1所示。
根據(jù)測試數(shù)據(jù)可知,該超聲波測距系統(tǒng)的盲區(qū)為到墻壁的最近距離為2 cm,最遠測量距離為400 cm。本超聲波測距系統(tǒng)在100 cm以內有較精確的測量結果,因此,選取2~100 cm 進行詳細分析,選取該范圍內的35組數(shù)據(jù),運用MATLAB軟件進行曲線擬合,曲線擬合結果如圖6所示。
表1 系統(tǒng)測距數(shù)據(jù)表
圖6 超聲波4種測距計算方式擬合曲線
可知,使用式(3)測量的數(shù)據(jù)曲線Y3與真實值曲線Y5最接近,則選取使用該溫度補償方式測得的2~40 cm共39組數(shù)據(jù)進行具體分析,擬合曲線如圖7所示。
圖7 平均值法距離值與真實距離值擬合曲線
可以看出,本文超聲波測距系統(tǒng)的測量距離值與真實距離值基本一致,尤其是在20 cm范圍內測量,測量準確性高,其數(shù)據(jù)誤差最小可達毫米(mm)級,最大為1 cm。本文系統(tǒng)實現(xiàn)了無接觸、快速、精準測量,具有控制簡單、實用性強等優(yōu)點。
綜合單片機整體系統(tǒng),誤差來源為:
1)從收到實際回波到電路確認并得出相應信號存在滯后,這是超聲波測距的核心問題。若靈敏度過高,一些干擾信號會被誤認為回波,導致測量出錯;如果過低,由于回波衰減是距離的平方,則會大大限制檢測距離。這部分誤差是導致數(shù)據(jù)不穩(wěn)定的主要來源〖10〗。
2)由于溫度會發(fā)生變化,則聲速會變化,計時的頻率和檢測電路的靈敏度也會變化,比較復雜,通常借助測溫來修正聲速變化,其中后兩項的影響因素可忽略〖11〗。
3)目前使用的計時器本身多數(shù)為晶體振蕩器,對于聲速而言,其帶來的誤差在毫米(mm)級。應該提高計時器的最小單位來減小此項誤差,從而降低量化誤差。
4)單片機一次只能處理一件事,因此啟動發(fā)射和啟動計時實際上是先后完成的,存在時差,但只要指令速度足夠快,其偏差可以忽略。
設計的超聲波測距系統(tǒng)體積小、成本低、易操作,具有精度高、抗干擾性強等優(yōu)點,可滿足自動控制系統(tǒng)中距離、物位和液位等大多數(shù)要求較高的測量環(huán)境中的測距要求。