基于SAE J1939協(xié)議的發(fā)動(dòng)機模擬系統開(kāi)發(fā)
C#調用接口庫函數的方法:(1)將庫函數文件置于工作目錄下;(2)聲明using System.Runtime.InteropServices;(3)聲明ZLGCAN系列接口卡信息的數據類(lèi)型;(4)導入,以打開(kāi)設備函數為例,其他功能函數引用與之類(lèi)似。打開(kāi)設備函數為:
4 發(fā)動(dòng)機模擬系統設計
該系統按功能分為發(fā)動(dòng)機參數報文、發(fā)動(dòng)機故障報文、發(fā)動(dòng)機儀表測試。為了便于單獨使用各個(gè)功能界面,采用復合界面形式。其運行界面如圖4所示。
4.1 發(fā)動(dòng)機參數報文發(fā)送模塊
該模塊是類(lèi)比現場(chǎng)測試的一組數據,按照適用于BOSCH高壓共軌系統的歐III發(fā)動(dòng)機基于SAE J1939的CAN通訊規范,將幀ID與代表發(fā)動(dòng)機參數的數據字節位置相對應,同時(shí)可通過(guò)修改相關(guān)字節,改變所要發(fā)送的參數值。
若想發(fā)送轉速2 000 r/m,數據在報文的第4、5字節。發(fā)送數據的第4、5字節為2 000/0.125=16 000轉化為兩字節,注意高字節置于第5字節,低字節置于第4字節。同理可查表計算其他發(fā)動(dòng)機參數,如潤滑油壓力、冷卻液溫度、蓄電池電壓、燃油油位,ECU溫度,進(jìn)氣溫度,機油壓力,節氣門(mén)位置等參數值所對應的幀ID及在數據幀的位置。
4.2 發(fā)動(dòng)機故障報文發(fā)送模塊
當發(fā)動(dòng)機發(fā)生故障時(shí),傳感器所采集的數據通過(guò)EMR的單片機分析處理,決定該采集數據是否在正常范圍內或有效。如果該數據未在正常范圍內或無(wú)效,EMR將向上位機發(fā)送故障幀,表明該傳感器對應的元件存在故障。該系統設計的總線(xiàn)儀表增加了故障診斷功能,可借助于液晶顯示屏實(shí)時(shí)顯示發(fā)動(dòng)機的故障類(lèi)型。
在故障診斷方面,SAE J1939定義了19個(gè)診斷信息(Diagnostic Message,簡(jiǎn)稱(chēng)DM)。該故障報文發(fā)送模塊主要采用DMl(顯示當前故障)功能。DM由診斷故障燈代碼(2字節)和診斷故障碼DTC (4字節)組成。診斷故障碼DTC的長(cháng)度為4字節,包括可疑參數碼SPN(19位)、故障類(lèi)型代碼FMI(5位)、故障發(fā)生次數OC(7位)、SPN轉換方式CM(1位)。
該系統設計共定義400多個(gè)故障,將故障類(lèi)型代碼FMI與SPN相結合進(jìn)行定義,定義時(shí)遵循SPN和FMI的組合與故障類(lèi)型一一對應的原則。
4.3 發(fā)動(dòng)機儀表測試模塊
發(fā)動(dòng)機儀表測試模塊是將虛擬儀表的指針運行速度與開(kāi)發(fā)儀表相比較,測試開(kāi)發(fā)儀表的步進(jìn)電動(dòng)機驅動(dòng)情況。由于只有車(chē)速表、油壓表、水溫表、電壓表等儀表數據是由發(fā)動(dòng)機CAN總線(xiàn)提供的,所以測試儀表只能模擬這4個(gè)表盤(pán)的步進(jìn)電機驅動(dòng)情況。該測試儀表采用Dundas儀表向導,該產(chǎn)品能夠完全支持Visual Studio 2005特征,包括智能標記,高級數據綁定等。Dundas儀表向導提供豐富的素材庫,利用該向導,用戶(hù)可以設計出應用于各領(lǐng)域的儀表控件外形和數據指示方式。用戶(hù)只需編寫(xiě)相關(guān)的儀表動(dòng)態(tài)變化和響應部分代碼即可實(shí)現虛擬儀表功能。
5 結論
介紹基于SAE J1939協(xié)議的發(fā)動(dòng)機模擬系統設計。該系統具有發(fā)動(dòng)機工況選擇功能,與待開(kāi)發(fā)總線(xiàn)儀表連接,可以模擬輸出發(fā)動(dòng)機的各項工況數據。一旦選定某個(gè)報文,該報文代表的發(fā)動(dòng)機參數即在報文規定的更新率下持續發(fā)送到待開(kāi)發(fā)總線(xiàn)儀表的總線(xiàn)接口。以此系統設計軟件替代真實(shí)的發(fā)動(dòng)機,可以隨機檢測各項發(fā)動(dòng)機工況,且具有人為可選擇的靈活性,選擇范圍較真實(shí)發(fā)動(dòng)機更大。在線(xiàn)模擬系統不受工作環(huán)境限制,可隨時(shí)隨地進(jìn)行檢測。該系統為實(shí)驗室的一套發(fā)動(dòng)機試驗系統的一部分,也可以配合教學(xué)實(shí)驗課程。通過(guò)實(shí)驗,軟件各部分功能運行良好,對總線(xiàn)儀表開(kāi)發(fā)具有一定價(jià)值。隨著(zhù)CAN總線(xiàn)應用領(lǐng)域的不斷發(fā)展,SAE J1939協(xié)議必將得廣泛應用。
評論