基于CAN總線的汽車內(nèi)部網(wǎng)絡(luò)系統(tǒng)研究
摘要:研究汽車局域網(wǎng)CAN總線在汽車中的具體應(yīng)用,實(shí)現(xiàn)采用Motorola公司16位單片機(jī)MC9S12DP256為核心的CAN節(jié)點(diǎn)設(shè)計(jì)。根據(jù)汽車內(nèi)部CAN網(wǎng)絡(luò)速率的不同,給出不同速率網(wǎng)絡(luò)之間實(shí)現(xiàn)通信的網(wǎng)關(guān)軟硬件設(shè)計(jì)。該系統(tǒng)具有結(jié)構(gòu)簡(jiǎn)單、可靠性高等特點(diǎn),具有廣闊的應(yīng)用前景。
關(guān)鍵詞:汽車內(nèi)部網(wǎng)絡(luò) CAN總線 MC9S12DP256
引 言
隨著車用電氣設(shè)備越來(lái)越多,從發(fā)動(dòng)機(jī)控制到傳動(dòng)系統(tǒng)控制,從行駛、制動(dòng)、轉(zhuǎn)向系統(tǒng)控制到安全保證系統(tǒng)及儀表報(bào)警系統(tǒng),從電源管理到為提高舒適性而作的各種努力,使汽車電氣系統(tǒng)形成一個(gè)復(fù)雜的大系統(tǒng),而且這一系統(tǒng)都集中在駕駛室控制。另外,隨著近年來(lái)ITS的發(fā)展,以3G(GPS、GIS和GSM)為代表的新型電子通信產(chǎn)品的出現(xiàn),對(duì)汽車的綜合布線和信息的共享交互提出了更高的要求。
從布線角度分析,傳統(tǒng)的電氣系統(tǒng)大多采用點(diǎn)對(duì)點(diǎn)的單一通信方式,相互之間少有聯(lián)系,這樣必然需要龐大的布線系統(tǒng)。據(jù)統(tǒng)計(jì),一輛采用傳統(tǒng)布線方法的高檔汽車中,其導(dǎo)線長(zhǎng)度可達(dá)2 000 m,電氣節(jié)點(diǎn)達(dá)1 500個(gè),而且根據(jù)統(tǒng)計(jì),該數(shù)字大約每10年增長(zhǎng)1倍,從而加劇了粗大的線束與汽車有限的可用空間之間的矛盾。無(wú)論從材料成本還是工作效率看,傳統(tǒng)布線方法都將不能適應(yīng)汽車的發(fā)展。
從信息共享角度分析,現(xiàn)代典型的控制單元有電控燃油噴射系統(tǒng)、電控傳動(dòng)系統(tǒng)、防抱死制動(dòng)系統(tǒng)(ABS)、防滑控制系統(tǒng)(ASR)、廢氣再循環(huán)控制、巡航系統(tǒng)和空調(diào)系統(tǒng)。為了滿足各子系統(tǒng)的實(shí)時(shí)性要求,有必要對(duì)汽車公共數(shù)據(jù)實(shí)行共享,如發(fā)動(dòng)機(jī)轉(zhuǎn)速、車輪轉(zhuǎn)速、油門踏板位置等,但每個(gè)控制單元對(duì)實(shí)時(shí)性的要求是因數(shù)據(jù)的更新速率和控制周期不同而不同的。這就要求其數(shù)據(jù)交換網(wǎng)是基于優(yōu)先權(quán)競(jìng)爭(zhēng)的模式,且本身具有較高的通信速率。CAN總線正是為滿足這些要求而設(shè)計(jì)的。
1 CAN簡(jiǎn)介
德國(guó)Bosch 公司為解決現(xiàn)代車輛中眾多的控制和數(shù)據(jù)交換問(wèn)題,開發(fā)出一種CAN(Controller Area Network)現(xiàn)場(chǎng)總線通信結(jié)構(gòu)。CAN總線硬件連接簡(jiǎn)單,有良好的可靠性、實(shí)時(shí)性和性能價(jià)格比。CAN總線能夠滿足現(xiàn)代自動(dòng)化通信的需要,已成為工業(yè)數(shù)據(jù)總線通信領(lǐng)域中最為活躍的一支。其主要特點(diǎn)
是:
?、?CAN總線為多主站總線,各節(jié)點(diǎn)均可在任意時(shí)刻主動(dòng)向網(wǎng)絡(luò)上的其他節(jié)點(diǎn)發(fā)送信息,不分主
從,通信靈活;
② CAN總線采用獨(dú)特的非破壞性總線仲裁技術(shù),優(yōu)先級(jí)高的節(jié)點(diǎn)優(yōu)先傳送數(shù)據(jù),能滿足實(shí)時(shí)性要求;
?、?CAN總線具有點(diǎn)對(duì)點(diǎn)、一點(diǎn)對(duì)多點(diǎn)及全局廣播傳送數(shù)據(jù)的功能;
④ CAN總線上每幀有效字節(jié)數(shù)最多為8個(gè),并有CRC及其他校驗(yàn)措施,數(shù)據(jù)出錯(cuò)率極低,萬(wàn)一某一節(jié)點(diǎn)出現(xiàn)嚴(yán)重錯(cuò)誤,可自動(dòng)脫離總線,總線上的其他操作不受影響;
⑤ CAN總線只有兩根導(dǎo)線,系統(tǒng)擴(kuò)充時(shí),可直接將新節(jié)點(diǎn)掛在總線上即可,因此走線少,系統(tǒng)擴(kuò)充容易,改型靈活;
⑥ CAN總線傳輸速度快,在傳輸距離小于40 m時(shí),最大傳輸速率可達(dá)1 Mb/s;
?、?CAN總線上的節(jié)點(diǎn)數(shù)主要取決于總線驅(qū)動(dòng)電路,在CAN2.0B標(biāo)準(zhǔn)中,其報(bào)文標(biāo)識(shí)符幾乎不受限
制。
總之,CAN總線具有實(shí)時(shí)性強(qiáng)、可靠性高、通信速率快、結(jié)構(gòu)簡(jiǎn)單、互操作性好、總線協(xié)議具有完善的錯(cuò)誤處理機(jī)制、靈活性高和價(jià)格低廉等特點(diǎn)。
2 總體方案設(shè)計(jì)
2.1 汽車內(nèi)部CAN網(wǎng)絡(luò)設(shè)計(jì)
正是由于CAN總線具有這些其他通信方式無(wú)法比擬的優(yōu)點(diǎn),使之成為電動(dòng)汽車控制系統(tǒng)的理想
總線。
現(xiàn)代汽車典型的電控單元主要有主控制器、發(fā)動(dòng)機(jī)控制系統(tǒng)、懸架控制系統(tǒng)、制動(dòng)防抱死控制系統(tǒng)(ABS)、牽引力控制系統(tǒng)、ASR控制系統(tǒng)、儀表管理系統(tǒng)、故障診斷系統(tǒng)、中央門鎖系統(tǒng)、座椅調(diào)節(jié)系統(tǒng)、車燈控制系統(tǒng)等。所有這些子控制系統(tǒng)連接起來(lái)構(gòu)成一個(gè)實(shí)時(shí)控制系統(tǒng)――指令發(fā)出去之后,必須保證在一定時(shí)間內(nèi)得到響應(yīng),否則,就有可能發(fā)生重大事故。這就要求汽車上的CAN通信網(wǎng)絡(luò)有較高的波特率設(shè)置。另外,汽車在實(shí)際運(yùn)行過(guò)程中,眾多節(jié)點(diǎn)之間需要進(jìn)行大量的實(shí)時(shí)數(shù)據(jù)交換。若整個(gè)汽車的所有節(jié)點(diǎn)都掛在一個(gè)CAN網(wǎng)絡(luò)上,眾多節(jié)點(diǎn)通過(guò)一條CAN總線進(jìn)行通信,信息管理配置稍有不當(dāng),就很容易出現(xiàn)總線負(fù)荷過(guò)大,導(dǎo)致系統(tǒng)實(shí)時(shí)響應(yīng)速度下降的情況。這在實(shí)時(shí)系統(tǒng)中是不允許的,因此在對(duì)汽車上各節(jié)點(diǎn)的實(shí)時(shí)性進(jìn)行了分析之后,根據(jù)各節(jié)點(diǎn)對(duì)實(shí)時(shí)性的要求,設(shè)計(jì)了高、中、低速三個(gè)速率不同的CAN通信網(wǎng)絡(luò),將實(shí)時(shí)性要求嚴(yán)格的節(jié)點(diǎn)組成高速CAN通信網(wǎng)絡(luò),將其他實(shí)時(shí)性要求相對(duì)較低的節(jié)點(diǎn)組成中速CAN通信網(wǎng)絡(luò),將剩下實(shí)時(shí)性要求不是很嚴(yán)格的節(jié)點(diǎn)組成低速CAN通信網(wǎng)絡(luò)。并架設(shè)網(wǎng)關(guān)將這三個(gè)速率不同的三個(gè)通信網(wǎng)絡(luò)連接起來(lái),實(shí)現(xiàn)全部節(jié)點(diǎn)之間的數(shù)據(jù)共享。整個(gè)汽車的CAN通信網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)如圖1所示。
圖1 汽車CAN總線網(wǎng)0絡(luò)拓?fù)鋱D
發(fā)動(dòng)機(jī)控制系統(tǒng)、懸架控制系統(tǒng)、制動(dòng)防抱死控制系統(tǒng)(ABS)、牽引力控制系統(tǒng)、ASR控制系統(tǒng)這五個(gè)節(jié)點(diǎn)是汽車運(yùn)行的核心部件,對(duì)時(shí)間響應(yīng)要求嚴(yán)格,因此將這五個(gè)節(jié)點(diǎn)組成高速CAN通信網(wǎng)絡(luò),通信波特率設(shè)為500 bps。儀表管理系統(tǒng)、故障診斷系統(tǒng)等相對(duì)來(lái)說(shuō)對(duì)實(shí)時(shí)性的要求較低,因此這些節(jié)點(diǎn)構(gòu)成中速CAN通信網(wǎng)絡(luò)、通信波特率設(shè)為128 bps。中央門鎖系統(tǒng)、座椅調(diào)節(jié)系統(tǒng)、車燈控制系統(tǒng)對(duì)實(shí)時(shí)性要求不是很嚴(yán)格,它們構(gòu)成低速通信網(wǎng)絡(luò),通信波特率設(shè)為30 bps。兩個(gè)網(wǎng)關(guān)跨接高、中、低速三條總線,與各節(jié)點(diǎn)進(jìn)行數(shù)據(jù)交換。網(wǎng)關(guān)通過(guò)對(duì)CAN總線間待傳數(shù)據(jù)信息的智能化處理,可以確保只有某類特定的信息才能夠在網(wǎng)絡(luò)間傳輸。
2.2 器件選擇
汽車內(nèi)部CAN網(wǎng)絡(luò)主要由兩部分組成:面向底層ECU的CAN節(jié)點(diǎn)和實(shí)現(xiàn)高低速網(wǎng)絡(luò)數(shù)據(jù)共享及網(wǎng)絡(luò)管理的網(wǎng)關(guān)。為了減少開發(fā)周期,選擇Motorola公司一款帶CAN模塊的中檔微處理器MC9S12DP256;CAN收發(fā)器以及電源系統(tǒng)是用MC33989來(lái)實(shí)現(xiàn)的。
微控制器MC9S12DP256是基于16位HCS12 CPU及0.25 μm微電子技術(shù)的高速、高性能5.0 V Flash存儲(chǔ)器產(chǎn)品中的中檔芯片。其較高的性能價(jià)格比使其非常適合用于一些中高檔汽車電子控制系統(tǒng);同時(shí)其較簡(jiǎn)單的背景開發(fā)模式(BDM)也使開發(fā)成本進(jìn)一步降低,使現(xiàn)場(chǎng)開發(fā)與系統(tǒng)升級(jí)變得更加方便。
MC9S12DP256的主頻高達(dá)25 MHz;片上集成了許多標(biāo)準(zhǔn)模塊,包括2個(gè)異步串行通信口SCI、3個(gè)同步串行通信口SPI、8通道輸入捕捉/輸出比較定時(shí)器、2個(gè)10位8通道A/D轉(zhuǎn)換模塊、1個(gè)8通道脈寬調(diào)制模塊、49個(gè)獨(dú)立數(shù)字I/O口(其中20個(gè)具有外部中斷及喚醒功能)、兼容CAN2.0A/B協(xié)議的5個(gè)CAN模塊以及1個(gè)內(nèi)部IC總線模塊;片內(nèi)擁有256 KB的Flash EEPROM?12 KB的RAM、4 KB的EEPROM。這些豐富的內(nèi)部資源和外部接口資源可以滿足各種ECU數(shù)據(jù)的處理以及發(fā)送和接收。由于有多個(gè)CAN模塊,所以非常適合做高低速網(wǎng)絡(luò)之間的網(wǎng)關(guān)。
Motorola公司的系統(tǒng)級(jí)芯片(SBC)MC33989具有二個(gè)電源整流器,專為MCU和外圍器件提供電源。這個(gè)智能化的半導(dǎo)體器件可以提供所有必需的系統(tǒng)電壓,內(nèi)部有一個(gè)低噪聲的200 mA整流器用來(lái)給MCU子系統(tǒng)供電。另外,還有一個(gè)控制外部導(dǎo)通晶體管的裝置用來(lái)給外圍設(shè)備供電。這個(gè)外部導(dǎo)通晶體管允許調(diào)整二次電源,使之滿足每種特殊應(yīng)用所需的功耗極限要求。二次供電電源還能根據(jù)要求切斷所選外圍設(shè)備的供電,并以此達(dá)到降低功耗的目的。
除了提供系統(tǒng)電源外,SBC內(nèi)部還集成了一個(gè)1 Mb的CAN收發(fā)器。該收發(fā)器具有主控狀態(tài)超時(shí)檢測(cè)、內(nèi)部熱保護(hù)以及CAN-H和CAN-L輸入端短路保護(hù)等功能。收發(fā)器內(nèi)部還對(duì)CAN-H和CAN-L輸入端進(jìn)行了跳啟、電池反接以及短接至電源或地的保護(hù)。
4個(gè)高壓?jiǎn)拘演斎攵耸蛊骷邆淞藦?qiáng)大的喚醒功能。這些喚醒輸入端的最大耐壓能達(dá)40 V。輸入端的上拉源能在芯片上產(chǎn)生。由于只需用上拉源就能隨時(shí)檢測(cè)開關(guān)輸入的變化,因此能較好地降低功耗。該器件還具有周期性喚醒功能。另外,SBC還提供了針對(duì)MCU的復(fù)位調(diào)節(jié)與低壓檢測(cè)功能。
2.3 CAN節(jié)點(diǎn)的硬件電路設(shè)計(jì)
為了便于調(diào)試和演示,節(jié)點(diǎn)模塊都包括CAN接口、RS232接口和液晶顯示器。在調(diào)試過(guò)程中,液晶顯示器用來(lái)將本地?cái)?shù)據(jù)和通過(guò)CAN總線接收的數(shù)據(jù)直觀地顯示出來(lái),RS232接口在需要的情況下可用來(lái)與PC機(jī)建立通信。
節(jié)點(diǎn)的核心芯片是微處理器MC9S12DP256,主要負(fù)責(zé)CAN的初始化,完成數(shù)據(jù)的處理及監(jiān)控?cái)?shù)據(jù)的傳送。
圖2中MC33989是CAN控制器與物理層總線之間的接口。該器件可以提供對(duì)總線的差分發(fā)送能力和差分接收能力,具有抗汽車環(huán)境下的瞬間干擾、保護(hù)總線的功能。除此之外,它還為MCU和外圍器件提供電源。CAN節(jié)點(diǎn)原理框圖如圖2所示。
圖2 CAN節(jié)點(diǎn)原理框圖
2.4 CAN網(wǎng)關(guān)的硬件電路設(shè)計(jì)
網(wǎng)關(guān)的主要作用是協(xié)調(diào)各個(gè)網(wǎng)絡(luò)之間數(shù)據(jù)的共享,負(fù)責(zé)各節(jié)點(diǎn)之間的通信,其硬件結(jié)構(gòu)與CAN節(jié)點(diǎn)非常相似。由于它負(fù)責(zé)高速與低速網(wǎng)絡(luò)之間的數(shù)據(jù)共享,所以,必須同時(shí)跨接在兩個(gè)網(wǎng)絡(luò)之間。CAN總線網(wǎng)關(guān)硬件框圖如圖3所示。
圖3 CAN總線網(wǎng)關(guān)硬件框圖
微處理器MC9S12DP256具有5個(gè)CAN模塊,這里使用其中的兩個(gè):一個(gè)通過(guò)MC33989與低速網(wǎng)相連,實(shí)現(xiàn)與低速網(wǎng)的通信;另一個(gè)通過(guò)MC33989與高速網(wǎng)相連,實(shí)現(xiàn)高、低速網(wǎng)之間的通信以及對(duì)網(wǎng)絡(luò)的管理。
2.5 CAN網(wǎng)絡(luò)通信系統(tǒng)軟件設(shè)計(jì)
本設(shè)計(jì)所需實(shí)現(xiàn)的功能是各節(jié)點(diǎn)發(fā)送接收數(shù)據(jù),網(wǎng)關(guān)能實(shí)現(xiàn)數(shù)據(jù)的轉(zhuǎn)換,實(shí)現(xiàn)高、低速網(wǎng)絡(luò)之間的通信。在實(shí)驗(yàn)過(guò)程中,假設(shè)速率不同的兩個(gè)網(wǎng)絡(luò),數(shù)據(jù)刷新周期分別為10 ms的低速網(wǎng)和5 ms的高速網(wǎng)。軟件設(shè)計(jì)由KEIL C編寫,主程序完成數(shù)據(jù)的處理和收發(fā),中斷程序負(fù)責(zé)數(shù)據(jù)的采集,主程序由CAN總線數(shù)據(jù)的收發(fā)、液晶顯示控制、數(shù)據(jù)幀解析三部分構(gòu)成。通過(guò)中斷判斷數(shù)據(jù)的接收或發(fā)送,根據(jù)高、低速的不同,每隔一段時(shí)間(5 ms或10 ms)發(fā)送一組新數(shù)據(jù)。通信程序流程如圖4所示。
圖4 通信程序流程結(jié)語(yǔ)
結(jié)語(yǔ)
為了充分發(fā)揮ECU在汽車控制中的作用,CAN通信網(wǎng)絡(luò)為全局優(yōu)化提供了條件。通過(guò)實(shí)驗(yàn)證明,CAN總線具有以下優(yōu)點(diǎn):① 組網(wǎng)自由,擴(kuò)展性強(qiáng);② 自動(dòng)錯(cuò)誤界定,簡(jiǎn)化了電控單元對(duì)通信的操作;③ 可根據(jù)數(shù)據(jù)內(nèi)容確定優(yōu)先權(quán),解決通信的實(shí)時(shí)性問(wèn)題。
此外,CAN網(wǎng)絡(luò)還被眾多工業(yè)控制系統(tǒng)采用,尤其是傳輸速率較高而且對(duì)實(shí)時(shí)性及可靠性要求高的場(chǎng)合,所以CAN總線將有廣闊的應(yīng)用前景。
參考文獻(xiàn)
1 鄔寬明.CAN總線原理和應(yīng)用系統(tǒng)設(shè)計(jì). 北京:北京航空航天出版社,1996
2 陽(yáng)憲惠. 現(xiàn)場(chǎng)總線技術(shù)及其應(yīng)用. 北京:清華大學(xué)出版社,1999
3 MC9S12DP256 Advance Information. Revision 1.1. December 1, 2000
4 System Basis Chip with High Speed CAN. July 10, 2002
黃濤:博士,主要研究方向?yàn)槠囯娮?。周德恒:碩士研究生,主要研究方向?yàn)榍度胧较到y(tǒng)及車載網(wǎng)絡(luò)應(yīng)用。
評(píng)論