關 閉

新聞中心

EEPW首頁 > 工控自動化 > 設計應用 > 基于CAN總線的汽車內部網絡系統(tǒng)研究

基于CAN總線的汽車內部網絡系統(tǒng)研究

作者: 時間:2005-11-23 來源:網絡 收藏

摘要:局域網中的具體應用,實現(xiàn)采用Motorola公司16位單片機MC9S12DP256為核心的節(jié)點設計。根據(jù)網絡速率的不同,給出不同速率網絡之間實現(xiàn)通信的網關軟硬件設計。該系統(tǒng)具有結構簡單、可靠性高等特點,具有廣闊的應用前景。

關鍵詞:汽車網絡 CAN MC9S12DP256

引 言

  隨著車用電氣設備越來越多,從發(fā)動機控制到傳動系統(tǒng)控制,從行駛、制動、轉向系統(tǒng)控制到安全保證系統(tǒng)及儀表報警系統(tǒng),從電源管理到為提高舒適性而作的各種努力,使汽車電氣系統(tǒng)形成一個復雜的大系統(tǒng),而且這一系統(tǒng)都集中在駕駛室控制。另外,隨著近年來ITS的發(fā)展,以3G(GPS、GIS和GSM)為代表的新型電子通信產品的出現(xiàn),對汽車的綜合布線和信息的共享交互提出了更高的要求。

  從布線角度分析,傳統(tǒng)的電氣系統(tǒng)大多采用點對點的單一通信方式,相互之間少有聯(lián)系,這樣必然需要龐大的布線系統(tǒng)。據(jù)統(tǒng)計,一輛采用傳統(tǒng)布線方法的高檔汽車中,其導線長度可達2 000 m,電氣節(jié)點達1 500個,而且根據(jù)統(tǒng)計,該數(shù)字大約每10年增長1倍,從而加劇了粗大的線束與汽車有限的可用空間之間的矛盾。無論從材料成本還是工作效率看,傳統(tǒng)布線方法都將不能適應汽車的發(fā)展。

  從信息共享角度分析,現(xiàn)代典型的控制單元有電控燃油噴射系統(tǒng)、電控傳動系統(tǒng)、防抱死制動系統(tǒng)(ABS)、防滑控制系統(tǒng)(ASR)、廢氣再循環(huán)控制、巡航系統(tǒng)和空調系統(tǒng)。為了滿足各子系統(tǒng)的實時性要求,有必要對汽車公共數(shù)據(jù)實行共享,如發(fā)動機轉速、車輪轉速、油門踏板位置等,但每個控制單元對實時性的要求是因數(shù)據(jù)的更新速率和控制周期不同而不同的。這就要求其數(shù)據(jù)交換網是優(yōu)先權競爭的模式,且本身具有較高的通信速率。CAN正是為滿足這些要求而設計的。

1 CAN簡介

  德國Bosch 公司為解決現(xiàn)代車輛中眾多的控制和數(shù)據(jù)交換問題,開發(fā)出一種CAN(Controller Area Network)現(xiàn)場總線通信結構。CAN總線硬件連接簡單,有良好的可靠性、實時性和性能價格比。CAN總線能夠滿足現(xiàn)代自動化通信的需要,已成為工業(yè)數(shù)據(jù)總線通信領域中最為活躍的一支。其主要特點
是:

 ?、?CAN總線為多主站總線,各節(jié)點均可在任意時刻主動向網絡上的其他節(jié)點發(fā)送信息,不分主
從,通信靈活;

 ?、?CAN總線采用獨特的非破壞性總線仲裁技術,優(yōu)先級高的節(jié)點優(yōu)先傳送數(shù)據(jù),能滿足實時性要求;

  ③ CAN總線具有點對點、一點對多點及全局廣播傳送數(shù)據(jù)的功能;

 ?、?CAN總線上每幀有效字節(jié)數(shù)最多為8個,并有CRC及其他校驗措施,數(shù)據(jù)出錯率極低,萬一某一節(jié)點出現(xiàn)嚴重錯誤,可自動脫離總線,總線上的其他操作不受影響;

 ?、?CAN總線只有兩根導線,系統(tǒng)擴充時,可直接將新節(jié)點掛在總線上即可,因此走線少,系統(tǒng)擴充容易,改型靈活;

  ⑥ CAN總線傳輸速度快,在傳輸距離小于40 m時,最大傳輸速率可達1 Mb/s;

 ?、?CAN總線上的節(jié)點數(shù)主要取決于總線驅動電路,在CAN2.0B標準中,其報文標識符幾乎不受限
制。

  總之,CAN總線具有實時性強、可靠性高、通信速率快、結構簡單、互操作性好、總線協(xié)議具有完善的錯誤處理機制、靈活性高和價格低廉等特點。

2 總體方案設計

  2.1 汽車CAN網絡設計

  正是由于CAN總線具有這些其他通信方式無法比擬的優(yōu)點,使之成為電動汽車控制系統(tǒng)的理想
