基于CAN總線通信設(shè)計的的重型汽車內(nèi)輪差預(yù)警系統(tǒng)
圖3 超聲波測距電路的硬件示意圖
3.3 溫度補償設(shè)計
由于溫度每改變10℃,聲速改變量為0.6m/s,因此溫度對測距的影響是相當(dāng)大的。為了更精確的實現(xiàn)檢測功能,本設(shè)計使用了美國DALLAS半導(dǎo)體公司的單線溫度傳感器DS18B20。該傳感器能夠直接讀出被測溫度并且可根據(jù)實際要求通過簡單的編程實現(xiàn)9~12位的數(shù)字值讀數(shù)方式,測溫范圍 -55℃~+125℃,精度達±0.5℃,現(xiàn)場溫度直接以“一線總線”的數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性,整個產(chǎn)品體積小、價格低、使用靈活,在測溫精度、轉(zhuǎn)換時間、傳輸距離、分辨率等方面都能夠滿足系統(tǒng)的要求。如圖4為溫度傳感器與單片機的連接原理圖。
圖4 溫度校正部分原理圖
4 系統(tǒng)軟件設(shè)計
軟件采用模塊化設(shè)計,程序由主程序、測距子程序、CAN總線通信子程序等模塊組成。調(diào)試過程中對其中每個功能模塊和子程序逐一調(diào)試,在每個子程序都完成其指定的功能后,再進行整合完成最后的綜合調(diào)試。輪差預(yù)警系統(tǒng)的主程序流程圖、測距子程序流程圖分別如圖5、6所示。汽車轉(zhuǎn)彎時啟動預(yù)警系統(tǒng),AT89C51先把P1.0置0,啟動超聲波傳感器發(fā)射超聲波,同時啟動內(nèi)部定時器T0開始計時。我們采用的超聲波傳感器是收發(fā)一體的,在發(fā)送完16 個脈沖后超聲波傳感器還有余震,為了從返回信號識別消除超聲波傳感器的發(fā)送信號,要檢測返回信號必須在啟動發(fā)射信號后2.38ms才可以檢測。當(dāng)超聲波信號碰到障礙物時信號立刻返回,微處理器不停的掃描INT0引腳,如果INT0接收的信號由低電平變?yōu)楦唠娖剑藭r表明信號已經(jīng)返回,微處理器進入中斷關(guān)閉定時器。再把定時器中的數(shù)據(jù)結(jié)合溫度傳感器送來的現(xiàn)場溫度經(jīng)過校正換算,可以得出超聲波傳感器與障礙物之間的真實距離;然后顯示測距結(jié)果,若測距結(jié)果低于設(shè)定閥值則產(chǎn)生報警信號;最后把得到的距離數(shù)據(jù)實時的通過CAN總線網(wǎng)絡(luò)向汽車主控制器發(fā)送,這樣就可以實現(xiàn)預(yù)警系統(tǒng)與CAN網(wǎng)絡(luò)其他節(jié)點和上位機的通信和網(wǎng)絡(luò)控制功能。
5 結(jié)論
本文提出了一種應(yīng)用于重型汽車的輪差預(yù)警系統(tǒng),基于超聲脈沖測距原理進行測距,根據(jù)現(xiàn)場溫度對數(shù)據(jù)進行校正,并通過CAN總線將輪差預(yù)警系統(tǒng)與汽車的數(shù)字化平臺接軌,降低了環(huán)境因素的影響,提高了系統(tǒng)的檢測精度。根據(jù)障礙物到車體的距離遠近進行實時顯示,當(dāng)該計算距離小于安全距離時,可以進行預(yù)警,提醒司機采取必要措施以避免發(fā)生碰撞事故。本系統(tǒng)結(jié)構(gòu)簡單、可靠性高,可以經(jīng)濟、有效地降低大型汽車輪差事故發(fā)生率,具有很好的應(yīng)用前景。
參考文獻
[1] 黃世霖等. 汽車碰撞與安全[M]. 北京: 清華大學(xué)出版社, 2000.
[2] 何希才.傳感器及其應(yīng)用電路[M] . 電子工業(yè)出版社, 2001.
[3] 鄔寬明. CAN總線原理和應(yīng)用系統(tǒng)設(shè)計[M]. 北京: 北京航空航天大學(xué)出版社, 1996.
[4] 陽憲惠. 現(xiàn)場總線技術(shù)及應(yīng)用[M]. 北京: 清華大學(xué)出版社, 1999.
[5] 王紹銧, 夏群生, 李建秋等. 汽車電子學(xué)[M]. 北京: 清華大學(xué)出版社, 2005.
[6] 黃世霖, 張金換, 王曉冬等. 汽車碰撞與安全[M]. 北京: 清華大學(xué)出版社, 2000.
評論