?

基于CANape-Matlab聯合仿真的旁通技術研究與實現

2018-07-04 07:25馬開獻
汽車電器 2018年6期
關鍵詞:旁通子程序原型

馬開獻

(維克多汽車技術上海有限公司,上海 200050)

隨著科技的發展,時代的進步,開發工具在ECU開發當中起到越來越重要的作用。同時一些先進的開發流程和開發理念也逐漸在國內被采用,如基于模型開發的V-Model流程。一旦ECU批量生產,如果對其功能進行升級,目前比較通用的方法就是采用旁通技術。

旁通技術特別適于為ECU添加新的算法以及對原有算法的優化。原有的ECU控制器仍然執行其全部應用程序,而新的算法同時在原型系統上執行。在ECU設計階段可通過旁通技術獲得極大的設計靈活性,使設計不受原有ECU的RAM、ROM、I/O以及Processor處理能力的約束。

1 CANape簡介

CANape是由德國VECTOR公司開發的,可用于ECU開發、標定、診斷和測量數據采集的綜合性工具。CANape主要用于ECU的參數優化,它在系統運行期間同時標定參數值和采集測量信號。同時CANape支持眾多的接口,如CAN、LIN、FlexRay、MOST、Ethernet、K-Line等,如圖1所示。也支持很多協議,如KWP2000、UDS、CCP、XCP等。目前CANape與Matlab無縫集成,使得CANape強大的通信功能與Matlab/Simulink強大的功能建模能力結合在一起,為ECU的開發提供更有力的支持。CANape通過ASAP3協議可以與臺架進行結合,通過控制臺架的上位機軟件,實現自動定標功能。使用CANape自帶的腳本語言,用戶可以開發與診斷相關的Flash編程任務。使用腳本語言可執行診斷函數,并從ODX Flash容器中讀取必要的信息和數據??梢允褂肙DX-F容器自動完成Flash功能,也可通過用戶輸入交互進行。CANape具備全面測試并分析相關的診斷通信的能力,這使它成為了進行Flash編程的一個理想開發環境。

圖1 CANape支持的接口類型

為了縮短Flash編程過程的執行時間,VECTOR提供了一種壓縮傳輸數據的方法,可使用CANape中針對Flash Bootloader CANfbl的擴展功能和相關的壓縮功能。為優化Flash過程,CANape也支持對多個ECU并行編程,同時支持旁通技術的開發。

2 旁通的原理及實現

在ECU開發過程中,經常會頻繁地將重要功能導出到外部仿真系統,這樣可以花最小的代價來運行這些功能。直到仿真模型中的算法達到一定的成熟度,開發工程師可以將仿真模型生成代碼,這些代碼可與其它的ECU代碼一起編譯并燒寫到ECU中。然而,在此之前,可以使用一種被稱作“旁通”的技術(該技術耦合了真實ECU及其模型),通過旁通可以在開發初期不依賴硬件進行測試和優化算法。

在使用XCP的旁通技術中,XCP主設備使用DAQ從ECU中讀取數據,將這些數據作為輸入值發給模型并且使用STIM將模型返回的結果發送回ECU。使用普通的PC機平臺就足以滿足旁通和建模的要求。CANape作為一個高度優化的XCP主設備,可以同時處理真實ECU及在PC機上運行的算法模型之間的通信。

ECU中需要被旁通的功能通過總線網絡把該子功能的參數變量傳遞給原型系統,并由原型系統對獲得的參數變量處理完畢后,同樣通過總線網絡返回原型系統的處理結果,ECU用該結果替代子程序返回值,從而實現對ECU子功能的旁通。實現旁通原理圖如圖2所示。

圖2 實現旁通原理圖

例如ECU中需要被旁通的子功能y=f(x)的參數x通過XCP協議以數據包的形式傳遞給原型系統;原型系統調用相對應的旁通子程序y’=f’(x’)完成對參數x的運算后,通過STIM返回函數值y’。由于子程序中的y’與y在ECU中被設置為相同地址,函數f(x)的返回值y被y’取代,從而實現了原型系統f’(x’)對ECU子程序f(x)的旁通。旁通技術實現參數傳遞流程圖如圖3所示。

圖3 旁通技術實現參數傳遞流程圖

根據原理建立簡單的模型來驗證其可行性,其模型通過Matlab/Simulink進行創建,實現旁通模型如圖4所示。

圖4 實現旁通模型

在該模型中,通過加法算法進行旁通計算,對于加法算法有2個輸入:輸入1為ECU內部算法經過計算進行輸出,該變量名為Channel1;輸入2為常值,該變量名為Testbyte0,可以通過CANape對其值進行實時修改;經過算法計算過后進行輸出到ECU中,該變量名字為Period。在Simulink環境中對模型進行配置,選擇固定步長,選擇cnp.tlc目標平臺,編譯生成該模型對應的DLL,然后把DLL調入到CANape中,把Input1和ECU中的某一個變量進行關聯,同時把Output也與ECU中的某一個變量進行關聯,此時就建立好旁通,在CANape中設置Input1和Output的周期均為10ms,通過XCP協議命令進行上傳和下載,從而實現旁通中的DAQ和STIM命令。仿真結果如圖5所示。

圖5 仿真結果圖

根據仿真結果可知:當輸入2發生變化時,其輸出也隨之變化,同時Simulink的輸出又是ECU的輸入,因此輸入1也隨之發生變化,從而實現了旁通的功能。

3 結論

根據CANape和Simulink的聯合仿真結果,可知CANape軟件平臺可以實現旁通技術,同時相對于硬件平臺的成本已經大大降低。通過旁通技術,可以加快ECU的開發,縮短開發周期,提高開發效率。

猜你喜歡
旁通子程序原型
數控加工中數控程序的簡化
混合級聯特高壓直流輸電系統旁通對過負荷保護優化
子程序在數控車編程中的創新應用
包裹的一切
電控增壓器旁通閥的控制及診斷方法
儲備
《哈姆雷特》的《圣經》敘事原型考證
2014款凱迪拉克XTS車急加速動力不足
人人敬愛的圣人成為了 傳說人物的原型
在數控車床上加工軟軸零件
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合