總線。

  現(xiàn)代汽車典型的電控單元主要有主控制器、發(fā)動機控制系統(tǒng)、懸架控制系統(tǒng)、制動防抱死控制系統(tǒng)(ABS)、牽引力控制系統(tǒng)、ASR控制系統(tǒng)、儀表管理系統(tǒng)、故障診斷系統(tǒng)、中央門鎖系統(tǒng)、座椅調節(jié)系統(tǒng)、車燈控制系統(tǒng)等。所有這些子控制系統(tǒng)連接起來構成一個實時控制系統(tǒng)――指令發(fā)出去之后,必須保證在一定時間內得到響應,否則,就有可能發(fā)生重大事故。這就要求汽車上的CAN通信網絡有較高的波特率設置。另外,汽車在實際運行過程中,眾多節(jié)點之間需要進行大量的實時數(shù)據(jù)交換。若整個汽車的所有節(jié)點都掛在一個CAN網絡上,眾多節(jié)點通過一條CAN總線進行通信,信息管理配置稍有不當,就很容易出現(xiàn)總線負荷過大,導致系統(tǒng)實時響應速度下降的情況。這在實時系統(tǒng)中是不允許的,因此在對汽車上各節(jié)點的實時性進行了分析之后,根據(jù)各節(jié)點對實時性的要求,設計了高、中、低速三個速率不同的CAN通信網絡,將實時性要求嚴格的節(jié)點組成高速CAN通信網絡,將其他實時性要求相對較低的節(jié)點組成中速CAN通信網絡,將剩下實時性要求不是很嚴格的節(jié)點組成低速CAN通信網絡。并架設網關將這三個速率不同的三個通信網絡連接起來,實現(xiàn)全部節(jié)點之間的數(shù)據(jù)共享。整個汽車的CAN通信網絡拓撲結構如圖1所示。

        
                圖1 汽車CAN總線網0絡拓撲圖

  發(fā)動機控制系統(tǒng)、懸架控制系統(tǒng)、制動防抱死控制系統(tǒng)(ABS)、牽引力控制系統(tǒng)、ASR控制系統(tǒng)這五個節(jié)點是汽車運行的核心部件,對時間響應要求嚴格,因此將這五個節(jié)點組成高速CAN通信網絡,通信波特率設為500 bps。儀表管理系統(tǒng)、故障診斷系統(tǒng)等相對來說對實時性的要求較低,因此這些節(jié)點構成中速CAN通信網絡、通信波特率設為128 bps。中央門鎖系統(tǒng)、座椅調節(jié)系統(tǒng)、車燈控制系統(tǒng)對實時性要求不是很嚴格,它們構成低速通信網絡,通信波特率設為30 bps。兩個網關跨接高、中、低速三條總線,與各節(jié)點進行數(shù)據(jù)交換。網關通過對CAN總線間待傳數(shù)據(jù)信息的智能化處理,可以確保只有某類特定的信息才能夠在網絡間傳輸。

  2.2 器件選擇

  汽車內部CAN網絡主要由兩部分組成:面向底層ECU的CAN節(jié)點和實現(xiàn)高低速網絡數(shù)據(jù)共享及網絡管理的網關。為了減少開發(fā)周期,選擇Motorola公司一款帶CAN模塊的中檔微處理器MC9S12DP256;CAN收發(fā)器以及電源系統(tǒng)是用MC33989來實現(xiàn)的。

  微控制器MC9S12DP256是16位HCS12 CPU及0.25 μm微電子技術的高速、高性能5.0 V Flash存儲器產品中的中檔芯片。其較高的性能價格比使其非常適合用于一些中高檔汽車電子控制系統(tǒng);同時其較簡單的背景開發(fā)模式(BDM)也使開發(fā)成本進一步降低,使現(xiàn)場開發(fā)與系統(tǒng)升級變得更加方便。

  MC9S12DP256的主頻高達25 MHz;片上集成了許多標準模塊,包括2個異步串行通信口SCI、3個同步串行通信口SPI、8通道輸入捕捉/輸出比較定時器、2個10位8通道A/D轉換模塊、1個8通道脈寬調制模塊、49個獨立數(shù)字I/O口(其中20個具有外部中斷及喚醒功能)、兼容CAN2.0A/B協(xié)議的5個CAN模塊以及1個內部IC總線模塊;片內擁有256 KB的Flash EEPROM?12 KB的RAM、4 KB的EEPROM。這些豐富的內部資源和外部接口資源可以滿足各種ECU數(shù)據(jù)的處理以及發(fā)送和接收。由于有多個CAN模塊,所以非常適合做高低速網絡之間的網關。

  Motorola公司的系統(tǒng)級芯片(SBC)MC33989具有二個電源整流器,專為MCU和外圍器件提供電源。這個智能化的半導體器件可以提供所有必需的系統(tǒng)電壓,內部有一個低噪聲的200 mA整流器用來給MCU子系統(tǒng)供電。另外,還有一個控制外部導通晶體管的裝置用來給外圍設備供電。這個外部導通晶體管允許調整二次電源,使之滿足每種特殊應用所需的功耗極限要求。二次供電電源還能根據(jù)要求切斷所選外圍設備的供電,并以此達到降低功耗的目的。

  除了提供系統(tǒng)電源外,SBC內部還集成了一個1 Mb的CAN收發(fā)器。該收發(fā)器具有主控狀態(tài)超時檢測、內部熱保護以及CAN-H和CAN-L輸入端短路保護等功能。收發(fā)器內部還對CAN-H和CAN-L輸入端進行了跳啟、電池反接以及短接至電源或地的保護。

  4個高壓喚醒輸入端使器件具備了強大的喚醒功能。這些喚醒輸入端的最大耐壓能達40 V。輸入端的上拉源能在芯片上產生。由于只需用上拉源就能隨時檢測開關輸入的變化,因此能較好地降低功耗。該器件還具有周期性喚醒功能。另外,SBC還提供了針對MCU的復位調節(jié)與低壓檢測功能。

  2.3 CAN節(jié)點的硬件電路設計

  為了便于調試和演示,節(jié)點模塊都包括CAN接口、RS232接口和液晶顯示器。在調試過程中,液晶顯示器用來將本地數(shù)據(jù)和通過CAN總線接收的數(shù)據(jù)直觀地顯示出來,RS232接口在需要的情況下可用來與PC機建立通信。

  節(jié)點的核心芯片是微處理器MC9S12DP256,主要負責CAN的初始化,完成數(shù)據(jù)的處理及監(jiān)控數(shù)據(jù)的傳送。

  圖2中MC33989是CAN控制器與物理層總線之間的接口。該器件可以提供對總線的差分發(fā)送能力和差分接收能力,具有抗汽車環(huán)境下的瞬間干擾、保護總線的功能。除此之外,它還為MCU和外圍器件提供電源。CAN節(jié)點原理框圖如圖2所示。

    
                圖2 CAN節(jié)點原理框圖

  2.4 CAN網關的硬件電路設計

  網關的主要作用是協(xié)調各個網絡之間數(shù)據(jù)的共享,負責各節(jié)點之間的通信,其硬件結構與CAN節(jié)點非常相似。由于它負責高速與低速網絡之間的數(shù)據(jù)共享,所以,必須同時跨接在兩個網絡之間。CAN總線網關硬件框圖如圖3所示。
    
     
                 圖3 CAN總線網關硬件框圖

  微處理器MC9S12DP256具有5個CAN模塊,這里使用其中的兩個:一個通過MC33989與低速網相連,實現(xiàn)與低速網的通信;另一個通過MC33989與高速網相連,實現(xiàn)高、低速網之間的通信以及對網絡的管理。

  2.5 CAN網絡通信系統(tǒng)軟件設計

  本設計所需實現(xiàn)的功能是各節(jié)點發(fā)送接收數(shù)據(jù),網關能實現(xiàn)數(shù)據(jù)的轉換,實現(xiàn)高、低速網絡之間的通信。在實驗過程中,假設速率不同的兩個網絡,數(shù)據(jù)刷新周期分別為10 ms的低速網和5 ms的高速網。軟件設計由KEIL C編寫,主程序完成數(shù)據(jù)的處理和收發(fā),中斷程序負責數(shù)據(jù)的采集,主程序由CAN總線數(shù)據(jù)的收發(fā)、液晶顯示控制、數(shù)據(jù)幀解析三部分構成。通過中斷判斷數(shù)據(jù)的接收或發(fā)送,根據(jù)高、低速的不同,每隔一段時間(5 ms或10 ms)發(fā)送一組新數(shù)據(jù)。通信程序流程如圖4所示。

           
                圖4 通信程序流程結語

結語

  為了充分發(fā)揮ECU在汽車控制中的作用,CAN通信網絡為全局優(yōu)化提供了條件。通過實驗證明,CAN總線具有以下優(yōu)點:① 組網自由,擴展性強;② 自動錯誤界定,簡化了電控單元對通信的操作;③ 可根據(jù)數(shù)據(jù)內容確定優(yōu)先權,解決通信的實時性問題。

  此外,CAN網絡還被眾多工業(yè)控制系統(tǒng)采用,尤其是傳輸速率較高而且對實時性及可靠性要求高的場合,所以CAN總線將有廣闊的應用前景。

                 參考文獻

1 鄔寬明.CAN總線原理和應用系統(tǒng)設計. 北京:北京航空航天出版社,1996
2 陽憲惠. 現(xiàn)場總線技術及其應用. 北京:清華大學出版社,1999
3 MC9S12DP256 Advance Information. Revision 1.1. December 1, 2000
4 System Basis Chip with High Speed CAN. July 10, 2002

黃濤:博士,主要方向為汽車電子。周德恒:碩士生,主要研究方向為嵌入式系統(tǒng)及車載網絡應用。



評論


相關推薦

技術專區(qū)

關閉