《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 其他 > 業(yè)界動(dòng)態(tài) > 汽車控制系統(tǒng)中的雙速CAN總線設(shè)計(jì)

汽車控制系統(tǒng)中的雙速CAN總線設(shè)計(jì)

2008-11-12
作者:馮 鐘

  摘? 要: 針對(duì)汽車控制系統(tǒng)中各控制單元" title="控制單元">控制單元對(duì)系統(tǒng)響應(yīng)時(shí)間要求不一致的實(shí)際情況,提出建立雙速CAN總線網(wǎng)絡(luò)以連接汽車的各控制單元的方法。在系統(tǒng)中,對(duì)實(shí)時(shí)性" title="實(shí)時(shí)性">實(shí)時(shí)性要求高的計(jì)算機(jī)控制" title="計(jì)算機(jī)控制">計(jì)算機(jī)控制單元采用高速CAN網(wǎng)絡(luò)傳輸;其他采用低速CAN網(wǎng)絡(luò)傳輸。結(jié)果表明,采用高、低速兩條CAN總線網(wǎng)絡(luò)的設(shè)計(jì)思路,既方便地實(shí)現(xiàn)了整個(gè)系統(tǒng)的數(shù)據(jù)共享,又有效地緩解了整個(gè)總線的通信負(fù)擔(dān),從而提高了控制的可靠性。?

  關(guān)鍵詞: 雙速CAN總線; 網(wǎng)關(guān); 汽車控制系統(tǒng); TMS320LF2407?

?

  隨著汽車計(jì)算機(jī)控制技術(shù)的不斷發(fā)展,現(xiàn)代汽車上的電子裝置越來越多,聯(lián)系也越來越緊密。如發(fā)動(dòng)機(jī)控制、變速控制、制動(dòng)防抱死控制、安全氣囊控制、照明控制、空調(diào)控制、儀表管理等。在原來的汽車上,這些計(jì)算機(jī)控制單元之間往往沒有通過總線構(gòu)成網(wǎng)絡(luò),而是獨(dú)立進(jìn)行控制,或者相關(guān)控制單元通過串行口進(jìn)行聯(lián)系,目前,大多數(shù)汽車都使用串行總線構(gòu)成網(wǎng)絡(luò)控制,各汽車公司都制定各自的協(xié)議。如克萊斯勒公司的CCD協(xié)議;福特、馬自達(dá)的PWM協(xié)議;英國的GE協(xié)議;標(biāo)致、雷諾的VAN協(xié)議;Bosch、奔馳的CAN協(xié)議;通用公司的J1850協(xié)議等。目前ISO組織批準(zhǔn)采用的汽車多路傳輸系統(tǒng)的技術(shù)標(biāo)準(zhǔn)通信協(xié)議有VAN、CAN、SCP(J1850)三種。其中CAN協(xié)議實(shí)際上己成為最具代表性的汽車高速協(xié)議。在歐洲,CAN總線已成為汽車制造業(yè)的主體行業(yè)標(biāo)準(zhǔn),代表著汽車電子控制網(wǎng)絡(luò)的主流發(fā)展趨勢(shì)。?

  現(xiàn)代汽車計(jì)算機(jī)控制單元多,而各控制單元對(duì)系統(tǒng)響應(yīng)時(shí)間的要求也不一樣。有些控制單元對(duì)實(shí)時(shí)性要求很高,系統(tǒng)指令發(fā)出以后如果得不到執(zhí)行器的及時(shí)響應(yīng),就可能造成嚴(yán)重后果甚至車毀人亡,如制動(dòng)防抱死控制單元、安全氣囊等;而有些控制單元如照明控制、空調(diào)控制等對(duì)系統(tǒng)的響應(yīng)時(shí)間要求就相對(duì)較低。計(jì)算機(jī)控制單元越來越多,若采用單網(wǎng)絡(luò),CAN總線負(fù)荷很重,本文通過分別構(gòu)造高、低速CAN網(wǎng)絡(luò),對(duì)實(shí)時(shí)性要求高的計(jì)算機(jī)控制單元采用高速CAN網(wǎng)絡(luò)傳輸;而其他則采用低速CAN網(wǎng)絡(luò)傳輸,并采用DSP作為微控制器" title="微控制器">微控制器兼作網(wǎng)關(guān),使得傳輸線束大大簡(jiǎn)化,可靠性大大提高。?

