基于CAN總線通信設計的的重型汽車內輪差預警系統(tǒng)
1 內輪差原理
內輪差是車輛轉彎時的前內輪的轉彎半徑與后內輪的轉彎半徑之差。由于內輪差的存在,車輛轉彎時,前、后車輪的運動軌跡不重合。內輪差的大小與轉動方向盤的幅度和車輛軸距的長短有關,方向盤轉動幅度越大即轉向角度越大,內輪差越大,反之越小;車輛的軸距越長,內輪差越大,反之則越小。重型汽車車身都比較長,尤其是車頭轉過去后,還有很長的車身沒有轉過來,極易形成大型車輛司機的“視覺盲區(qū)”,路人步入內輪范圍后,容易造成生命危險。如圖1中的陰影部分為內輪差的形成區(qū)域。
圖1 內輪差示意圖
2 超聲波預警原理
2.1超聲波測距原理
諧振頻率高于20KHZ的聲波被稱為超聲波。超聲波為直線傳播,頻率越高,則繞射能力越弱,反射能力越強。超聲波測距的方法多種多樣,如相位檢測法、聲波幅值檢測法和往返時間檢測法等。相位檢測法雖然精度高,但檢測范圍有限;聲波幅值檢測法易受反射波的影響。本文采用往返時間檢測法,其工作原理是:使超聲波發(fā)射探頭向介質發(fā)射超聲脈沖,聲波遇到被測物體后必有反射波作用于接收探頭。若已知介質中的聲速為V,發(fā)射脈沖時刻與第一個反射波到達時刻的時間差為 T,則探頭與被測物體距離S=VT/2,對距離值改變的測算可以實現(xiàn)所需的控制目的。超聲波的速度V與溫度相關,空氣中的聲速與溫度的關系可表示為:
?。?)
2.2 輪差檢測中超聲波傳感器的布置
汽車在行駛中即會向左側轉彎也會向右側轉彎,因此超聲波傳感器應該在車身的兩邊對稱安裝。本系統(tǒng)中一共需要安裝三對傳感器,一對安裝在前輪附近,為了提醒司機轉彎時車身后面是否會撞到轉彎內側的物體;第二對安裝在軸距中間附近,為了防止有物體在汽車轉彎時突然出現(xiàn)在轉彎內側;第三對安裝在后輪附件,為了及時提醒司機危險狀況。
3 系統(tǒng)硬件設計
本系統(tǒng)將單片機技術、超聲波測距技術與CAN總線通信技術等相結合,可檢測汽車在轉彎過程中汽車內側狀況。預警系統(tǒng)的三對測距傳感器獨立工作,通過CAN 總線經接口芯片PCA82C250驅動將數(shù)據(jù)傳輸?shù)街骺刂破?。測距采用SensComp 600傳感器和SensComp 6500超聲波距離模塊;單片機采用低成本的AT89C51主要功能為:1、用于控制測距傳感器并把測量數(shù)據(jù)實時通過CAN控制器SJA1000發(fā)送到 CAN總線上;2、通過溫度傳感器DS18B20傳送過來的溫度參數(shù),修正超聲波在空氣中的傳播速度;在PCA82C250與SJA1000之間還增加了高速線性光耦6N137進行隔離,有效地防止汽車在惡劣工作環(huán)境下的瞬態(tài)干擾,確保數(shù)據(jù)傳輸?shù)臏蚀_性。因為三對測距傳感器硬件系統(tǒng)完全相同,此次只用一個進行說明,系統(tǒng)硬件結構如圖2所示。
圖2 輪差預警系統(tǒng)硬件結構圖
3.1 CAN總線通信模塊
CAN總線協(xié)議遵循ISO的標準模型,分為數(shù)據(jù)鏈路層和物理層。這兩層通常由CAN控制器和收發(fā)器了實現(xiàn)的。CAN總線器件可大體分為兩種類型,其一種是帶片上CAN控制器,如87C196CA/CB、MC6837等;另一種的CAN控制器獨立需要和微處理器一起使用,如Philips SJA1000、Intel公司82526及MCP251。前者多用在許多特定情況下,使用集成器件方便用戶制作印制板,使得電路設計簡化、緊湊,效率提高;后者使用上比較靈活,它可以與多種類型的單片機、微型計算機的各類總線進行接口組合。在本系統(tǒng)中,結合前面選擇的微控制器綜合考慮,選Philips 半導體公司的SJAl000作為獨立CAN控制器。SJA1000的主要特性:擴展接收緩沖器(128字節(jié)FIFO);支持CAN 2.0B協(xié)議;同時支持11位和29位標識符;位通訊速率為1Mbits/s;增強CAN模式(PeliCAN);采用24MHz時鐘頻率;支持多種微處理器接口;可編程CAN輸出驅動配置;工作溫度范圍為-40℃~+125℃,足以適應各種惡劣環(huán)境。CAN總線驅動器選用Philips公司的 PCA820250,它具有高速性(最高速度可達1Mbps),能滿足自制動等實時性要求較高的控制需要;具有抗瞬間干擾保護總線的能力,具有降低射頻干擾的斜率控制。此外,它可以與110個節(jié)點相連,能夠防止電源與地之間發(fā)生短路,并且當某個節(jié)點掉電時不影響總線。
CAN總線通信模塊主要有AT89C5l微控制器、獨立CAN通信控制器SJAlO00和CAN總線驅動器PCA82C250組成。為了提高系統(tǒng)的抗干擾能力,設計在SJAl000和CAN總線驅動器PCA82C250之間增加了光電隔離器6N137。當微處理器AT89C51將測距結果數(shù)據(jù)通過P0口發(fā)送到CAN總線控制器SJAl000,由SJAl000將并行數(shù)據(jù)轉換為串行數(shù)據(jù)從端口TX0發(fā)出,經過光電隔離器6N137后到達CAN總線驅動器PCA82C250,最后將數(shù)據(jù)發(fā)送到CAN總線上。相反,來自CAN總線的數(shù)據(jù)也可以經過相應電路到達微處理器。這樣就可以實現(xiàn)超聲波測距傳感器與上位機的通信功能。
3.2 超聲波傳感器介紹
本系統(tǒng)采用單片機AT89C51來實現(xiàn)對SensComp 600系列超聲波傳感器和SensComp 6500超聲波測距模塊的控制。SensComp 600系列靜電換能器的頻率為50kHz;測量范圍為6英寸到35英尺(0.15米~10.7米)。配合SensComp的6500驅動電路時傳感器測量范圍能從2.5厘米到15.2米。AT89C51通過P1.0引腳控制超聲波的發(fā)送,然后單片機不停的檢測INT0引腳,當INT0引腳的電平由低電平變?yōu)楦唠娖綍r就認為超聲波已經返回。計數(shù)器所計的數(shù)據(jù)就是超聲波所經歷的時間,通過換算就可以得到傳感器與障礙物之間的距離,如圖3所示為超聲波測距的硬件示意圖。
評論