胡俊勇,虞衛飛,杜成磊,李杰
(安徽江淮汽車集團股份有限公司,安徽 合肥 230601)
進入21世紀,我國汽車工業在產銷規模、產品開發、市場開拓、對外開放、結構調整等方面取得了相當大的成就。“十一五”以來,國內市場持續火爆,產銷量迅速攀升,2009年已躍居世界第一位,2016年乘用車銷量首次超過2400萬輛,增幅比上年明顯提升[1]。
市場需求的迅速釋放加速了汽車電子市場的增長,隨著近幾年來消費者對汽車安全性、舒適性和娛樂性的需求不斷增加,引發整車裝備電子設備的熱潮。至2011年我國汽車電子市場規模占全球的比例已經超過 25%,預計2020年,電子系統占整車成倍50%。這其中動力總成電子系統占整個市場25%~30%,但其中大部分被外資企業所掌控,這就需要自主品牌在電子系統自主研發上提高能力以降低成本,進而在汽車行業中立于不敗之地。而軟件開發則是整個汽車電子產品開發的核心,軟件開發品質好壞直接決定了產品的品質,因此開發出穩定可靠的軟件是汽車電子產品開發中的中之重。
按照傳統的軟件開發方法,目標軟件往往要等到木已成舟之后才交由用戶認可,此時由于規格說明難以完善、需求的變更、以及通信中的模糊和誤解,成為軟件開發順利推進的障礙。開發人員往往會對目標軟件提出諸多修改,造成人力、物力上的巨大浪費。控制器的開發人員,往往面多兩大難題:
1)控制策略開發人員無法將(如 Matlab/Simulink)開發的控制算法軟件在硬件上快速實現,以驗證與實際控制對象之間連接時,控制算法的功能實現與性能;并且,無法對控制算法進行快速反復的修改驗證,找到合適的控制方案[2]。
2)由于工程并行設計的原因,當產品型控制器硬件生產出來后,控制對象還處于研制階段或被控對象并沒有實現,測試工程師無法在早期完成獨立的控制器測試。
為提高產品開發效率,減小上市風險,同時也為了減輕工程師的工作量,縮短開發周期,降低開發成本,汽車電子系統開發急需要一種很好的開發模式,將控制策略與底層軟件、硬件以及硬件驅動、通訊協議等有效的分割開,讓主機廠更多的投入到控制策略算法當中。所以汽車電子系統開發提出了基于模型的V模式的開發流程,并以此來完成從需求定義到最終產品的全過程。
基于以上原因,催生了快速控制原型的開發方法。它的基本原理是利用快速原型控制器硬件來代替產品的控制器硬件,在建模仿真平臺上搭建并修改系統模型,通過自動代碼生成工具自動生成模型源代碼并將其經過編譯鏈接后下載到快速原型控制器中,進行算法仿真和驗證,快速原型技術能縮短研發周期,降低研發成本,提高電控系統的質量。自動代碼生成技術是快速原型開發中的關鍵環節,控制模型源代碼通過代碼生成工具自動生成,無需手動編寫系統的控制程序[3]。
本課題選用的是ETAS 公司的FlexECU快速開發原型,通過使用 Simulink完成控制策略與算法的開發設計,使用ETAS EHOOKS軟件將軟件策略對應FlexECU自動生成可執行代碼,并通過INCA,將其刷寫到ECU中,并進行標定調試。
快速原型FlexECU以Bosch量產的MED17作為平臺,Infineon TriCore控制器,增加ETAS ETK功能,并通過ETAS EHOOKS(信號旁通)開放其全部軟硬件接口給上層應用,可以方便快捷的將Sumulink/ASCET的模型下載到其中,實現控制功能,而無需關心操作系統與底層驅動,因此可以對控制策略模型進行快速的驗證工作。
FlexECU原型是用于 ECU開發的完成開發環境,基于集成的軟硬件系統,與 MATLAB/Simulink等建模工具無縫組合,是用于發動機臺架或整車測試的理想測試工具選擇,非常是用于現有ECU上的旁路開發技術。
ETAS的EHOOKS是一種軟件工具,有助于將旁路掛鉤高效插入ECU軟件中。EHOOKS用戶無需了解軟件細節,即可以旁路掛鉤直接放入 HEX&A2L文檔中——無需訪問ECU源代碼或ECU軟件創建環境。
先進的掛鉤插入技術提供精確、可靠的結果。支持多種掛鉤類型,提供適用于標定、軟件測試、軟件開發以及功能開發的可升級解決方案。
ETAS EHOOKS是一種易于使用的軟件工具,用于將旁路掛鉤插入ECU軟件中,無需其他ECU信息,即可將旁路掛鉤直接放入HEX & A2L文檔中。