1 CAN總線的技術(shù)特性?

  CAN(Controller Area Network)總線是一種串行多主站控制器局域網(wǎng)總線。它具有很高的網(wǎng)絡(luò)安全性、通信可靠性和實(shí)時(shí)性,并且簡(jiǎn)單實(shí)用、網(wǎng)絡(luò)成本低,特別適用于汽車計(jì)算機(jī)控制系統(tǒng)和環(huán)境溫度惡劣、電磁輻射強(qiáng)和振動(dòng)大的工業(yè)環(huán)境。通信媒體可以是雙絞線、同軸電纜或光導(dǎo)纖維,數(shù)據(jù)傳輸速率可達(dá) 1Mb/s(此時(shí)通信距離最長(zhǎng)為40m)。?

  自CAN總線問世以來,為滿足CAN總線協(xié)議的多種應(yīng)用的需要,相繼出現(xiàn)了幾種高層協(xié)議。目前大多數(shù)基于CAN 總線的網(wǎng)絡(luò)都采用CAN 總線的高層協(xié)議。 CANopen、DeviceNet 和SDS是通常采用的高層協(xié)議,適用于任何類型的工業(yè)控制局域網(wǎng)應(yīng)用場(chǎng)合,而 CAL 則應(yīng)用于基于標(biāo)準(zhǔn)應(yīng)用層通信協(xié)議的優(yōu)化控制場(chǎng)合,SAEJ1939 則應(yīng)用于卡車和重型汽車計(jì)算機(jī)控制的系統(tǒng)。?

2 基于TMS320LF2407的汽車控制系統(tǒng)?

2.1? TMS320LF2407?

  根據(jù)汽車計(jì)算機(jī)控制系統(tǒng)對(duì)高實(shí)時(shí)性、高可靠性、高抗電磁干擾能力要求,采用TI公司開發(fā)的TMS320LF2407芯片作為主微控制器兼做網(wǎng)關(guān)。該DSP芯片將高性能的DSP內(nèi)核和豐富的微控制器外設(shè)集成于單片中,指令采用四級(jí)流水線操作,能使數(shù)字控制系統(tǒng)實(shí)時(shí)地進(jìn)行運(yùn)算,能大大減小硬件對(duì)控制算法的限制。芯片具有六套16位內(nèi)部總線,544字節(jié)的片內(nèi)DARAM、2K字的片內(nèi)SARAM和32K字的片內(nèi)Flash程序存儲(chǔ)器、16通道10位A/D轉(zhuǎn)換器、1個(gè)異步串行口SCI, 2個(gè)事件管理器EV。每個(gè)事件管理器都有各自可編程的死區(qū)單元和功率驅(qū)動(dòng)保護(hù)中斷引腳,可產(chǎn)生獨(dú)立的PWM波,便于汽車內(nèi)部各種電機(jī)的控制。TMS320LF2407DSP的片上CAN模塊全面兼容CAN2.0B協(xié)議,可以利用它開發(fā)帶CAN總線接口的汽車控制儀。?

2.2? 系統(tǒng)硬件設(shè)計(jì)?

  目前,汽車計(jì)算機(jī)控制已經(jīng)涉及到動(dòng)力性、經(jīng)濟(jì)性、安全性、可靠性、凈化性和舒適性等諸多方面,具體包括發(fā)動(dòng)機(jī)控制、變速器控制、巡行控制、制動(dòng)控制、照明控制、空調(diào)控制、雨刷控制,儀表管理控制等,而且各種控制系統(tǒng)的電控單元(ECU)相互聯(lián)系緊密,需要隨時(shí)進(jìn)行實(shí)時(shí)數(shù)據(jù)通信。?

  汽車計(jì)算機(jī)控制系統(tǒng)中的所有這些子控制單元通過CAN總線構(gòu)成一個(gè)實(shí)時(shí)控制系統(tǒng)網(wǎng)絡(luò),各控制單元的指令發(fā)出去之后,必須保證在一定時(shí)間內(nèi)得到響應(yīng),否則就有可能發(fā)生重大事故。這就要求汽車上的CAN通信網(wǎng)絡(luò)" title="通信網(wǎng)絡(luò)">通信網(wǎng)絡(luò)有較高的波特率設(shè)置和可靠性。而且,汽車在實(shí)際運(yùn)行過程中,眾多節(jié)點(diǎn)之間需要進(jìn)行大量的實(shí)時(shí)數(shù)據(jù)交換。若整輛汽車的所有節(jié)點(diǎn)都掛在一個(gè)CAN 網(wǎng)絡(luò)上,這么多節(jié)點(diǎn)通過一條CAN總線進(jìn)行通信,信息管理配置稍有不當(dāng),就很容易出現(xiàn)總線負(fù)荷過大現(xiàn)象,將導(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è)網(wǎng)關(guān)將這兩個(gè)速率不同的CAN通信網(wǎng)絡(luò)連接起來,實(shí)現(xiàn)全部節(jié)點(diǎn)之間的數(shù)據(jù)共享。整輛汽車的通信網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)如圖1 所示。?

