高精度超聲波測量距離系統(tǒng)的設計與實現(xiàn)
數(shù)字式溫度傳感器和模擬溫度傳感器最大的區(qū)別是:將溫度信號直接轉化成數(shù)字信號,然后通過串行通信的方式輸出。因此掌握DS18B20的通信協(xié)議是使用該器件的關鍵。該協(xié)議定義了幾種信號類型:復位脈沖、應答脈沖時隙;寫“0”、讀“1”時隙,讀“0”、讀“1”時隙。初始化后,傳感器輸出兩個字節(jié)的溫度,進行數(shù)據(jù)處理后得到實際溫度的值,利用式(2)可計算補償聲速。
液晶顯示電路
字符點陣系列模塊是一類專門用于顯示字母、數(shù)字、符號等的點陣型顯示模塊。分4位和8位數(shù)據(jù)傳輸方式。它提供5×7點陣+光標和5×10點陣+光標的顯示模式。提供顯示數(shù)據(jù)緩沖區(qū)DDRAM、字符發(fā)生器CGROM和字符發(fā)生器CGRAM,可以使用CGRAM來存儲自己定義的最多8個5×8點陣的圖形字符的字模數(shù)據(jù)。它提供了豐富的指令設置:清顯示,光標回原點,顯示開/關,光標開/關,顯示字符閃爍,光標移位,顯示移位等。提供內(nèi)部上電自動復位電路,當外加電源電壓超過+4.5V時,自動對模塊進行初始化操作,將模塊設置為默認的顯示工作狀態(tài)。OCM2X16顯示兩行字符,每行可以顯示16個字符。本設計采用OCM2X16,顯示兩行字符,一行顯示當前的環(huán)境溫度,一行顯示所測距離。
系統(tǒng)軟件設計
系統(tǒng)軟件包括主程序、溫度采集子程序、定時器計時子程序、計算子程序、液晶顯示子程序等。主程序包括初始化和各個子程序的調用,最后把測量結果用液晶顯示屏顯示出來(見圖4)。
結論
本系統(tǒng)采用飛思卡爾單片機MC9S12DG128B做主控制器,可靠性好,抗干擾和電磁兼容性強,內(nèi)部資源較豐富,軟件的工作量大大降低,而且支持背景調試(BDM)方式,編程更加方便,靈活。
在本設計中,通過外部硬件電路來產(chǎn)生40kHz的超聲波信號,因而相對于由單片機產(chǎn)生的40kHz超聲波信號而言,更加接近超聲波傳感器的共振頻率,因而使超聲波傳感器的輸出最大,可以有效地提高測量距離,測量距離在0.3m~4m內(nèi)。
本設計采用數(shù)字式溫度傳感器實現(xiàn)對單片機超聲波測距系統(tǒng)的溫度測量和補償,對聲速進行補償,對引起測量誤差的因素進行修正處理,提高了系統(tǒng)的測量精度及靈敏度,使探測精度不超過1cm,從而達到了很好的效果。
評論