基于SAE J1939協(xié)議的車輛信息采集與診斷模塊
摘要:本文在CAN總線技術(shù)與SAE J1939協(xié)議的基礎(chǔ)上,提出了基于Cortex-M3內(nèi)核微控制器的車輛信息采集與診斷模塊系統(tǒng)設(shè)計。詳細介紹了SAE J1939協(xié)議的報文及內(nèi)容格式,以及系統(tǒng)硬件、軟件開發(fā)過程,并指出了設(shè)計中需要注意的環(huán)節(jié)。該模塊通過對CAN總線及各傳感器數(shù)據(jù)的讀取和處理,能夠穩(wěn)定可靠地提供車輛工況數(shù)據(jù),并可集成到車載多媒體系統(tǒng)和虛擬數(shù)字儀表等其他車載產(chǎn)品中。
關(guān)鍵詞:車輛工程;SAE J1939協(xié)議;CAN總線;Cortex-M3
0 引言
當前,汽車電子化程度不斷提高,大量采用基于微處理器的電控單元(ECU)對汽車的各個功能模塊進行信息采集及控制。由于ECU數(shù)量眾多,為了提高信號的利用率,要求在不同的ECU間,大量的數(shù)據(jù)狀態(tài)信息能夠?qū)崿F(xiàn)共享,大量的控制信號能夠?qū)崟r交換。同時,車載多媒體設(shè)備、虛擬數(shù)字儀表等產(chǎn)品也需要實時獲取車輛工況信息。因此傳統(tǒng)線束已遠遠不能滿足這種需求。
CAN總線及基于CAN的車輛通信應(yīng)用層協(xié)議提供了解決上述問題的途徑。目前SAE J1939是汽車行業(yè)應(yīng)用最為廣泛的CAN應(yīng)用層協(xié)議之一。本文提出的基于CAN和SAE J1939的車輛信息采集與診斷模塊能夠?qū)崟r獲取車輛的車速、油壓、制動壓力、發(fā)動機轉(zhuǎn)速等重要信息,在車輛發(fā)生故障時及時定位車輛故障,并可集成到車載多媒體、虛擬儀表等產(chǎn)品中,為車輛駕駛?cè)藛T提供直觀實時的車輛工況。
1 SAE J1939協(xié)議介紹
SAE J1939協(xié)議是美國汽車工程師協(xié)會(SAE)在CAN2.0B協(xié)議基礎(chǔ)上制定的客車和重型貨車網(wǎng)絡(luò)通信應(yīng)用層協(xié)議,在目前汽車電子網(wǎng)絡(luò)中得到廣泛應(yīng)用。該協(xié)議采用CAN總線的數(shù)據(jù)幀封裝其數(shù)據(jù)信息,并明確規(guī)定了汽車內(nèi)部各ECU的名稱、地址、通訊協(xié)議、優(yōu)先級等信息,使用多路復(fù)用技術(shù)為車輛各傳感器、執(zhí)行器和控制器提供建立在CAN總線基礎(chǔ)上的標準化高速網(wǎng)絡(luò)連接,在不同的ECU間實現(xiàn)高速數(shù)據(jù)共享,以期有效減少線束數(shù)量并提高車輛電子控制系統(tǒng)的靈活性、可靠性、可維修性。目前,車輛的ECU產(chǎn)品大都帶有遵循SAE J1939協(xié)議的CAN總線接口。這為車輛信息的快速采集和故障的在線診斷定位提供了便利。
1.1 SAE J1939報文格式
SAE J1939在通訊中是負責(zé)數(shù)據(jù)傳輸?shù)膫鬏攨f(xié)議,其功能分為數(shù)據(jù)的拆分打包和重組及連接管理兩部分。其數(shù)據(jù)幀是以PDU(協(xié)議數(shù)據(jù)單元)為單位傳送信息,每個PDU相當于CAN協(xié)議中的一幀。PDU由29位標識符和O~8個字節(jié)的數(shù)據(jù)所組成,如表l所示。SAE J1939利用29位標識符(CAN擴展幀)提供一種完整的網(wǎng)絡(luò)定義。表1中,P位為決定報文優(yōu)先級的前3位;R是保留位:DP是數(shù)據(jù)頁位;PF場識別兩個PDI格式(PDUl、PDU2):替代遠程請求位SRR和標識符擴展位IDE在CAN2.0B中己詳細定義,并未包含在PDU內(nèi);PS場由PF值決定其包含一個目標地址(DA)還是包含一個對PDU格式PF的組擴展(GE);SA為源地址。
1.2 SAE J1939應(yīng)用層
應(yīng)用層定義了針對車輛應(yīng)用的信號(參數(shù))和報文(參數(shù)組)。應(yīng)用層通過參數(shù)描述信號,給每個參數(shù)分配了一個19位的可疑參數(shù)編號(SP-N);此外還通過參數(shù)組描述報文,給每個參數(shù)組分配了一個24位的參數(shù)組編號(PGN)。SPN用來標識與ECU相關(guān)的故障診斷元素、部件或參數(shù)組中參數(shù);PGN用來唯一標識一個特定參數(shù)組。除已分配的參數(shù)和參數(shù)組外,用戶還可通過分配未使用的SPN給自定義參數(shù)和定義專有報文對應(yīng)用層進行補充。
評論