?

?

  圖1中的發(fā)動(dòng)機(jī)控制、變速器控制、安全控制、防抱死制動(dòng)控制(ABS)等控制單元節(jié)點(diǎn)是現(xiàn)代汽車動(dòng)作的核心部件,對(duì)時(shí)間響應(yīng)要求嚴(yán)格,因而在本設(shè)計(jì)中采用傳輸速率為500Kb/s的高速CAN通信網(wǎng)絡(luò)??照{(diào)控制、雨刷控制、照明控制和儀表管理控制等對(duì)實(shí)時(shí)性的要求相對(duì)較低,采用傳輸速率小于125Kb/s的CAN通信網(wǎng)絡(luò),主控制器跨接高、低速兩條總線,與各節(jié)點(diǎn)進(jìn)行數(shù)據(jù)交換,兼起網(wǎng)關(guān)的作用,實(shí)現(xiàn)網(wǎng)絡(luò)互連。?

  根據(jù)系統(tǒng)設(shè)計(jì)要求,采用TMS320LF2407DSP芯片作為主控制器。該芯片內(nèi)部集成了CAN總線控制器,不用外擴(kuò)總線控制器芯片(如SJA1000)。汽車計(jì)算機(jī)控制系統(tǒng)電控單元與CAN總線接線圖如圖2所示。?

?

?

  為滿足CAN總線協(xié)議,需要利用TMS320LF2407來制作CAN通信接口。CAN通信接口由光電隔離電路和CAN 總線收發(fā)器以及TMS320LF2407內(nèi)部的CAN總線控制器組成。在接口設(shè)計(jì)中,TMS320LF2407的CAN總線控制器帶有一個(gè)接收緩沖器和一個(gè)發(fā)送緩沖器,因此,CAN總線控制器的發(fā)送端口CANTX、接收端口 CANRX分別與 CAN總線發(fā)送接收器的TxD和RxD端口相通。但為了提高CAN節(jié)點(diǎn)的抗干擾能力,電控單元的微控制器(TMS320LF2407)通過數(shù)據(jù)總線經(jīng)過高速光電隔離器(6N137)與 CAN 總線收發(fā)器(PCA82C250)相連,以實(shí)現(xiàn)總線上各CAN節(jié)點(diǎn)間的電氣隔離。光耦部分電路所采用的兩個(gè)電源應(yīng)該完全隔離。在實(shí)際使用中,可采用多電源輸出模塊供電實(shí)現(xiàn)電源隔離。PCA82C250的CAN_H和CAN_L與CAN總線之間的二個(gè)5Ω電阻用于限流,以免PCA82C250受到過流的沖擊。芯片PCA82C250的引腳RS用于選擇PCA82C250的工作模式(高速、斜率控制或等待),RS腳接地(須串接一個(gè)電阻),則PCA82C250工作于高速方式。參考電壓輸出VR的輸出電壓是額定電源電壓VCC的0.5倍,其中收發(fā)器的額定電源電壓是5V。CAN_L和CAN_H是CAN總線的兩條差分接收發(fā)送線,它們的端點(diǎn)間各接一個(gè)120Ω的總線匹配電阻,當(dāng)有節(jié)點(diǎn)占用CAN總線時(shí),該節(jié)點(diǎn)的發(fā)送端(電平為3.5V)接CAN_H,接收端(電平為1.5V)接CAN_L;當(dāng)無節(jié)點(diǎn)占用CAN總線時(shí),CAN_L和 CAN_H上的電平均為 2.5V。CAN通信接口的原理電路如圖3所示。?

?

?

2.3 軟件設(shè)計(jì)?

  本系統(tǒng)軟件由主系統(tǒng)軟件和高(低)速CAN總線網(wǎng)絡(luò)單元軟件組成,軟件流程圖分別如圖4、圖5所示。其中,高速CAN總線網(wǎng)絡(luò)單元負(fù)責(zé)對(duì)實(shí)時(shí)性要求高的發(fā)動(dòng)機(jī)控制、變速控制、安全控制和制動(dòng)防抱死控制等單元的控制動(dòng)作的采集和傳送,一旦有這些控制單元的動(dòng)作信號(hào),經(jīng)過微控制器對(duì)它們進(jìn)行處理后將以最快的速度通過高速CAN網(wǎng)絡(luò)傳給相應(yīng)控制單元的ECU,由控制單元ECU對(duì)控制對(duì)象進(jìn)行控制;低速CAN總線網(wǎng)絡(luò)的控制方法與此類似(在此不作介紹),但是由于它們的實(shí)時(shí)性要求相對(duì)不高,因此其傳輸優(yōu)先級(jí)相對(duì)也較低。?

?

?

?

  在CAN網(wǎng)絡(luò)系統(tǒng)中,下位節(jié)點(diǎn)也就是各種類型的ECU,它們的主要功能是采集數(shù)據(jù)并向總線發(fā)送報(bào)文以及從總線接收?qǐng)?bào)文并向相連的電子設(shè)備發(fā)送控制指令。這里以汽車儀表ECU為例,此節(jié)點(diǎn)的主要任務(wù)是從總線接收?qǐng)?bào)文并驅(qū)動(dòng)相連的油量表、轉(zhuǎn)速表、車速表、水溫表以及控制儀表上的方向燈、照明燈、報(bào)警燈的開啟與關(guān)閉。同時(shí),此節(jié)點(diǎn)應(yīng)定時(shí)向總線發(fā)送有關(guān)汽車儀表工作狀態(tài)的報(bào)文。因此,下位節(jié)點(diǎn)的軟件包括CAN初始化程序、CAN報(bào)文接收程序、CAN報(bào)文發(fā)送程序、電子設(shè)備控制程序和數(shù)據(jù)采集程序等部分。本文簡(jiǎn)要介紹CAN初始化、CAN報(bào)文處理等部分的軟件設(shè)計(jì)思路。?

  (1)CAN初始化程序設(shè)計(jì)?

  對(duì)CAN控制器進(jìn)行初始化,實(shí)際上就是對(duì)CANC、BRPRS、SYNC0、SYNC1、MCNT、MASKC等寄存器進(jìn)行初始化設(shè)置,并對(duì)報(bào)文接收緩沖區(qū)進(jìn)行設(shè)置。CAN初始化程序代碼如下:?