表1
本文以已經量產的 1.5L四缸自然吸氣汽油發動機作為控制目標,進行電控系統改造,首先需要對電控系統零部件進行參數匹配。由于FlexECU的開發ECU硬件接口幾乎涵蓋了目前常用的傳感器與執行器元器件,所以該發動機的大部分傳感器與執行器予以保留,由于所采用的快速原型FlexECU沒有內置點火線圈驅動電路,故需要采用外驅點火線圈的設計方案,如圖1所示,其他電控零部件沿用。

圖1 帶驅動點火線圈
目標發動機的傳感器與執行器與 FlexECU匹配完成后.需對原發動機進行信號采集同時對功能進行測試,記錄的信息將會應用在發動機控制策略的位置管理及故障管理等模塊中,也是臺架試驗發動機點火成功的基礎工作之一。
FlexECU為其開發ECU提供了ETK通訊接口、至PC的接口硬件,以及完整的線束,系統開發平臺的搭建過程中要完成控制器接口與外部硬件的匹配和線束定義工作。至此系統開發平臺的準備工作已經完成。
系統建立的首要工作是根據需求建立系統構架。該部分最為基礎但很關鍵,ECU軟件涉及發動機控制、零部件和電路診斷、排放監控、安全監控和通訊協議等功能,功能覆蓋面廣,模塊數量多。1.5L四缸自然吸氣汽油發動機原來所匹配的量產ECU軟件共有431個模塊,包括扭矩計算、氣路控制、噴油控制、點火控制、排放控制、故障診斷、ETC監控、接口協議等功能。
本項目開發目標為基礎發動機控制軟件,使用Simulink[4]進行應用層軟件(模型)開發,初期開發具備扭矩計算、氣路控制、噴油控制、點火控制等基本功能即可。分為6個主要功能:
1)AS(進氣系統Air System);
2)ES(排放系統Exhaust System);
3)ETS(扭矩控制Engine Torque Structure);
4)FS(燃油系統Fuel System);
5)IS(點火系統Ignition System);V
6)EH(整車需求Vehicle functions );
2.2.1 模型庫開發
a)模型接口庫:17個模型接口單元,包含全部模型用到的輸入輸出接口;
b)基本運算庫:包含基本運算(加減乘除等)、開關選擇、判斷、位選擇等運算邏輯;
c)查表模塊
d)子集封裝模塊
e)觸發子系統
f)延遲
g)時鐘
h)低通濾波
i)PID
j)其他
2.2.2 ECU模型
模型累計搭建76個;軟件整體分為進氣、扭矩、點火、噴油等幾大模塊,圍繞臺架點火為主要開發目標進行搭建。

圖2 Simulink ECU軟件模型
VEH子系統,該系統功能是將油門踏板的電壓信號轉換為開度信號,其中包括校驗、濾波等;

圖3 VEH子系統
ETC子系統,該子系統是扭矩計算模塊,駕駛員扭矩需求計算及變化限制、協調扭矩干預、氣路協調扭矩干預、發動機轉速限制、怠速控制扭矩儲備、怠速控制名義發動機轉速、怠速控制的運行條件、怠速控制扭矩控制器、名義扭矩的名義空氣質量、額定點火正時的扭矩計算、發動機扭矩計算、扭矩接口基本計算、計算最大指示扭矩、發動機扭矩協調最小值、扭矩:發動機轉速穩定、發動機扭矩損失;

圖4 ETC子系統
AS子系統,進氣系統計算模塊,負責將傳感器的電壓信號計算為進氣壓力,從而計算為充氣效率;

圖5 AS子系統
FS子系統,噴油基本功能、起動后和暖機噴油、起動噴油、Lambda協調、混合氣控制、噴射角的計算、相對燃油質量rk計算噴油脈寬ti、噴油關斷協調;

