王貴勇, 陳 余, 姚國(guó)仲, 鄧冬榮, 申立中
(昆明理工大學(xué) 云南省內(nèi)燃機(jī)重點(diǎn)實(shí)驗(yàn)室,云南 昆明 650500)
硬件在環(huán)(Hardware-in-the-Loop,HIL)測(cè)試是發(fā)動(dòng)機(jī)電子控制單元(Electronic Control Unit,ECU)V開發(fā)模式中保證質(zhì)量的關(guān)鍵一步[1],測(cè)試用例作為HIL測(cè)試的測(cè)試規(guī)章,規(guī)定了被測(cè)ECU各功能的測(cè)試過(guò)程及評(píng)判規(guī)則,是HIL測(cè)試中不可或缺的一部分,在測(cè)試前需要完成測(cè)試用例的開發(fā)。
目前,國(guó)內(nèi)外對(duì)HIL測(cè)試用例開發(fā)的研究主要有兩個(gè)方面:① 隨著汽車電控技術(shù)與新能源汽車產(chǎn)業(yè)的迅速發(fā)展,HIL測(cè)試逐漸從傳統(tǒng)的對(duì)發(fā)動(dòng)機(jī)ECU的測(cè)試轉(zhuǎn)變?yōu)閷?duì)車身控制器、自動(dòng)變速箱控制單元、新能源汽車整車控制器與電池管理系統(tǒng)等的測(cè)試[2-5],相應(yīng)的測(cè)試用例需要根據(jù)測(cè)試對(duì)象功能特性的不同重新開發(fā);② 隨著發(fā)動(dòng)機(jī)ECU控制功能越來(lái)越多,測(cè)試用例成倍增加,為了保證高效、高質(zhì)的HIL測(cè)試,普遍采用自動(dòng)化測(cè)試,這就要求測(cè)試用例在開發(fā)過(guò)程中能夠快速生成與自動(dòng)執(zhí)行[6-7]。上述研究?jī)?nèi)容可概括為對(duì)測(cè)試用例類型、生成方法、執(zhí)行方式等方面的橫向擴(kuò)展,即實(shí)現(xiàn)了測(cè)試用例開發(fā)廣度上的研究創(chuàng)新。在測(cè)試用例測(cè)試深度方面通過(guò)對(duì)各高校及科研機(jī)構(gòu)相關(guān)文獻(xiàn)的研究分析可知,目前國(guó)內(nèi)無(wú)論是傳統(tǒng)內(nèi)燃機(jī)ECU的測(cè)試用例還是新能源汽車整車控制器的測(cè)試用例,普遍采用黑盒測(cè)試思想開發(fā)[8-10]。黑盒測(cè)試用例在HIL測(cè)試時(shí)關(guān)注ECU對(duì)外總體控制功能是否正常而不考慮輸入信號(hào)在ECU內(nèi)部功能模塊中的控制過(guò)程。隨著柴油機(jī)ECU控制策略越來(lái)越復(fù)雜,內(nèi)部功能模塊越來(lái)越多,在當(dāng)前高效、高質(zhì)的V開發(fā)模式要求下,HIL的測(cè)試目的便不能僅停留在對(duì)ECU總體控制功能測(cè)試層面,而是要將測(cè)試深入至ECU各功能模塊中,顯然黑盒測(cè)試用例在這樣的測(cè)試目的下測(cè)試深入程度不足。因此,面對(duì)當(dāng)前測(cè)試程度不斷深入的ECU HIL測(cè)試目的,需要將新測(cè)試思想融入HIL測(cè)試及其用例開發(fā)中,使基于新思想開發(fā)出的測(cè)試用例能夠?qū)y(cè)試深入至ECU各功能模塊內(nèi)部。
在研究了灰盒測(cè)試與柴油機(jī)ECU HIL黑盒測(cè)試用例開發(fā)方法的基礎(chǔ)上,從基于灰盒的ECU HIL測(cè)試目的出發(fā),將灰盒測(cè)試思想應(yīng)用于測(cè)試需求分析和測(cè)試用例設(shè)計(jì)兩個(gè)開發(fā)階段,提出了一種基于灰盒測(cè)試的HIL測(cè)試用例開發(fā)方法,并以柴油機(jī)ECU起動(dòng)工況噴油量計(jì)算模塊為對(duì)象進(jìn)行了方法應(yīng)用與實(shí)驗(yàn)驗(yàn)證。對(duì)比黑盒測(cè)試用例,灰盒測(cè)試用例可為ECU HIL測(cè)試增加更多測(cè)試點(diǎn)與監(jiān)控參數(shù),對(duì)提高ECU控制模塊內(nèi)部測(cè)試錯(cuò)誤發(fā)現(xiàn)率、保障ECU開發(fā)質(zhì)量具有一定意義。
灰盒測(cè)試是一種介于黑、白盒測(cè)試之間的測(cè)試,不僅關(guān)注被測(cè)對(duì)象輸入、輸出及響應(yīng)關(guān)系,也關(guān)注被測(cè)對(duì)象內(nèi)部運(yùn)行情況[11]。這種關(guān)注不像白盒測(cè)試那樣完整、詳細(xì),只是基于對(duì)被測(cè)對(duì)象內(nèi)部細(xì)節(jié)的有限認(rèn)知,通過(guò)對(duì)被測(cè)對(duì)象內(nèi)部關(guān)鍵功能點(diǎn)、參數(shù)實(shí)施監(jiān)控來(lái)判斷運(yùn)行情況。圖1為灰盒測(cè)試原理。
圖1 灰盒測(cè)試原理
HIL測(cè)試目的決定了采用何種測(cè)試思想進(jìn)行測(cè)試及用例開發(fā),黑、白、灰盒3種測(cè)試思想是根據(jù)各自特點(diǎn)從完全不同的角度考慮測(cè)試,因而對(duì)測(cè)試對(duì)象具有不同的測(cè)試深度。處于V開發(fā)模式階段的ECU,軟硬件質(zhì)量還不穩(wěn)定,HIL測(cè)試的目的是根據(jù)虛擬柴油機(jī)各運(yùn)行工況完成ECU各控制模塊的功能驗(yàn)證。
基于黑盒的HIL測(cè)試能夠滿足上述測(cè)試目的,測(cè)試時(shí)將各控制模塊當(dāng)做一個(gè)個(gè)黑盒進(jìn)行測(cè)試,只考慮輸入信號(hào)本身及其組合關(guān)系是否滿足功能要求以及輸出信號(hào)是否與輸入信號(hào)控制關(guān)系正確,而不考慮功能實(shí)現(xiàn)的具體過(guò)程[12]。隨著柴油機(jī)電控功能越來(lái)越多,柴油機(jī)ECU需要在短時(shí)間內(nèi)對(duì)大量變化迅速的信號(hào)進(jìn)行接受與處理,這些信號(hào)一部分來(lái)自外部傳感器輸入,另一部分則屬于ECU控制模塊內(nèi)部參數(shù)。黑盒測(cè)試用例因其本身特點(diǎn)無(wú)法對(duì)ECU控制模塊內(nèi)部參數(shù)及功能點(diǎn)進(jìn)行測(cè)試,故測(cè)試點(diǎn)及評(píng)價(jià)參數(shù)不夠完善,測(cè)試出現(xiàn)問(wèn)題時(shí)難以精準(zhǔn)定位故障。
基于白盒的HIL測(cè)試同樣能滿足HIL測(cè)試目的,白盒測(cè)試用例把ECU各控制模塊的實(shí)現(xiàn)過(guò)程及路徑剖析的較為全面、透徹,因而能對(duì)ECU控制模塊內(nèi)所有功能點(diǎn)及參數(shù)進(jìn)行監(jiān)控,測(cè)試深度較深。但白盒測(cè)試用例測(cè)試點(diǎn)多且復(fù)雜,測(cè)試時(shí)毫無(wú)側(cè)重點(diǎn)可言,測(cè)試數(shù)據(jù)及評(píng)價(jià)參數(shù)將非常繁雜,總體測(cè)試時(shí)間會(huì)極大地延長(zhǎng),影響測(cè)試效率。
為了實(shí)現(xiàn)柴油機(jī)ECU HIL測(cè)試目的且在保證HIL測(cè)試效率的同時(shí)將測(cè)試深入到ECU各控制模塊內(nèi)部,從灰盒測(cè)試角度對(duì)ECU HIL進(jìn)行測(cè)試考慮。根據(jù)灰盒測(cè)試特點(diǎn),灰盒測(cè)試用例在HIL測(cè)試時(shí)能夠?qū)Σ裼蜋C(jī)ECU各控制模塊內(nèi)部關(guān)鍵功能點(diǎn)及運(yùn)行參數(shù)進(jìn)行監(jiān)控,可對(duì)ECU控制功能的內(nèi)部實(shí)現(xiàn)情況進(jìn)行判斷,測(cè)試不通過(guò)時(shí)測(cè)試人員可快速追蹤關(guān)鍵功能點(diǎn)的實(shí)現(xiàn)情況,并根據(jù)運(yùn)行參數(shù)準(zhǔn)確定位故障模塊,測(cè)試深度符合V開發(fā)模式階段要求。
基于灰盒的柴油機(jī)ECU HIL測(cè)試目的決定了測(cè)試用例開發(fā)須基于灰盒測(cè)試,圖2為柴油機(jī)ECU HIL灰盒測(cè)試用例開發(fā)方法,灰盒測(cè)試思想主要應(yīng)用于測(cè)試需求分析和測(cè)試用例設(shè)計(jì)兩部分。
圖2 柴油機(jī)ECU HIL灰盒測(cè)試用例開發(fā)方法
HIL測(cè)試成敗的關(guān)鍵在于ECU在虛擬柴油機(jī)各運(yùn)行工況下各功能控制模塊是否都得到了功能驗(yàn)證[13]。柴油機(jī)ECU HIL黑盒測(cè)試用例開發(fā)方法從ECU與柴油機(jī)聯(lián)系的外部輸入輸出信號(hào)方面進(jìn)行測(cè)試需求分析,由此確定輸入輸出信號(hào)測(cè)試點(diǎn),灰盒測(cè)試用例開發(fā)方法在此基礎(chǔ)上,測(cè)試需求分析時(shí)還對(duì)ECU各功能控制模塊相應(yīng)控制策略進(jìn)行研究分析,從中找到影響各模塊運(yùn)行的內(nèi)部關(guān)鍵功能點(diǎn)及參數(shù)并設(shè)置測(cè)試點(diǎn)進(jìn)行測(cè)試、監(jiān)控。測(cè)試用例設(shè)計(jì)階段是對(duì)測(cè)試需求分析結(jié)果中各測(cè)試點(diǎn)充分運(yùn)用黑、白盒測(cè)試的各種具體測(cè)試用例設(shè)計(jì)方法以確定測(cè)試點(diǎn)中諸如控制變量、測(cè)試步驟等測(cè)試用例的基本要素,規(guī)劃測(cè)試流程與確定測(cè)試判斷準(zhǔn)則,最終實(shí)現(xiàn)對(duì)測(cè)試點(diǎn)細(xì)化與擴(kuò)充完成測(cè)試用例編寫的過(guò)程。
在柴油機(jī)ECU HIL灰盒測(cè)試用例開發(fā)方法中,測(cè)試需求分析過(guò)程是一個(gè)難點(diǎn),在此階段測(cè)試用例開發(fā)人員需要從錯(cuò)綜復(fù)雜、相互關(guān)聯(lián)的ECU控制策略體系中找到影響當(dāng)前測(cè)試模塊運(yùn)行的關(guān)鍵功能點(diǎn)、內(nèi)部參數(shù)與外部輸入信號(hào),并分析柴油機(jī)不同運(yùn)行工況以確定測(cè)試條件與測(cè)試場(chǎng)景。相比較黑盒測(cè)試用例開發(fā)方法,這就要求測(cè)試用例開發(fā)人員除了要熟悉各類測(cè)試方法與測(cè)試技術(shù),還要對(duì)ECU各功能模塊控制策略及ECU控制柴油機(jī)過(guò)程、原理有深入認(rèn)識(shí)。
柴油機(jī)起動(dòng)工況較為短暫,因而對(duì)ECU在此工況下功能控制的可靠性及穩(wěn)定性有一定要求[14]。分析ECU起動(dòng)工況控制策略體系可知,其內(nèi)部起動(dòng)噴油量計(jì)算模塊是影響該工況正常運(yùn)行的關(guān)鍵模塊,因此本文使用灰盒測(cè)試用例開發(fā)方法對(duì)該模塊進(jìn)行HIL測(cè)試用例開發(fā)與方法驗(yàn)證。
2.1.1 ECU控制策略分析
圖3為起動(dòng)噴油量計(jì)算模塊控制策略。由圖3可知,在該控制策略中,冷卻液溫度是影響起動(dòng)噴油量計(jì)算的關(guān)鍵外部輸入信號(hào),起動(dòng)噴油量是關(guān)鍵外部輸出信號(hào),同時(shí)起動(dòng)基本轉(zhuǎn)矩、起動(dòng)修正轉(zhuǎn)矩和起動(dòng)需求轉(zhuǎn)矩是該模塊關(guān)鍵內(nèi)部參數(shù),起動(dòng)基本轉(zhuǎn)矩、起動(dòng)轉(zhuǎn)矩修正MAP插值與起動(dòng)需求轉(zhuǎn)矩邏輯加運(yùn)算是該模塊內(nèi)關(guān)鍵功能點(diǎn)。根據(jù)灰盒測(cè)試思想,需要對(duì)上述關(guān)鍵外部輸入、輸出信號(hào)及關(guān)鍵內(nèi)部參數(shù)、功能點(diǎn)設(shè)置對(duì)應(yīng)測(cè)試點(diǎn)進(jìn)行監(jiān)控。
圖3 起動(dòng)噴油量計(jì)算模塊控制策略
2.1.2 功能點(diǎn)-測(cè)試點(diǎn)轉(zhuǎn)化
測(cè)試點(diǎn)是指測(cè)試用例要驗(yàn)證的功能點(diǎn)。功能點(diǎn)-測(cè)試點(diǎn)轉(zhuǎn)化是根據(jù)被測(cè)ECU控制模塊中各功能點(diǎn)、關(guān)鍵內(nèi)外部參數(shù)對(duì)該模塊的作用與影響,將測(cè)試點(diǎn)提取出來(lái)的過(guò)程。
分析圖3可知,ECU采集冷卻液溫度傳感器信號(hào)判斷柴油機(jī)溫度以確定當(dāng)前起動(dòng)環(huán)境溫度條件。冷機(jī)起動(dòng)時(shí)ECU將控制增大噴油量,以保證可靠的冷起動(dòng);熱機(jī)起動(dòng)時(shí)為避免冒黑煙等現(xiàn)象,ECU將控制適當(dāng)減少噴油量[15]。因此對(duì)于輸入信號(hào)冷卻液溫度與輸出信號(hào)起動(dòng)噴油量,需要從灰盒測(cè)試中黑盒一面出發(fā),設(shè)置冷卻液溫度信號(hào)采集測(cè)試與起動(dòng)噴油量邊界輸入測(cè)試。
柴油機(jī)ECU控制策略基于轉(zhuǎn)矩控制架構(gòu),即轉(zhuǎn)矩的需求量對(duì)噴油量起到?jīng)Q定性作用[16]。故本例中起動(dòng)噴油量由起動(dòng)需求轉(zhuǎn)矩決定,而起動(dòng)需求轉(zhuǎn)矩由起動(dòng)基本轉(zhuǎn)矩與起動(dòng)修正轉(zhuǎn)矩決定。分析圖3可知,該計(jì)算模塊內(nèi)起動(dòng)基本轉(zhuǎn)矩MAP插值、起動(dòng)修正轉(zhuǎn)矩MAP插值、起動(dòng)需求轉(zhuǎn)矩邏輯加運(yùn)算3個(gè)功能點(diǎn)是影響起動(dòng)基本轉(zhuǎn)矩、起動(dòng)修正轉(zhuǎn)矩和起動(dòng)需求轉(zhuǎn)矩3個(gè)關(guān)鍵內(nèi)部轉(zhuǎn)矩生成的關(guān)鍵功能點(diǎn),因此從灰盒測(cè)試中白盒一面出發(fā),在該計(jì)算模塊內(nèi)設(shè)置MAP查詢及邏輯判斷測(cè)試對(duì)上述3個(gè)關(guān)鍵功能點(diǎn)和內(nèi)部轉(zhuǎn)矩進(jìn)行監(jiān)測(cè)。MAP查詢測(cè)試是對(duì)控制模塊各輸入信號(hào)在曲線或MAP圖中根據(jù)一定插值法查詢相應(yīng)輸出參數(shù)后,驗(yàn)證輸出參數(shù)是否正確的測(cè)試[17]。邏輯判斷測(cè)試是控制模塊中各內(nèi)部參數(shù)根據(jù)控制策略進(jìn)行相加等邏輯運(yùn)算后,驗(yàn)證輸出參數(shù)是否正確的測(cè)試。表1為本例測(cè)試需求分析結(jié)果。
表1 起動(dòng)噴油量計(jì)算模塊測(cè)試需求分析結(jié)果
通過(guò)上述分析可知,若運(yùn)用黑盒測(cè)試思想對(duì)ECU起動(dòng)噴油量計(jì)算模塊進(jìn)行測(cè)試需求分析,則將僅有表1中冷卻液溫度信號(hào)采集測(cè)試與起動(dòng)噴油量邊界輸入測(cè)試2個(gè)測(cè)試點(diǎn),測(cè)試評(píng)價(jià)參數(shù)僅有外部關(guān)鍵輸入信號(hào)冷卻液溫度和關(guān)鍵外部輸出信號(hào)起動(dòng)噴油量。采用灰盒測(cè)試思想對(duì)該模塊進(jìn)行測(cè)試需求分析,可得表1中5個(gè)測(cè)試點(diǎn),測(cè)試評(píng)價(jià)參數(shù)除包含黑盒測(cè)試的關(guān)鍵外部輸入輸出信號(hào)外,還增加了該模塊內(nèi)3個(gè)關(guān)鍵轉(zhuǎn)矩,由此可見灰盒測(cè)試用例能夠增加被測(cè)模塊中測(cè)試點(diǎn)及評(píng)價(jià)參數(shù)。
2.2.1 設(shè)計(jì)方法確定
本例選取黑盒測(cè)試的場(chǎng)景法、等價(jià)類劃分法、邊界值分析法與白盒測(cè)試的基本路徑測(cè)試法作為灰盒測(cè)試用例的具體設(shè)計(jì)方法。
使用場(chǎng)景法設(shè)計(jì)的測(cè)試用例能夠根據(jù)不同的測(cè)試條件模擬被測(cè)ECU控制模塊在實(shí)際運(yùn)行時(shí)各種功能場(chǎng)景,本例運(yùn)用此法設(shè)計(jì)測(cè)試用例控制CRUISE M虛擬柴油機(jī)模型處于起動(dòng)工況進(jìn)行ECU HIL測(cè)試,將冷卻液溫度設(shè)為測(cè)試輸入信號(hào),發(fā)動(dòng)機(jī)轉(zhuǎn)速信號(hào)由虛擬柴油機(jī)模型運(yùn)行輸入,大氣壓力信號(hào)由ECU板上大氣壓力傳感器提供。
臺(tái)架試驗(yàn)一般將冷卻液溫度分為低于20 ℃、20~90 ℃與高于90 ℃ 3個(gè)區(qū)間,以對(duì)應(yīng)柴油機(jī)冷機(jī)、常溫和熱機(jī)3種起動(dòng)溫度條件,同時(shí)《汽車發(fā)動(dòng)機(jī)性能試驗(yàn)方法GB/T 18297—2001》要求柴油機(jī)低溫起動(dòng)試驗(yàn)需在263 K(-10.15 ℃)的環(huán)境溫度下進(jìn)行[18],又因柴油機(jī)冷卻液冰點(diǎn)一般為-30 ℃,沸點(diǎn)為110 ℃,故本例使用等價(jià)類劃分法在冷卻液冰點(diǎn)與沸點(diǎn)之間劃分出4個(gè)有效等價(jià)類以對(duì)應(yīng)柴油機(jī)3種起動(dòng)溫度條件,冷卻液溫度高于其沸點(diǎn)時(shí)設(shè)置一個(gè)無(wú)效等價(jià)類以測(cè)試?yán)鋮s液溫度為非正常溫度范圍時(shí)ECU各功能點(diǎn)的運(yùn)行情況,并從各等價(jià)類中選取若干具有代表性的冷卻液溫度作為測(cè)試輸入信號(hào),這樣就將原本需要進(jìn)行窮舉輸入的測(cè)試信號(hào)轉(zhuǎn)變?yōu)榱溯斎肷倭看硇缘臏y(cè)試信號(hào)。
測(cè)試經(jīng)驗(yàn)表明,大量錯(cuò)誤發(fā)生在輸入或輸出范圍的邊界上[19],故本例使用邊界值分析法彌補(bǔ)等價(jià)類劃分法沒有對(duì)各等價(jià)類邊界值測(cè)試的不足。表2為包含等價(jià)類劃分及其邊界值代表溫度值的冷卻液溫度輸入信號(hào)表。測(cè)試用例將依次設(shè)定虛擬柴油機(jī)模型中冷卻液溫度為表2中13個(gè)代表溫度值作為輸入信號(hào)進(jìn)行測(cè)試,方便、快速地模擬不同起動(dòng)溫度條件。
表2 冷卻液溫度輸入信號(hào) 單位:℃
2.2.2 測(cè)試流程規(guī)劃
本例使用基本路徑測(cè)試法對(duì)圖3中各功能點(diǎn)實(shí)現(xiàn)順序及輸入信號(hào)控制流程進(jìn)行分析。在HIL測(cè)試平臺(tái)自檢、激勵(lì)測(cè)試通過(guò)后,首先應(yīng)完成冷卻液溫度信號(hào)采集測(cè)試以保證ECU能準(zhǔn)確無(wú)誤接收測(cè)試輸入信號(hào);然后進(jìn)行不同冷卻液溫度測(cè)試輸入信號(hào)下的起動(dòng)噴油量邊界輸入測(cè)試以保證該模塊總體控制功能正常;在此基礎(chǔ)上,將測(cè)試深入該控制模塊內(nèi)部,進(jìn)行起動(dòng)基本轉(zhuǎn)矩MAP及起動(dòng)轉(zhuǎn)矩修正MAP查詢測(cè)試,以完成對(duì)兩個(gè)MAP插值功能點(diǎn)及起動(dòng)基本轉(zhuǎn)矩、起動(dòng)修正轉(zhuǎn)矩兩個(gè)內(nèi)部關(guān)鍵參數(shù)的監(jiān)測(cè);在保證上述兩轉(zhuǎn)矩?zé)o誤后,進(jìn)行起動(dòng)需求轉(zhuǎn)矩邏輯判斷測(cè)試以完成對(duì)起動(dòng)需求轉(zhuǎn)矩的監(jiān)測(cè)。根據(jù)上述分析過(guò)程可得到如圖4所示的測(cè)試流程。
圖4 測(cè)試流程
2.2.3 測(cè)試判斷準(zhǔn)則確定
測(cè)試判斷準(zhǔn)則是測(cè)試用例執(zhí)行時(shí)對(duì)測(cè)試點(diǎn)中測(cè)試數(shù)據(jù)的總體評(píng)判規(guī)則,測(cè)試點(diǎn)是否通過(guò)測(cè)試、測(cè)試用例是否繼續(xù)執(zhí)行均由此控制[20]。測(cè)試用例預(yù)期結(jié)果是各測(cè)試點(diǎn)中控制變量在當(dāng)前測(cè)試步驟定義的測(cè)試場(chǎng)景下應(yīng)達(dá)到狀態(tài)的詳細(xì)描述,是測(cè)試判斷準(zhǔn)則在標(biāo)準(zhǔn)測(cè)試用例文檔中的具體化數(shù)據(jù)。表3為各測(cè)試點(diǎn)測(cè)試判斷準(zhǔn)則。
表3 測(cè)試點(diǎn)測(cè)試判斷準(zhǔn)則
2.2.4 測(cè)試用例編寫
表4為基于以上分析所編寫的起動(dòng)噴油量計(jì)算測(cè)試用例,將表中測(cè)試用例基本要素進(jìn)行轉(zhuǎn)換后填入如圖5所示的標(biāo)準(zhǔn)測(cè)試用例Excel文檔中,然后通過(guò)HIL測(cè)試程序中測(cè)試腳本直接讀取該文檔并執(zhí)行,實(shí)現(xiàn)測(cè)試用例對(duì)柴油機(jī)ECU起動(dòng)噴油量計(jì)算模塊HIL測(cè)試。
圖5 標(biāo)準(zhǔn)測(cè)試用例Excel文檔
表4 起動(dòng)噴油量計(jì)算測(cè)試用例
測(cè)試平臺(tái)是開展測(cè)試的基礎(chǔ),也是測(cè)試用例得以執(zhí)行、驗(yàn)證的根本保證,本文使用的HIL測(cè)試平臺(tái)基于PC系統(tǒng)方案搭建,實(shí)時(shí)處理器選用多功能可重配置I/O設(shè)備USB-7845R。測(cè)試程序使用LabVIEW編程軟件自主開發(fā),虛擬柴油機(jī)模型使用 CRUISE M仿真軟件搭建。測(cè)試數(shù)據(jù)由HIL測(cè)試程序中CAN通信模塊調(diào)用INCA軟件使用CCP通信協(xié)議自ECU測(cè)量點(diǎn)中讀取、判斷。
測(cè)試平臺(tái)提供的ECU硬件在環(huán)測(cè)試環(huán)境如圖6所示,其中,PC上位機(jī)負(fù)責(zé)運(yùn)行HIL測(cè)試程序讀取測(cè)試用例文件進(jìn)行運(yùn)行參數(shù)調(diào)整及測(cè)試控制,使用通用串行總線將這些數(shù)據(jù)傳至實(shí)時(shí)處理器。實(shí)時(shí)處理器中FPGA模塊依據(jù)虛擬柴油機(jī)模型運(yùn)行參數(shù)通過(guò)底層BIT程序發(fā)生ECU運(yùn)行所需傳感器信號(hào)并經(jīng)信號(hào)I/O接口送至被測(cè)ECU,ECU將根據(jù)輸入信號(hào)工作并輸出控制信號(hào)與CAN通信信號(hào),同時(shí)實(shí)時(shí)處理器與PC上位機(jī)將分別采集控制信號(hào)與通信信號(hào),以完成虛擬柴油機(jī)模型閉環(huán)運(yùn)行與測(cè)試數(shù)據(jù)采集。
圖6 ECU硬件在環(huán)測(cè)試環(huán)境
HIL測(cè)試程序依據(jù)測(cè)試流程對(duì)ECU進(jìn)行測(cè)試,若ECU能通過(guò)各測(cè)試點(diǎn)測(cè)試,則判定ECU被測(cè)模塊功能正常。若測(cè)試過(guò)程中出現(xiàn)某測(cè)試點(diǎn)失敗,則HIL測(cè)試程序?qū)⒅袛鄿y(cè)試并在測(cè)試用例文檔中定位出測(cè)試失敗步驟,同時(shí)在HIL測(cè)試程序人機(jī)交互界面顯示失敗的測(cè)試數(shù)據(jù)與測(cè)試設(shè)置參數(shù),等待測(cè)試人員介入確認(rèn)失敗原因及確定測(cè)試是否繼續(xù)。
表5為冷卻液溫度信號(hào)采集測(cè)試結(jié)果,從中分析可知13個(gè)冷卻液溫度設(shè)定值與ECU識(shí)別值兩者最大、最小偏差均在允許偏差內(nèi),測(cè)試點(diǎn)通過(guò),ECU冷卻液溫度信號(hào)采集功能正常,可進(jìn)行起動(dòng)噴油量邊界輸入測(cè)試。
表5 冷卻液溫度信號(hào)采集測(cè)試結(jié)果 單位:℃
圖7為起動(dòng)噴油量邊界輸入測(cè)試結(jié)果,冷卻液溫度80 ℃以上的5條起動(dòng)噴油量曲線與80 ℃曲線基本重合,故未在圖中繪出。由圖7可知,輸入13個(gè)冷卻液溫度信號(hào),ECU在完整起動(dòng)時(shí)間內(nèi)均能正確計(jì)算控制輸出相應(yīng)起動(dòng)噴油量,且冷機(jī)起動(dòng)噴油量比熱機(jī)多,符合ECU在不同起動(dòng)溫度條件下靈活調(diào)整起動(dòng)噴油量大小的功能控制原則,此測(cè)試點(diǎn)通過(guò)。
圖7 起動(dòng)噴油量邊界輸入測(cè)試結(jié)果
MAP查詢及邏輯判斷測(cè)試數(shù)據(jù)較多,此處僅選擇冷卻液溫度為-10 ℃時(shí)的測(cè)試數(shù)據(jù)舉例分析,表6為基本起動(dòng)轉(zhuǎn)矩、起動(dòng)轉(zhuǎn)矩修正MAP查詢測(cè)試結(jié)果,表7為起動(dòng)需求轉(zhuǎn)矩邏輯判斷測(cè)試結(jié)果。結(jié)果表明在該冷卻液溫度下,ECU通過(guò)MAP查詢計(jì)算輸出的基本起動(dòng)轉(zhuǎn)矩輸出值、起動(dòng)修正轉(zhuǎn)矩輸出值與MAP標(biāo)準(zhǔn)值誤差始終保持在允許誤差1%內(nèi),MAP查詢測(cè)試點(diǎn)均通過(guò);起動(dòng)需求轉(zhuǎn)矩值輸出值等于基本起動(dòng)轉(zhuǎn)矩輸出值、起動(dòng)修正轉(zhuǎn)矩輸出值之和且與標(biāo)準(zhǔn)值誤差始終保持在允許誤差0.2%內(nèi),起動(dòng)需求轉(zhuǎn)矩邏輯判斷測(cè)試點(diǎn)通過(guò)。
表6 基本起動(dòng)轉(zhuǎn)矩、起動(dòng)轉(zhuǎn)矩修正MAP查詢測(cè)試結(jié)果
表7 起動(dòng)需求轉(zhuǎn)矩邏輯判斷測(cè)試結(jié)果
實(shí)際測(cè)試時(shí)將表2中13個(gè)冷卻液代表溫度值作為CRUISE M虛擬柴油機(jī)仿真模型中冷卻液溫度輸入信號(hào)輸入,ECU在各冷卻液溫度下起動(dòng)基本轉(zhuǎn)矩、起動(dòng)轉(zhuǎn)矩修正MAP查詢測(cè)試與起動(dòng)需求轉(zhuǎn)矩邏輯判斷測(cè)試均能通過(guò),故判定被測(cè)ECU起動(dòng)噴油量計(jì)算模塊中MAP查詢、邏輯判斷功能正常。綜合分析起動(dòng)噴油量計(jì)算測(cè)試用例中各測(cè)試點(diǎn)測(cè)試數(shù)據(jù)與結(jié)果,可判定被測(cè)ECU起動(dòng)噴油量計(jì)算模塊正常。
從基于灰盒測(cè)試的柴油機(jī)ECU HIL測(cè)試目的出發(fā),提出了一種基于灰盒的柴油機(jī)ECU HIL測(cè)試用例開發(fā)方法,使用此法對(duì)柴油機(jī)ECU起動(dòng)噴油量計(jì)算模塊進(jìn)行了測(cè)試用例開發(fā)并導(dǎo)入HIL測(cè)試平臺(tái)進(jìn)行了測(cè)試,測(cè)試數(shù)據(jù)表明被測(cè)ECU起動(dòng)噴油量計(jì)算模塊關(guān)鍵輸入輸出信號(hào)功能控制正常,同時(shí)該計(jì)算模塊內(nèi)各功能點(diǎn)均能通過(guò)測(cè)試,起動(dòng)基本轉(zhuǎn)矩、起動(dòng)修正轉(zhuǎn)矩及起動(dòng)需求轉(zhuǎn)矩3個(gè)控制模塊內(nèi)部關(guān)鍵參數(shù)與其標(biāo)準(zhǔn)值誤差始終在允許誤差范圍內(nèi)。由此可知,被測(cè)ECU起動(dòng)噴油量計(jì)算模塊在灰盒測(cè)試用例搭建的測(cè)試場(chǎng)景中通過(guò)測(cè)試,從而判定該計(jì)算模塊工作正常。
此例驗(yàn)證了基于灰盒的柴油機(jī)ECU HIL測(cè)試用例開發(fā)方法的適用性,使用此法開發(fā)的灰盒測(cè)試用例不僅能對(duì)柴油機(jī)ECU總體控制功能進(jìn)行測(cè)試,還能對(duì)ECU控制模塊內(nèi)部關(guān)鍵功能點(diǎn)及參數(shù)實(shí)施監(jiān)測(cè),從而更好地進(jìn)行全面深入的HIL測(cè)試,快速準(zhǔn)確地跟蹤控制模塊的故障,保障V開發(fā)流程中柴油機(jī)ECU質(zhì)量。