??? CANINIT:…?

??? ??? DI????????????? ??????????????????????????? ;關(guān)中斷?

??? ??? SET1 CANC.O?

?? ???? MOV? BRPRS,#09H?

??? ??? MOV? SYNCO,#OA7H?

??? ??? MOV? SYNC1,#04H?

? ???? ?Receive Buffer Init???????? ?? ;接收緩沖區(qū)初始化?

????? ? …?

??? ??? MOV? MCNT,#ODOH? ?? ??? ??;16個(gè)Receive Buffer?

??? ??? MOV? MASKC,#02H?

??? ??? CLR1 CANC.O?

??? EI????????????????? ??????????????????????? ;開中斷?

  (2)CAN報(bào)文處理程序設(shè)計(jì)?

  CAN協(xié)議只關(guān)心報(bào)文內(nèi)容,而不必關(guān)心報(bào)文的目的地址。因此,下位節(jié)點(diǎn)采集數(shù)據(jù)后或收到數(shù)據(jù)發(fā)送請(qǐng)求報(bào)文后,以廣播方式向總線發(fā)送報(bào)文。當(dāng)通過濾波驗(yàn)收的數(shù)據(jù)報(bào)文被接收時(shí),將有兩種操作方式:一種是中斷方式,若接收中斷開放位允許,則產(chǎn)生中斷;另一種是查詢方式,若查詢接收狀態(tài)位DN=1,則表示接收緩沖區(qū)所有數(shù)據(jù)。由于汽車控制網(wǎng)絡(luò)實(shí)時(shí)性要求較高,因此系統(tǒng)采用中斷方式對(duì)接收數(shù)據(jù)進(jìn)行處理。?

