吳 森,劉炳國(guó)
(武漢理工大學(xué)汽車(chē)工程學(xué)院,湖北 武漢 430070)
1983年德國(guó)博世公司提出的用于汽車(chē)的控制器局域網(wǎng)(controller area network,CAN)協(xié)議的構(gòu)想已成為國(guó)際上應(yīng)用最廣泛的現(xiàn)場(chǎng)總線(xiàn)并被采用為國(guó)際標(biāo)準(zhǔn)(ISO11898)[1]。
對(duì)于新能源外插充電式混合動(dòng)力城市客車(chē)(PHEV),一方面由于傳統(tǒng)模式下安全性和舒適性的提高,采用了大量的電子設(shè)備,線(xiàn)束布置難度和通信復(fù)雜程度較高。另一方面由于增加了電池管理系統(tǒng)(EMS)、電機(jī)控制器和電動(dòng)助力轉(zhuǎn)向等系統(tǒng)部件,其與整車(chē)控制器通信實(shí)時(shí)性要求提高。若整車(chē)控制器采用傳統(tǒng)控制方式,布線(xiàn)難度加大,且難以滿(mǎn)足數(shù)據(jù)傳遞實(shí)時(shí)性及共享的要求[2]。因而,采用CAN總線(xiàn)通信系統(tǒng)是必要的。
目前,以CAN總線(xiàn)通信協(xié)議為基礎(chǔ)的SAE J1939標(biāo)準(zhǔn)已成為世界上各大車(chē)輛部件生產(chǎn)商所支持的重要通信標(biāo)準(zhǔn)[3]。但是由于傳統(tǒng)城市客車(chē)與PHEV控制結(jié)構(gòu)上的差異,SAE J1939不能直接應(yīng)用于PHEV,故制定以SAE J1939協(xié)議為參考依據(jù)的新能源車(chē)CAN總線(xiàn)通信協(xié)議,以適應(yīng)新能源車(chē)的CAN總線(xiàn)通信要求。
筆者提出的整車(chē)控制器CAN通信系統(tǒng),較好地適應(yīng)了PHEV的通信要求。
該系統(tǒng)為外插充電并聯(lián)式混合動(dòng)力系統(tǒng),具有兩套驅(qū)動(dòng)系統(tǒng):傳統(tǒng)內(nèi)燃機(jī)系統(tǒng)和電機(jī)驅(qū)動(dòng)系統(tǒng)。兩個(gè)系統(tǒng)既可以同時(shí)協(xié)調(diào)工作,也可以各自單獨(dú)工作驅(qū)動(dòng)汽車(chē)。系統(tǒng)結(jié)構(gòu)示意圖如圖1所示。
圖1 PHEV結(jié)構(gòu)示意圖
由圖1可以看出,整車(chē)控制器主要與電機(jī)控制器、電池管理系統(tǒng)、EMT執(zhí)行器、離合器執(zhí)行器、行車(chē)開(kāi)關(guān)、制動(dòng)踏板、加速踏板以及發(fā)動(dòng)機(jī)ECU等交換數(shù)據(jù)。筆者介紹的CAN總線(xiàn)通信系統(tǒng)是圍繞整車(chē)控制器與這些部件系統(tǒng)的數(shù)據(jù)交換而展開(kāi)的。整車(chē)的其他通信依然采取傳統(tǒng)方式。該設(shè)計(jì)兼顧了原車(chē)成熟的通信系統(tǒng),線(xiàn)路更改較少,有利于現(xiàn)場(chǎng)安裝。
CAN通信網(wǎng)絡(luò)示意圖如圖2所示。
圖2 CAN通信網(wǎng)絡(luò)示意圖
從CAN應(yīng)用的角度來(lái)講,只需選用合適的CAN收發(fā)器等硬件部件,而不必關(guān)心SAE J1939物理層的電氣規(guī)范[4]。因此,對(duì)于電氣規(guī)范部分遵循SAE J1939物理層協(xié)定(J1939-11)即可。
該系統(tǒng)使用CAN2.0B的擴(kuò)展幀格式,符合J1939協(xié)議,總線(xiàn)通信波特率為256 kb/s。節(jié)點(diǎn)需用120 Ω電阻端接。握手協(xié)議采用廣播式和應(yīng)答式兩種。由兩個(gè)或兩個(gè)以上數(shù)據(jù)字節(jié)組成的參數(shù),應(yīng)首先傳遞低位有效字節(jié)[5-6]。該系統(tǒng)使用CAN總線(xiàn)網(wǎng)絡(luò)報(bào)文結(jié)構(gòu)如表1所示。
表1 CAN總線(xiàn)網(wǎng)絡(luò)報(bào)文結(jié)構(gòu)
表1中,優(yōu)先級(jí)為3位,可以有8個(gè)優(yōu)先級(jí);R一般固定為0;DP現(xiàn)固定為0;8位PF為報(bào)文代碼;8位PS為目標(biāo)地址或組擴(kuò)展;8位SA為發(fā)送該報(bào)文的源地址;SRR是替代遠(yuǎn)程請(qǐng)求位,為一個(gè)隱性位;IDE是標(biāo)識(shí)符擴(kuò)展位,在擴(kuò)展格式報(bào)文幀里為隱性位[7-9]。整車(chē)控制器單元狀態(tài)信息示意圖如圖3所示。
圖3 整車(chē)控制器單元狀態(tài)信息示意圖
TMS320LF2812是一款32位C2000DSP器件,其內(nèi)部集成了增強(qiáng)型CAN模塊,支持CAN2.0B協(xié)議。CAN總線(xiàn)是一種串行通信協(xié)議,以郵箱形式發(fā)送和接收數(shù)據(jù)。該電氣平臺(tái)中的CAN芯片選用PCA82C250。
該CAN通信系統(tǒng)應(yīng)用在PHEV控制器上,環(huán)境噪聲干擾較大,為了防止外界環(huán)境突變產(chǎn)生瞬間較大電流燒毀DSP芯片,在電氣平臺(tái)設(shè)計(jì)時(shí),采用光耦隔離的方法,將系統(tǒng)與外界環(huán)境隔離,以保護(hù)系統(tǒng)硬件。其接口電路如圖4所示。
圖4 DSP與CAN接口電路
該系統(tǒng)CAN總線(xiàn)從節(jié)點(diǎn)控制器采用應(yīng)用廣泛且價(jià)格便宜的AT89S52。該單片機(jī)并不具備獨(dú)立的CAN控制模塊,需要與獨(dú)立的CAN控制器SJA1000和CAN總線(xiàn)收發(fā)器PCA82C250共同構(gòu)成智能節(jié)點(diǎn)。51單片機(jī)與SJA1000的CAN總線(xiàn)通信示意圖如圖5所示。
SJA1000為應(yīng)用于汽車(chē)工業(yè)和一般工業(yè)環(huán)境的獨(dú)立的CAN總線(xiàn)控制器,具有通信協(xié)議所要求的全部性能,經(jīng)過(guò)簡(jiǎn)單的總線(xiàn)連接即可具備CAN總線(xiàn)的物理層和數(shù)據(jù)鏈路層的所有功能。
3.1.1 主節(jié)點(diǎn)初始化
在使用CAN控制器之前首先必須對(duì)其內(nèi)部寄存器進(jìn)行初始化設(shè)置。通過(guò)初始化定時(shí)器和郵箱可完成對(duì)CAN控制器的初始化,只要滿(mǎn)足一定條件,相應(yīng)郵箱就能進(jìn)行正常的發(fā)送和接收操作。初始化流程圖如圖6所示。
圖6 CAN模塊初始化流程圖
3.1.2 CAN報(bào)文處理程序
采用CAN協(xié)議只需關(guān)心報(bào)文內(nèi)容,而不必關(guān)心報(bào)文的目的地址。主節(jié)點(diǎn)采集到數(shù)據(jù)或收到數(shù)據(jù)發(fā)送請(qǐng)求報(bào)文后,以廣播方式向總線(xiàn)發(fā)送。由于汽車(chē)控制網(wǎng)絡(luò)實(shí)時(shí)性要求較高,故系統(tǒng)接收采用中斷方式,發(fā)送采用查詢(xún)方式對(duì)數(shù)據(jù)進(jìn)行處理[10]。
從節(jié)點(diǎn)應(yīng)用層軟件設(shè)計(jì)的核心部分是CPU與SJA通信控制器之間的數(shù)據(jù)接收和發(fā)送程序,即CPU把待發(fā)的數(shù)據(jù)發(fā)給SJA1000通信控制器,再由 SJA1000通信控制器發(fā)到總線(xiàn)上;當(dāng)SJA1000通信控制器從總線(xiàn)接收到數(shù)據(jù)后,CPU再把數(shù)據(jù)取走。
在從節(jié)點(diǎn)程序設(shè)計(jì)中,首先應(yīng)對(duì)SJA1000中的有關(guān)控制寄存器寫(xiě)入控制字,進(jìn)行初始化。之后,CPU即可通過(guò)SJA1000接收和發(fā)送緩沖區(qū)數(shù)據(jù),向物理總線(xiàn)接收和發(fā)送數(shù)據(jù)。
采用該系統(tǒng),整車(chē)控制器僅需兩根雙絞線(xiàn)即可實(shí)現(xiàn)所有數(shù)據(jù)的傳輸,傳輸線(xiàn)束及相應(yīng)設(shè)備數(shù)量顯著減少,可有效地減少線(xiàn)束安裝空間和系統(tǒng)成本。
[1]吳愛(ài)國(guó),宋曉強(qiáng).CAN bus高層協(xié)議CANopen的研究以及在模塊化CAN控制器上的實(shí)現(xiàn)[R].天津:天津大學(xué)電氣與自動(dòng)化工程系,2009.
[2]尹明德,王春.基于CAN總線(xiàn)客車(chē)網(wǎng)絡(luò)的研究[R].南京:南京航空航天大學(xué)機(jī)電學(xué)院,2005.
[3]熊偉威,張勇,舒杰.基于CAN總線(xiàn)的分布式控制器網(wǎng)絡(luò)在串并聯(lián)式混合動(dòng)力客車(chē)上的應(yīng)用[J].汽車(chē)工程,2008,30(8):664-665.
[4]韓冬,楊方,魏卓.基于DSP的CAN總線(xiàn)智能節(jié)點(diǎn)的設(shè)計(jì)[J].農(nóng)業(yè)科技與裝備,2010(2):41-43.
[5]瑞薩科技.CAN入門(mén)書(shū)[DB/OL].[2011-02-13].http://www.cn.renesas.com.
[6]鄔寬民.CAN總線(xiàn)原理和應(yīng)用系統(tǒng)設(shè)計(jì)[M].北京:航空航天大學(xué)出版社,1996:23-57.
[7]饒?jiān)茲?,鄒繼軍,鄭勇蕓.現(xiàn)場(chǎng)總線(xiàn)CAN原理與應(yīng)用技術(shù)[M].北京:北京航空航天大學(xué)出版社,2003:55-71.
[8]呂京建.現(xiàn)代汽車(chē)的核心技術(shù):SAE J1939[J].技術(shù)與市場(chǎng),2004(1):37-38.
[9]USA SAE J1939-21,Data Link Layer[S].
[10]甘永梅,李慶豐,劉曉娟,等.現(xiàn)場(chǎng)總線(xiàn)技術(shù)及其應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2004:114-135.