vFlash專為汽車OEM和ECU供應(yīng)商中執(zhí)行刷寫任務(wù)的人員所設(shè)計,用以實現(xiàn)高效的ECU刷寫。vFlash可以通過標(biāo)準(zhǔn)軟件的圖形界面進行控制,也可以簡單地作為庫集成到現(xiàn)有環(huán)境中實現(xiàn)自動刷寫。使用特別版本“vFlash Station”,可以實現(xiàn)多達8個ECU的并行刷寫。此外,使用vFlash Option Remote,可以實現(xiàn)遠程刷寫任務(wù)。
vFlash采用定制化插件vFlashTemplate定義不同刷寫規(guī)范的刷寫流程,全球已經(jīng)有超過80家OEM定制vFlashTemplate。每個vFlashTemplate對應(yīng)一份刷寫規(guī)范或一家OEM相同流程的不同總線刷寫規(guī)范。換句話說,同一個車型遵循同一份刷寫規(guī)范,該車型上所有ECU可以使用同一個vFlashTemplate。
然而,在刷寫規(guī)范所定義的統(tǒng)一刷寫流程之外,不同的ECU可能還需要執(zhí)行不同的動作來滿足該ECU或用戶特定的任務(wù),例如刷寫前讀取ECU相關(guān)配置信息并記錄,刷寫后將這些配置信息重新寫入新的軟件中,同時生成報告。vFlash的自定義操作-Custom Action即可滿足這樣的任務(wù)需求。Custom Action分為Pre Custom Action和Post Custom Action(圖1),即刷寫執(zhí)行前的自定義動作和刷寫執(zhí)行后的自定義動作。
Custom Action的開發(fā)可以采用手動和自動兩種方式。
01
手動開發(fā)Custom Action
Custom Action是一個常規(guī)的C#/.NET程序集。但是,Custom Action開發(fā)必須調(diào)用一組vFlash所需的附加庫,以便執(zhí)行診斷任務(wù)。可調(diào)用的附加庫為:
Vector.Diagnostics
Vector.vFlash.CustomActions
Vector.vFlash.Tools
Vector Diagnostics API是Vector Diagnostic Scripting(VDS)診斷腳本庫,通過該腳本庫可以調(diào)用診斷數(shù)據(jù)庫CDD或ODX中描述的診斷服務(wù),從而快速有效地獲取診斷服務(wù)的發(fā)送與接收指令。
Vector vFlash Custom Action API定義的函數(shù)通常用于與vFlash軟件相關(guān)的Custom Action的動作,例如CustomActionAttribute接口函數(shù)提供將數(shù)據(jù)從vFlash傳輸給Custom Action的方式,IAuthenticationProperties接口函數(shù)用于向ECU驗證vFlash的信息。
Vector vFlash Tools API用于在Custom Action中生成報告。
用戶可以在vFlash軟件界面中、安裝路徑下或幫助文檔中獲取以上API的詳細定義、描述以及示例工程(圖2)。
根據(jù)這些API以及參考示例工程,用戶通過C#編程軟件(例如Microsoft Visual Studio)實現(xiàn)所需的Custom Action,編譯生成DLL動態(tài)鏈接庫。
此外,為了簡化用戶編程的工作量,在vFlash軟件安裝包中附帶有Visual Studio Extension for Custom Action Development插件安裝(圖3)。
該插件適用于Visual Studio 2015和2017。通過該插件,可以在新建工程時選擇vFlash Custom Action模板(圖4),該模板工程中已經(jīng)正確關(guān)聯(lián)了Vector Diagnostics、Vector vFlash Custom Actions等相關(guān)程序集(圖5),便于用戶快速開啟程序編輯。
02
自動開發(fā)Custom Action
參數(shù)化診斷儀Indigo具有記錄診斷腳本的功能Script Recording(詳情可見《基于參數(shù)化診斷儀Indigo的二次開發(fā)》),該功能記錄的診斷序列可保存為vFlash Custom Action腳本提供給vFlash工程使用。使用Indigo的腳本記錄功能,無需用戶掌握編程技巧,即可快速有效地定制診斷序列腳本。
在Indigo的腳本記錄器的界面上(圖6),可以通過選擇激活的ECU列表,選擇需要執(zhí)行診斷操作的ECU;通過左側(cè)的服務(wù)列表執(zhí)行具體的診斷服務(wù);同時可以通過菜單行的確認對話框等窗口定義腳本中所需的非診斷序列的執(zhí)行動作,滿足腳本執(zhí)行過程中的用戶交互的相關(guān)功能。
在完成所需的腳記錄后,可將腳本另存為vFlash Custom Action腳本(圖7):
保存腳本之前還可以根據(jù)用戶需求設(shè)置vFlash Custom Action屬性(圖8),確認后即可保存C#工程:
通過Indigo的腳本記錄器生成的腳本工程,還可以通過C#編譯軟件二次開發(fā),滿足用戶更多的自定義需求,編譯生成DLL動態(tài)鏈接庫。
03
Custom Action的使用
手動或自動開發(fā)Custom Action的DLL動態(tài)鏈接庫之后,可以在vFlash工程中,通過Configure-Custom Action頁面加載相關(guān)ECU的CDD文件以及開發(fā)好的DLL文件,同時對相關(guān)屬性進行配置(圖9)。
添加Custom Action內(nèi)容的vFlash工程在執(zhí)行時,可在軟件刷寫界面查看Custom Action執(zhí)行的情況以及Trace(圖10):
vFlash Custom Action的主要用例:
質(zhì)量保證 – 例如在數(shù)據(jù)庫或報告中讀取ECU信息并記錄刷寫成功與否信息;
標(biāo)簽打印 – 讀取序列號等ECU信息并將信息發(fā)送到打印機;
恢復(fù)ECU信息 – 刷寫前從ECU讀取數(shù)據(jù),刷寫后重新寫入/恢復(fù)數(shù)據(jù);
參數(shù)化 – 刷入?yún)?shù)化系統(tǒng)后將數(shù)據(jù)寫入ECU。
04
小結(jié)
vFlashTemplate固化刷寫流程的主序列,保證刷寫功能的穩(wěn)定性和可靠性,目前已有80多個OEM的vFlashTemplate可供客戶使用。
Custom Action能夠滿足刷寫流程的用戶自定義應(yīng)用場景,在不改動刷寫流程主序列的前提下,實現(xiàn)刷寫序列的定制化。
通過Custom Action的補充,在刷寫的同時實現(xiàn)ECU所需數(shù)據(jù)的自動寫入或報告自動生成,使得刷寫工程更完整,更易用。
責(zé)任編輯:haq
-
ecu
+關(guān)注
關(guān)注
14文章
887瀏覽量
54536 -
Vector
+關(guān)注
關(guān)注
3文章
60瀏覽量
8623
原文標(biāo)題:vFlash的用戶自定義操作-Custom Action
文章出處:【微信號:VectorChina,微信公眾號:Vector維克多】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論