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