基于SAE J1939協(xié)議的發(fā)動(dòng)機(jī)總線數(shù)據(jù)模擬器開發(fā)
1 SAE J1939協(xié)議概述
SAE J1939標(biāo)準(zhǔn)是美國(guó)汽車工程師協(xié)會(huì)(SAE)發(fā)布的以CAN總線為核心的車輛網(wǎng)絡(luò)串行通訊和控制協(xié)議,采用多路復(fù)用技術(shù)為車輛上各傳感器、執(zhí)行器和控制器提供在CAN總線基礎(chǔ)上的標(biāo)準(zhǔn)化高速網(wǎng)絡(luò)連接,在車輛電子裝置之間實(shí)現(xiàn)高速數(shù)據(jù)共享,有效減少電子線束的數(shù)量,提高車輛電子控制系統(tǒng)的靈活性、可靠性、可維修性及標(biāo)準(zhǔn)化程度。
1.1 SAE J1939協(xié)議簡(jiǎn)介
J1939協(xié)議包括12個(gè)子標(biāo)準(zhǔn)。本文主要涉及車輛應(yīng)用層及應(yīng)用層診斷2個(gè)子標(biāo)準(zhǔn)。車輛應(yīng)用層子標(biāo)準(zhǔn)(SAEJl939/71)規(guī)定了車輛控制控制參數(shù)的格式,包括參數(shù)范圍、分辨率、類型及刷新率,數(shù)據(jù)場(chǎng)各位的含義;應(yīng)用層診斷子標(biāo)準(zhǔn)(SAEJl939/73)主要針對(duì)排放的要求規(guī)定了12種診斷結(jié)果信息。
1.2 協(xié)議數(shù)據(jù)單元
SAE J1939應(yīng)用層協(xié)議采用協(xié)議數(shù)據(jù)單元PDU傳遞信息,PDU由優(yōu)先級(jí)P、保留位R、數(shù)據(jù)頁(yè)DP、PDU格式PF、PDU特定域PS(可作為目標(biāo)地址、組擴(kuò)展或?qū)S?、源地址SA和數(shù)據(jù)域7部分組成,如表1所示。每個(gè)PDU相當(dāng)于CAN協(xié)議中的一幀,它們將被分組封裝在一個(gè)或多個(gè)CAN數(shù)據(jù)幀中,通過(guò)物理介質(zhì)傳送到其他網(wǎng)絡(luò)裝置。本文引用地址:http://cafeforensic.com/article/197663.htm
2 總體方案設(shè)計(jì)
在開發(fā)過(guò)程中,通過(guò)調(diào)用USBCAN-Ⅱ接口卡庫(kù)端口函數(shù),利用CAN總線實(shí)現(xiàn)上位機(jī)與下位機(jī)之間的通訊。發(fā)動(dòng)機(jī)總線數(shù)據(jù)模擬器通過(guò)USBCAN-II智能接口向總線儀表發(fā)送數(shù)據(jù)并實(shí)時(shí)顯示,達(dá)到測(cè)試儀表的目的。系統(tǒng)結(jié)構(gòu)如圖1所示。
該系統(tǒng)主要包括6大功能模塊,分別是發(fā)動(dòng)機(jī)參數(shù)報(bào)文發(fā)送模塊、發(fā)動(dòng)機(jī)故障報(bào)文發(fā)送模塊、CAN幀信息顯示模塊、虛擬儀表模塊、實(shí)時(shí)參數(shù)曲線模塊和儀表測(cè)試模塊。系統(tǒng)軟件采用C#環(huán)境開發(fā),運(yùn)行于Windows平臺(tái)。系統(tǒng)開發(fā)的總體流程是:首先實(shí)現(xiàn)與USBCAN-Ⅱ接口卡的通訊,連接成功后,在主界面選擇需要實(shí)現(xiàn)的功能,然后執(zhí)行相關(guān)模塊的操作。在關(guān)閉程序的同時(shí),關(guān)閉USBCAN-Ⅱ接口卡。程序開發(fā)流程如圖2所示。
評(píng)論