胡俊勇,虞衛(wèi)飛,杜成磊,李杰
(安徽江淮汽車集團(tuán)股份有限公司,安徽 合肥 230601)
進(jìn)入21世紀(jì),我國汽車工業(yè)在產(chǎn)銷規(guī)模、產(chǎn)品開發(fā)、市場(chǎng)開拓、對(duì)外開放、結(jié)構(gòu)調(diào)整等方面取得了相當(dāng)大的成就?!笆晃濉币詠恚瑖鴥?nèi)市場(chǎng)持續(xù)火爆,產(chǎn)銷量迅速攀升,2009年已躍居世界第一位,2016年乘用車銷量首次超過2400萬輛,增幅比上年明顯提升[1]。
市場(chǎng)需求的迅速釋放加速了汽車電子市場(chǎng)的增長,隨著近幾年來消費(fèi)者對(duì)汽車安全性、舒適性和娛樂性的需求不斷增加,引發(fā)整車裝備電子設(shè)備的熱潮。至2011年我國汽車電子市場(chǎng)規(guī)模占全球的比例已經(jīng)超過 25%,預(yù)計(jì)2020年,電子系統(tǒng)占整車成倍50%。這其中動(dòng)力總成電子系統(tǒng)占整個(gè)市場(chǎng)25%~30%,但其中大部分被外資企業(yè)所掌控,這就需要自主品牌在電子系統(tǒng)自主研發(fā)上提高能力以降低成本,進(jìn)而在汽車行業(yè)中立于不敗之地。而軟件開發(fā)則是整個(gè)汽車電子產(chǎn)品開發(fā)的核心,軟件開發(fā)品質(zhì)好壞直接決定了產(chǎn)品的品質(zhì),因此開發(fā)出穩(wěn)定可靠的軟件是汽車電子產(chǎn)品開發(fā)中的中之重。
按照傳統(tǒng)的軟件開發(fā)方法,目標(biāo)軟件往往要等到木已成舟之后才交由用戶認(rèn)可,此時(shí)由于規(guī)格說明難以完善、需求的變更、以及通信中的模糊和誤解,成為軟件開發(fā)順利推進(jìn)的障礙。開發(fā)人員往往會(huì)對(duì)目標(biāo)軟件提出諸多修改,造成人力、物力上的巨大浪費(fèi)??刂破鞯拈_發(fā)人員,往往面多兩大難題:
1)控制策略開發(fā)人員無法將(如 Matlab/Simulink)開發(fā)的控制算法軟件在硬件上快速實(shí)現(xiàn),以驗(yàn)證與實(shí)際控制對(duì)象之間連接時(shí),控制算法的功能實(shí)現(xiàn)與性能;并且,無法對(duì)控制算法進(jìn)行快速反復(fù)的修改驗(yàn)證,找到合適的控制方案[2]。
2)由于工程并行設(shè)計(jì)的原因,當(dāng)產(chǎn)品型控制器硬件生產(chǎn)出來后,控制對(duì)象還處于研制階段或被控對(duì)象并沒有實(shí)現(xiàn),測(cè)試工程師無法在早期完成獨(dú)立的控制器測(cè)試。
為提高產(chǎn)品開發(fā)效率,減小上市風(fēng)險(xiǎn),同時(shí)也為了減輕工程師的工作量,縮短開發(fā)周期,降低開發(fā)成本,汽車電子系統(tǒng)開發(fā)急需要一種很好的開發(fā)模式,將控制策略與底層軟件、硬件以及硬件驅(qū)動(dòng)、通訊協(xié)議等有效的分割開,讓主機(jī)廠更多的投入到控制策略算法當(dāng)中。所以汽車電子系統(tǒng)開發(fā)提出了基于模型的V模式的開發(fā)流程,并以此來完成從需求定義到最終產(chǎn)品的全過程。
基于以上原因,催生了快速控制原型的開發(fā)方法。它的基本原理是利用快速原型控制器硬件來代替產(chǎn)品的控制器硬件,在建模仿真平臺(tái)上搭建并修改系統(tǒng)模型,通過自動(dòng)代碼生成工具自動(dòng)生成模型源代碼并將其經(jīng)過編譯鏈接后下載到快速原型控制器中,進(jìn)行算法仿真和驗(yàn)證,快速原型技術(shù)能縮短研發(fā)周期,降低研發(fā)成本,提高電控系統(tǒng)的質(zhì)量。自動(dòng)代碼生成技術(shù)是快速原型開發(fā)中的關(guān)鍵環(huán)節(jié),控制模型源代碼通過代碼生成工具自動(dòng)生成,無需手動(dòng)編寫系統(tǒng)的控制程序[3]。
本課題選用的是ETAS 公司的FlexECU快速開發(fā)原型,通過使用 Simulink完成控制策略與算法的開發(fā)設(shè)計(jì),使用ETAS EHOOKS軟件將軟件策略對(duì)應(yīng)FlexECU自動(dòng)生成可執(zhí)行代碼,并通過INCA,將其刷寫到ECU中,并進(jìn)行標(biāo)定調(diào)試。
快速原型FlexECU以Bosch量產(chǎn)的MED17作為平臺(tái),Infineon TriCore控制器,增加ETAS ETK功能,并通過ETAS EHOOKS(信號(hào)旁通)開放其全部軟硬件接口給上層應(yīng)用,可以方便快捷的將Sumulink/ASCET的模型下載到其中,實(shí)現(xiàn)控制功能,而無需關(guān)心操作系統(tǒng)與底層驅(qū)動(dòng),因此可以對(duì)控制策略模型進(jìn)行快速的驗(yàn)證工作。
FlexECU原型是用于 ECU開發(fā)的完成開發(fā)環(huán)境,基于集成的軟硬件系統(tǒng),與 MATLAB/Simulink等建模工具無縫組合,是用于發(fā)動(dòng)機(jī)臺(tái)架或整車測(cè)試的理想測(cè)試工具選擇,非常是用于現(xiàn)有ECU上的旁路開發(fā)技術(shù)。
ETAS的EHOOKS是一種軟件工具,有助于將旁路掛鉤高效插入ECU軟件中。EHOOKS用戶無需了解軟件細(xì)節(jié),即可以旁路掛鉤直接放入 HEX&A2L文檔中——無需訪問ECU源代碼或ECU軟件創(chuàng)建環(huán)境。
先進(jìn)的掛鉤插入技術(shù)提供精確、可靠的結(jié)果。支持多種掛鉤類型,提供適用于標(biāo)定、軟件測(cè)試、軟件開發(fā)以及功能開發(fā)的可升級(jí)解決方案。
ETAS EHOOKS是一種易于使用的軟件工具,用于將旁路掛鉤插入ECU軟件中,無需其他ECU信息,即可將旁路掛鉤直接放入HEX & A2L文檔中。
表1
本文以已經(jīng)量產(chǎn)的 1.5L四缸自然吸氣汽油發(fā)動(dòng)機(jī)作為控制目標(biāo),進(jìn)行電控系統(tǒng)改造,首先需要對(duì)電控系統(tǒng)零部件進(jìn)行參數(shù)匹配。由于FlexECU的開發(fā)ECU硬件接口幾乎涵蓋了目前常用的傳感器與執(zhí)行器元器件,所以該發(fā)動(dòng)機(jī)的大部分傳感器與執(zhí)行器予以保留,由于所采用的快速原型FlexECU沒有內(nèi)置點(diǎn)火線圈驅(qū)動(dòng)電路,故需要采用外驅(qū)點(diǎn)火線圈的設(shè)計(jì)方案,如圖1所示,其他電控零部件沿用。
圖1 帶驅(qū)動(dòng)點(diǎn)火線圈
目標(biāo)發(fā)動(dòng)機(jī)的傳感器與執(zhí)行器與 FlexECU匹配完成后.需對(duì)原發(fā)動(dòng)機(jī)進(jìn)行信號(hào)采集同時(shí)對(duì)功能進(jìn)行測(cè)試,記錄的信息將會(huì)應(yīng)用在發(fā)動(dòng)機(jī)控制策略的位置管理及故障管理等模塊中,也是臺(tái)架試驗(yàn)發(fā)動(dòng)機(jī)點(diǎn)火成功的基礎(chǔ)工作之一。
FlexECU為其開發(fā)ECU提供了ETK通訊接口、至PC的接口硬件,以及完整的線束,系統(tǒng)開發(fā)平臺(tái)的搭建過程中要完成控制器接口與外部硬件的匹配和線束定義工作。至此系統(tǒng)開發(fā)平臺(tái)的準(zhǔn)備工作已經(jīng)完成。
系統(tǒng)建立的首要工作是根據(jù)需求建立系統(tǒng)構(gòu)架。該部分最為基礎(chǔ)但很關(guān)鍵,ECU軟件涉及發(fā)動(dòng)機(jī)控制、零部件和電路診斷、排放監(jiān)控、安全監(jiān)控和通訊協(xié)議等功能,功能覆蓋面廣,模塊數(shù)量多。1.5L四缸自然吸氣汽油發(fā)動(dòng)機(jī)原來所匹配的量產(chǎn)ECU軟件共有431個(gè)模塊,包括扭矩計(jì)算、氣路控制、噴油控制、點(diǎn)火控制、排放控制、故障診斷、ETC監(jiān)控、接口協(xié)議等功能。
本項(xiàng)目開發(fā)目標(biāo)為基礎(chǔ)發(fā)動(dòng)機(jī)控制軟件,使用Simulink[4]進(jìn)行應(yīng)用層軟件(模型)開發(fā),初期開發(fā)具備扭矩計(jì)算、氣路控制、噴油控制、點(diǎn)火控制等基本功能即可。分為6個(gè)主要功能:
1)AS(進(jìn)氣系統(tǒng)Air System);
2)ES(排放系統(tǒng)Exhaust System);
3)ETS(扭矩控制Engine Torque Structure);
4)FS(燃油系統(tǒng)Fuel System);
5)IS(點(diǎn)火系統(tǒng)Ignition System);V
6)EH(整車需求Vehicle functions );
2.2.1 模型庫開發(fā)
a)模型接口庫:17個(gè)模型接口單元,包含全部模型用到的輸入輸出接口;
b)基本運(yùn)算庫:包含基本運(yùn)算(加減乘除等)、開關(guān)選擇、判斷、位選擇等運(yùn)算邏輯;
c)查表模塊
d)子集封裝模塊
e)觸發(fā)子系統(tǒng)
f)延遲
g)時(shí)鐘
h)低通濾波
i)PID
j)其他
2.2.2 ECU模型
模型累計(jì)搭建76個(gè);軟件整體分為進(jìn)氣、扭矩、點(diǎn)火、噴油等幾大模塊,圍繞臺(tái)架點(diǎn)火為主要開發(fā)目標(biāo)進(jìn)行搭建。
圖2 Simulink ECU軟件模型
VEH子系統(tǒng),該系統(tǒng)功能是將油門踏板的電壓信號(hào)轉(zhuǎn)換為開度信號(hào),其中包括校驗(yàn)、濾波等;
圖3 VEH子系統(tǒng)
ETC子系統(tǒng),該子系統(tǒng)是扭矩計(jì)算模塊,駕駛員扭矩需求計(jì)算及變化限制、協(xié)調(diào)扭矩干預(yù)、氣路協(xié)調(diào)扭矩干預(yù)、發(fā)動(dòng)機(jī)轉(zhuǎn)速限制、怠速控制扭矩儲(chǔ)備、怠速控制名義發(fā)動(dòng)機(jī)轉(zhuǎn)速、怠速控制的運(yùn)行條件、怠速控制扭矩控制器、名義扭矩的名義空氣質(zhì)量、額定點(diǎn)火正時(shí)的扭矩計(jì)算、發(fā)動(dòng)機(jī)扭矩計(jì)算、扭矩接口基本計(jì)算、計(jì)算最大指示扭矩、發(fā)動(dòng)機(jī)扭矩協(xié)調(diào)最小值、扭矩:發(fā)動(dòng)機(jī)轉(zhuǎn)速穩(wěn)定、發(fā)動(dòng)機(jī)扭矩?fù)p失;
圖4 ETC子系統(tǒng)
AS子系統(tǒng),進(jìn)氣系統(tǒng)計(jì)算模塊,負(fù)責(zé)將傳感器的電壓信號(hào)計(jì)算為進(jìn)氣壓力,從而計(jì)算為充氣效率;
圖5 AS子系統(tǒng)
FS子系統(tǒng),噴油基本功能、起動(dòng)后和暖機(jī)噴油、起動(dòng)噴油、Lambda協(xié)調(diào)、混合氣控制、噴射角的計(jì)算、相對(duì)燃油質(zhì)量rk計(jì)算噴油脈寬ti、噴油關(guān)斷協(xié)調(diào);
圖6 FS子系統(tǒng)
IS子系統(tǒng),計(jì)算點(diǎn)火角度、基本點(diǎn)火角、計(jì)算最大點(diǎn)火推遲限制、點(diǎn)火角計(jì)算、點(diǎn)火提前和延遲限制后的點(diǎn)火角計(jì)算、點(diǎn)火線圈閉合時(shí)間計(jì)算,初期可固定值。
圖7 IS子系統(tǒng)
輸入/輸出部分的任務(wù)是將所有傳感器和執(zhí)行器信號(hào)與ECU接口硬件進(jìn)行匹配。當(dāng)特定數(shù)據(jù)源類型取決于硬件時(shí),Matlab默認(rèn)數(shù)據(jù)類型為double而此平臺(tái)ECU默認(rèn)處理的數(shù)據(jù)類型為 32位單浮點(diǎn)[5],輸入為 lO位 A/D轉(zhuǎn)換器,對(duì)應(yīng)unitl6數(shù)據(jù)類型,所以在信號(hào)處理環(huán)節(jié)應(yīng)加人數(shù)據(jù)類型轉(zhuǎn)換模塊。如圖4所示,在輸入部分加入相應(yīng)傳感器變量的監(jiān)測(cè)(Probe)模塊,并進(jìn)行組別的設(shè)置。當(dāng)代碼刷人FlexECU控制器后,通過標(biāo)定軟件便能快速找到相應(yīng)的變量,大大方便了數(shù)據(jù)管理和變量的監(jiān)測(cè)。
此系統(tǒng)傳感器包括:進(jìn)氣溫度、進(jìn)氣壓力、節(jié)氣門位置、爆震傳感器、氧傳感器、油門踏板位置、曲軸轉(zhuǎn)速和位置、凸輪軸位置傳感器、水溫傳感器。
輸出部分與之匹配的主要執(zhí)行器為4個(gè)帶驅(qū)動(dòng)的高壓點(diǎn)火線圈、4個(gè)電壓驅(qū)動(dòng)型的噴油線圈、1個(gè)H橋驅(qū)動(dòng)的電子節(jié)氣門電機(jī),根據(jù)執(zhí)行器特性和參數(shù)選擇相應(yīng)輸出接口并進(jìn)行匹配。
由于FlexECU開發(fā)平臺(tái)采用汽車產(chǎn)品級(jí)硬件,故省卻了大量的輸入/輸出信號(hào)調(diào)節(jié)和接口匹配的工作。
圖8 FlexECU 的庫函數(shù)
使用 simulink 進(jìn)行應(yīng)用層軟件(模型)開發(fā),應(yīng)用層軟件調(diào)用FlexECU 的底層接口時(shí),需要調(diào)用FlexECU 的庫函數(shù),采用EHOOKS工具對(duì)模型進(jìn)行集成設(shè)計(jì)。
EHOOKS 配套的 Simulink 集成包提供了用于對(duì) EHOOKS進(jìn)行配置的 Simulink 模塊,包括編譯配置模塊、函數(shù)調(diào)用模塊、數(shù)據(jù)讀取模塊等。集成設(shè)計(jì)完成之后的模型見圖9。
圖9 模型編譯配置
EHOOKS 編譯配置模塊需要放置在模型的最頂層,并且在使用其他的配置模塊時(shí),必須對(duì)編譯配置模塊進(jìn)行設(shè)置。
1)將EHOOKS 編譯配置模塊拖拽到simulink 模型中。
圖10 ECU模型EHOOKS配置
2)選擇對(duì)應(yīng)的編譯配置文件
圖11 編譯文件建立
3)編譯文件配置
圖12 HEX與A2L文件配置
圖13 變量配置
EHOOKS集成了編譯器,當(dāng)系統(tǒng)模型建立完畢后編譯器會(huì)將模型自動(dòng)生成可供刷寫的HEX文件,同時(shí)生成 A2L文件以標(biāo)定使用 。用INCA將HEX文件刷入ECU,調(diào)入生成的A2L文件,使用ETAS ES581硬件連接器可快速完成代碼刷寫的過程。
FlexECU支持ETK協(xié)議,采用DAQ變量測(cè)量模式進(jìn)行標(biāo)定。系統(tǒng)組成如圖5所示。且與ETAS INCA無縫對(duì)接。本系統(tǒng)采用ETK標(biāo)定軟件,硬件連接器采用ETAS公司的ES581產(chǎn)品。
標(biāo)定的主要任務(wù)為對(duì)數(shù)據(jù)庫中的變量進(jìn)行優(yōu)化調(diào)整,變量包括冷起動(dòng)時(shí)控制修正、快怠速節(jié)氣門電機(jī)步進(jìn)控制修正、點(diǎn)火/噴油提前角修正、PWM主控頻率量等。
1)電控系統(tǒng)的開發(fā)是一項(xiàng)復(fù)雜的過程,本文以整個(gè)開發(fā)流程著手?;贔lexECU快速原型開發(fā)平臺(tái)。嘗試在Matlab/Simulink環(huán)境中以圖形化的語言完成了從確定設(shè)計(jì)要求至標(biāo)定的一系列工作。
2)基于此開發(fā)平臺(tái),整個(gè)開發(fā)過程的主要工作集中在應(yīng)用程序的編寫和策略仿真??焖賹?shí)現(xiàn)了目標(biāo)發(fā)動(dòng)機(jī)的電控系統(tǒng)改造的前期工作。
3)通過標(biāo)定基本上實(shí)現(xiàn)了四缸汽油機(jī)的控制功能,整個(gè)開發(fā)過程為后續(xù)的系統(tǒng)優(yōu)化和產(chǎn)品化積累了大量的工作經(jīng)驗(yàn)。
參考文獻(xiàn)
[1] 高海字,陸文昌,商哲,甄騰.基于MotoTron平臺(tái)的發(fā)動(dòng)機(jī)ECU快速原型開發(fā)[J]. 柴油機(jī)設(shè)計(jì)與制造,2008,15(3):16-20.
[2] 李儒龍,陳衛(wèi)方,張凡武.基于 Simulink的電子節(jié)氣門控制策略開發(fā)[J].2011,(6):14-18.
[3] 章健勇,呂世亮,陳林,尹 琪.基于快速原型系統(tǒng) 的汽油機(jī)控制策略開發(fā)[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.