2.4 抗干擾措施?

  考慮到汽車計(jì)算機(jī)控制的工作條件比較惡劣,電磁干擾嚴(yán)重,在本設(shè)計(jì)中還加強(qiáng)了防干擾措施:(1)提高了穩(wěn)壓電源的抗干擾性能。因?yàn)樾铍姵嘏c汽車交流發(fā)電機(jī)、起動(dòng)機(jī)、點(diǎn)火線圈相連,不僅電壓波動(dòng)大,而且含有尖峰脈沖,對(duì)微機(jī)干擾很大,因此對(duì)穩(wěn)壓電源進(jìn)行了精心設(shè)計(jì)。(2)考慮汽車工作環(huán)境電磁干擾嚴(yán)重,在選用微控制器時(shí)特選用自帶看門狗定時(shí)器的數(shù)字信號(hào)處理器TMS320LF2407作為微控制器,并選用4片高速光電隔離芯片6N137,將控制器與CAN總線收發(fā)器隔離,有效防止了噪聲信號(hào)傳入微控制器,提高了系統(tǒng)可靠性。(3)本設(shè)計(jì)還對(duì)整個(gè)系統(tǒng)進(jìn)行了金屬屏蔽,傳輸線采用屏蔽雙絞線,以減少電磁干擾。(4)在軟件抗干擾方面,CAN總線MAC層采用CSMA/CD協(xié)議及非破壞性優(yōu)先權(quán)的逐位仲裁規(guī)則實(shí)現(xiàn)對(duì)媒體的訪問,總線狀態(tài)取決于顯性位‘0’,而不是取決于隱性位‘1’,因此,當(dāng)兩個(gè)節(jié)點(diǎn)同時(shí)向網(wǎng)絡(luò)上發(fā)送報(bào)文時(shí),優(yōu)先級(jí)低的報(bào)文主動(dòng)停止發(fā)送,而不會(huì)影響優(yōu)先級(jí)高的報(bào)文的發(fā)送。同時(shí),采用CRC校驗(yàn),具有錯(cuò)誤檢測(cè)與出錯(cuò)幀自動(dòng)重發(fā)功能。?

  智能芯片價(jià)格的下降使得各種汽車局域網(wǎng)的成本相差無幾,性能已成為影響網(wǎng)絡(luò)選擇的最主要因素。目前,CAN以其優(yōu)異的品質(zhì)具有明顯的優(yōu)勢(shì),高速、低速兩條CAN總線網(wǎng)絡(luò)的設(shè)計(jì),既方便地實(shí)現(xiàn)了整個(gè)系統(tǒng)的數(shù)據(jù)共享,又有效地緩解了整個(gè)總線的通信負(fù)擔(dān)。目前雙速CAN的模式已經(jīng)在一些大的汽車生產(chǎn)廠得到應(yīng)用。?

  如今,一些公司(如神龍公司)提出采用三速網(wǎng)絡(luò)作為汽車的控制網(wǎng)絡(luò),高速與低速網(wǎng)絡(luò)用CAN總線,而中速網(wǎng)絡(luò)用VAN總線,兩種總線用一個(gè)智能控制盒加以協(xié)調(diào)。三速雙總線網(wǎng)絡(luò)模式的控制可靠性尚需要進(jìn)一步加以驗(yàn)證。但是可以相信,隨著汽車控制技術(shù)的發(fā)展,三速雙總線網(wǎng)絡(luò)不久也將會(huì)成功地得到應(yīng)用。?

參考文獻(xiàn)?

[1] 饒動(dòng)濤,鄒繼軍,鄭勇蕓. 現(xiàn)場(chǎng)總線CAN原理與應(yīng)用技術(shù)[M]. 北京:北京航空航天大學(xué)出版社,2003.?

[2] 鄒寬明. CAN總線原理和應(yīng)用系統(tǒng)設(shè)計(jì)[M]. 北京:北京航空航天大學(xué)出版社,2002.?

[3] 劉和平. TMS320LF240x DSP結(jié)構(gòu)原理及應(yīng)用. 北京:北京航空航天大學(xué)出版社,2002.?

[4] 肖瑋, 劉立, 魏敬宣. 基于CAN總線的載重汽車安全監(jiān)測(cè)系統(tǒng)[J].礦山機(jī)械,2007,(6):67-69.

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請(qǐng)及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。