圖6 FS子系統
IS子系統,計算點火角度、基本點火角、計算最大點火推遲限制、點火角計算、點火提前和延遲限制后的點火角計算、點火線圈閉合時間計算,初期可固定值。

圖7 IS子系統
輸入/輸出部分的任務是將所有傳感器和執行器信號與ECU接口硬件進行匹配。當特定數據源類型取決于硬件時,Matlab默認數據類型為double而此平臺ECU默認處理的數據類型為 32位單浮點[5],輸入為 lO位 A/D轉換器,對應unitl6數據類型,所以在信號處理環節應加人數據類型轉換模塊。如圖4所示,在輸入部分加入相應傳感器變量的監測(Probe)模塊,并進行組別的設置。當代碼刷人FlexECU控制器后,通過標定軟件便能快速找到相應的變量,大大方便了數據管理和變量的監測。
此系統傳感器包括:進氣溫度、進氣壓力、節氣門位置、爆震傳感器、氧傳感器、油門踏板位置、曲軸轉速和位置、凸輪軸位置傳感器、水溫傳感器。
輸出部分與之匹配的主要執行器為4個帶驅動的高壓點火線圈、4個電壓驅動型的噴油線圈、1個H橋驅動的電子節氣門電機,根據執行器特性和參數選擇相應輸出接口并進行匹配。
由于FlexECU開發平臺采用汽車產品級硬件,故省卻了大量的輸入/輸出信號調節和接口匹配的工作。

圖8 FlexECU 的庫函數
使用 simulink 進行應用層軟件(模型)開發,應用層軟件調用FlexECU 的底層接口時,需要調用FlexECU 的庫函數,采用EHOOKS工具對模型進行集成設計。
EHOOKS 配套的 Simulink 集成包提供了用于對 EHOOKS進行配置的 Simulink 模塊,包括編譯配置模塊、函數調用模塊、數據讀取模塊等。集成設計完成之后的模型見圖9。

圖9 模型編譯配置
EHOOKS 編譯配置模塊需要放置在模型的最頂層,并且在使用其他的配置模塊時,必須對編譯配置模塊進行設置。
1)將EHOOKS 編譯配置模塊拖拽到simulink 模型中。

圖10 ECU模型EHOOKS配置
2)選擇對應的編譯配置文件

圖11 編譯文件建立
3)編譯文件配置

圖12 HEX與A2L文件配置

圖13 變量配置
EHOOKS集成了編譯器,當系統模型建立完畢后編譯器會將模型自動生成可供刷寫的HEX文件,同時生成 A2L文件以標定使用 。用INCA將HEX文件刷入ECU,調入生成的A2L文件,使用ETAS ES581硬件連接器可快速完成代碼刷寫的過程。
FlexECU支持ETK協議,采用DAQ變量測量模式進行標定。系統組成如圖5所示。且與ETAS INCA無縫對接。本系統采用ETK標定軟件,硬件連接器采用ETAS公司的ES581產品。
標定的主要任務為對數據庫中的變量進行優化調整,變量包括冷起動時控制修正、快怠速節氣門電機步進控制修正、點火/噴油提前角修正、PWM主控頻率量等。
1)電控系統的開發是一項復雜的過程,本文以整個開發流程著手。基于FlexECU快速原型開發平臺。嘗試在Matlab/Simulink環境中以圖形化的語言完成了從確定設計要求至標定的一系列工作。
2)基于此開發平臺,整個開發過程的主要工作集中在應用程序的編寫和策略仿真。快速實現了目標發動機的電控系統改造的前期工作。
3)通過標定基本上實現了四缸汽油機的控制功能,整個開發過程為后續的系統優化和產品化積累了大量的工作經驗。
參考文獻
[1] 高海字,陸文昌,商哲,甄騰.基于MotoTron平臺的發動機ECU快速原型開發[J]. 柴油機設計與制造,2008,15(3):16-20.
[2] 李儒龍,陳衛方,張凡武.基于 Simulink的電子節氣門控制策略開發[J].2011,(6):14-18.
[3] 章健勇,呂世亮,陳林,尹 琪.基于快速原型系統 的汽油機控制策略開發[J].,2011,(2):25-28.
[4] The Mathworks,Inc,Real-Time Workshop Embedded Coder User SGuide,20l0.
[5] The Mathworks,Inc,Stateflow User'S Guide,2010.