01SIL測(cè)試——從“嘗試”變?yōu)椤摆厔?shì)”
在整車廠與供應(yīng)商的項(xiàng)目中,以下場(chǎng)景屢見(jiàn)不鮮:
ECU軟件已進(jìn)入跨團(tuán)隊(duì)/公司級(jí)的功能聯(lián)調(diào),硬件板子卻還未到位;
算法工程師寫好控制策略,卻找不到真實(shí)環(huán)境進(jìn)行驗(yàn)證;
軟硬件均已更新,HIL臺(tái)架資源卻需要排隊(duì)等待。
過(guò)去,這些瓶頸往往只能靠“等”——等硬件、等設(shè)備、等協(xié)調(diào)。但隨著軟件在整車系統(tǒng)中的復(fù)雜度占比持續(xù)攀升,等待直接意味著項(xiàng)目延期、返工和成本飆升,更有甚者出現(xiàn)測(cè)試兩班倒。于是,越來(lái)越多團(tuán)隊(duì)開始采用一項(xiàng)關(guān)鍵手段——SIL(Software-in-the-Loop,軟件在環(huán)測(cè)試)。
什么是SIL?
SIL相當(dāng)于為ECU軟件打造一個(gè)“虛擬機(jī)”,使其脫離具體硬件也能正常運(yùn)行、通信與信號(hào)處理。SIL模擬ECU的執(zhí)行環(huán)境、網(wǎng)絡(luò)交互與傳感器輸入,讓軟件提前跑起來(lái),無(wú)需等待硬件、臺(tái)架甚至整車。無(wú)論是控制策略、診斷流程,還是通信配置,均可在SIL環(huán)境中提前驗(yàn)證。

圖1:SIL測(cè)試覆蓋軟件組件到系統(tǒng)驗(yàn)證
SIL測(cè)試“左移”的工程哲學(xué)
項(xiàng)目初期實(shí)現(xiàn)“系統(tǒng)級(jí)聯(lián)調(diào)”
傳統(tǒng)流程中“軟件等硬件”的斷層被打破。只要軟件編譯通過(guò),即可在虛擬ECU上模擬通信(CAN/LIN/ETH)、診斷、控制邏輯、任務(wù)調(diào)度及信號(hào)鏈路。算法工程師甚至能在本地電腦上跑通完整的車輛控制流程。
測(cè)試能力無(wú)限擴(kuò)展,奠定CI/CT基礎(chǔ)
SIL支持同時(shí)啟動(dòng)數(shù)十甚至上百個(gè)虛擬ECU,實(shí)現(xiàn)全流程回歸測(cè)試,并能在每次編譯后自動(dòng)執(zhí)行全量測(cè)試。這為持續(xù)集成(CI)與持續(xù)測(cè)試(CT)提供了基礎(chǔ),徹底告別低頻次的“周測(cè)”、“月測(cè)”。
擺脫硬件、臺(tái)架與人工依賴
整個(gè)測(cè)試過(guò)程無(wú)需真實(shí)ECU、復(fù)雜臺(tái)架或人工重復(fù)操作。通過(guò)腳本自動(dòng)化執(zhí)行,結(jié)果具備完全一致性與可回溯性。
調(diào)試成本大幅降低
在SIL環(huán)境中,工程師可直接在IDE(如Visual Studio)中打斷點(diǎn),實(shí)時(shí)查看變量、堆棧與任務(wù)狀態(tài),不再受硬件調(diào)試器的限制,顯著提升排查效率。
安全模擬危險(xiǎn)、極限與難復(fù)現(xiàn)工況
例如傳感器斷連、總線報(bào)文突發(fā)丟失、信號(hào)越界、服務(wù)器中斷及極端溫度電壓等場(chǎng)景,在實(shí)車或硬件測(cè)試中難以安全復(fù)現(xiàn),而SIL可無(wú)限次模擬,為軟件魯棒性驗(yàn)證提供關(guān)鍵支撐。
正因如此,SIL測(cè)試已不再局限于先進(jìn)團(tuán)隊(duì)的PoC驗(yàn)證嘗試,而是正在快速重塑汽車軟件開發(fā)與測(cè)試的驗(yàn)證體系。
02vECU的不同等級(jí)與應(yīng)用場(chǎng)景
為覆蓋從模型驗(yàn)證到量產(chǎn)代碼測(cè)試的全流程,虛擬ECU(vECU)常被劃分為不同等級(jí)。每個(gè)等級(jí)對(duì)應(yīng)著不同的軟件集成度、模擬程度,以及對(duì)底層軟件(BSW)和硬件的依賴程度。接下來(lái)將系統(tǒng)介紹從最輕量的Level 0到最接近真實(shí)硬件的Level 4,共五種vECU類型及其典型應(yīng)用。

圖2:不同層級(jí)的vECU
Level 0 vECU(應(yīng)用模型/MIL)
最輕量級(jí)形態(tài),僅包含控制器模型(如Simulink生成的代碼),不涉及RTE或BSW。主要用于模型在環(huán)(MIL)測(cè)試,適用于算法驗(yàn)證與功能早期評(píng)估。
Level 1 vECU(應(yīng)用層+RTE樁函數(shù))
在量產(chǎn)應(yīng)用軟件組件(SWC)基礎(chǔ)上,通過(guò)工具生成運(yùn)行環(huán)境(如RTE與OS的樁函數(shù)或框架),使應(yīng)用層代碼能在仿真中執(zhí)行。除了Level 0階段測(cè)試的SWC應(yīng)用邏輯外,Level 1 SIL測(cè)試還可以驗(yàn)證完整的ECU軟件架構(gòu)與RTE接口集成,顯著前移缺陷暴露的時(shí)間。
Level 2 vECU(應(yīng)用層+模擬BSW)
在Level 1基礎(chǔ)上加入模擬的底層軟件模塊(如COM、NvM、DCM/DEM等),可進(jìn)行更全面的功能測(cè)試。該層級(jí)還支持總線級(jí)仿真,支持利用虛擬網(wǎng)絡(luò)實(shí)現(xiàn)系統(tǒng)級(jí)交互測(cè)試。
Level 3 vECU(應(yīng)用層+真實(shí)BSW+虛擬硬件)
進(jìn)一步集成真實(shí)量產(chǎn)的BSW,并通過(guò)硬件抽象模擬MCU資源(如MCAL、OS)。涵蓋全量產(chǎn)軟件棧,支持復(fù)雜通信配置、存儲(chǔ)流程及AUTOSAR全棧集成測(cè)試,可在HIL測(cè)試前承擔(dān)大量系統(tǒng)驗(yàn)證任務(wù)。
Level 4 vECU(目標(biāo)代碼/全量產(chǎn)軟件)
包含為具體ECU編譯的全套量產(chǎn)代碼(含硬件相關(guān)部分),通常需在指令集模擬器中運(yùn)行。因建模復(fù)雜、執(zhí)行效率低、成本高,多用于芯片級(jí)驗(yàn)證,在常規(guī)汽車軟件測(cè)試中較少使用。
03軟件先行:基于AUTOSAR架構(gòu)的ECU虛擬化“加速器”vVIRTUALtarget
為構(gòu)建并完善軟件在環(huán)(SIL)測(cè)試的vECU生態(tài)體系,Vector將在ECU虛擬化領(lǐng)域深耕近十年的技術(shù)積淀集成在vVIRTUALtarget pro SE(以下簡(jiǎn)稱vVIRTUALtarget)中,協(xié)助用戶高效構(gòu)建運(yùn)行于Windows或Linux環(huán)境下的Level 1至Level 3虛擬控制器,為軟件定義汽車的敏捷開發(fā)提供堅(jiān)實(shí)的虛擬化仿真基礎(chǔ)。

圖3:vECU生成器vVIRTUALtarget工作流
vVIRTUALtarget是一款帶有圖形界面的應(yīng)用軟件,集成Visual Studio和CMake編譯器。用戶可通過(guò)拖拽操作輕松使用,并支持一鍵導(dǎo)出腳本工程和后續(xù)的命令行持續(xù)集成(CI)。

圖4:vVIRTUALtarget工程配置界面
對(duì)于Level1/2 vECU生成過(guò)程,vVIRTUALtarget支持:
標(biāo)準(zhǔn)AUTOSAR OS及RTE生成;
A2L文件自動(dòng)生成;
vECU運(yùn)行環(huán)境(CANoe工程)及交互接口自動(dòng)生成;
構(gòu)建Visual Studio/Visual Studio Code項(xiàng)目倉(cāng)庫(kù),支持后續(xù)代碼編寫、軟件編譯及工程調(diào)試。

圖5:vVIRTUALtarget中vECU編譯配置
在進(jìn)行虛擬控制器開發(fā)過(guò)程中,除了軟件編譯環(huán)節(jié)外,主要技術(shù)挑戰(zhàn)還包括以下幾個(gè)方面:
如何在虛擬ECU運(yùn)行平臺(tái)上訪問(wèn)SWC(軟件組件)端口?
如何高效地監(jiān)控vECU內(nèi)部端口的數(shù)據(jù)流動(dòng)?
如何有效刺激應(yīng)用層,以驗(yàn)證SWC在虛擬環(huán)境中的正常運(yùn)行?
為應(yīng)對(duì)上述問(wèn)題,vVIRTUALtarget在構(gòu)建vECU時(shí)會(huì)自動(dòng)生成相關(guān)接口,便于用戶對(duì)軟件系統(tǒng)進(jìn)行觀察與調(diào)試,包括:
開放RTE端口(Open RTE Ports)
- 支持直接訪問(wèn)Open Port的數(shù)據(jù)元素(Data Elements)
- 能從CANoe中直接采集與激勵(lì)應(yīng)用端口數(shù)據(jù)
端口監(jiān)控(Port Monitoring)
- 支持SWC內(nèi)部連接的信號(hào)流監(jiān)控
- 支持XML文件(*.vttpm)管理RTE端口
Open RTE Ports進(jìn)行外部輸入輸出設(shè)置,Port Monitoring打開內(nèi)部視野,它們共同讓AUTOSAR vECU“可監(jiān)控、可調(diào)試、可驗(yàn)證”。
04Level 1 vECU-虛擬調(diào)試、虛擬診斷、虛擬標(biāo)定、虛擬存儲(chǔ)
通過(guò)vVIRTUALtarget生成的vECU支持在CANoe中一鍵導(dǎo)入并映射I/O接口,有效打通從SIL到HIL的測(cè)試鏈路,確保測(cè)試腳本與仿真模型在不同階段的完全復(fù)用。這種方法極大提升了CANoe的應(yīng)用維度,使其在虛擬驗(yàn)證階段即可開展自動(dòng)化測(cè)試與異常調(diào)試。除常規(guī)功能驗(yàn)證外,該方案進(jìn)一步拓展了虛擬診斷、標(biāo)定及存儲(chǔ)測(cè)試的能力。以下通過(guò)實(shí)際案例展示其應(yīng)用效果。

圖6:有效的vECU與HIL復(fù)用
虛擬診斷
車門控制器SWC功能說(shuō)明:該模塊用于監(jiān)測(cè)車門節(jié)點(diǎn)及車輛電瓶電壓狀態(tài)。在發(fā)生車門節(jié)點(diǎn)丟失或檢測(cè)到電瓶電壓異常(過(guò)高或過(guò)低)時(shí),將通過(guò)標(biāo)準(zhǔn)DEM診斷接口上報(bào)相應(yīng)的DTC故障碼。

圖7:vECU在CANoe中實(shí)現(xiàn)虛擬診斷
在CANoe環(huán)境下導(dǎo)入Level 1 vECU后,可清晰展示其輸入輸出接口。通過(guò)Panel界面能夠直觀地監(jiān)控故障注入過(guò)程,并結(jié)合診斷控制臺(tái)讀取相關(guān)DTC,實(shí)現(xiàn)對(duì)SWC功能的全面測(cè)試。此外,所有操作均可借助CANoe自動(dòng)化腳本實(shí)現(xiàn)流程自動(dòng)化,從而大幅提升驗(yàn)證工作的完整性與效率。
虛擬標(biāo)定
車燈控制器SWC的算法邏輯包括:系統(tǒng)根據(jù)光線傳感器采集的亮度數(shù)據(jù)自動(dòng)執(zhí)行大燈啟閉操作,其開啟與關(guān)閉閾值可通過(guò)標(biāo)定進(jìn)行調(diào)整,以實(shí)現(xiàn)精確控制。

圖8:vECU配置在CANoe實(shí)現(xiàn)CCP/XCP變量測(cè)試
在CANoe環(huán)境中導(dǎo)入Level 1 vECU后,可通過(guò)加載相應(yīng)的A2L文件進(jìn)行閾值參數(shù)讀寫。將不同亮度信號(hào)輸入至Level 1 vECU,經(jīng)由Panel面板可直觀展示控制算法運(yùn)行過(guò)程及效果。此外,標(biāo)定變量亦可利用CANoe自動(dòng)化腳本完成,實(shí)現(xiàn)參數(shù)調(diào)整的自動(dòng)化操作。
虛擬存儲(chǔ)
儀表控制器SWC的功能主要負(fù)責(zé)管理車輛里程表和車外后視鏡位置等在ECU軟復(fù)位后需持續(xù)保留的數(shù)據(jù)信息。該模塊核心體現(xiàn)AUTOSAR非易失性存儲(chǔ)(NvM)機(jī)制的應(yīng)用。在Level 1 vECU環(huán)境中,EcuM與NvM模塊由vVIRTUALtarget進(jìn)行模擬并協(xié)同運(yùn)行,以演示ECU生命周期管理及運(yùn)行數(shù)據(jù)的存儲(chǔ)和恢復(fù)過(guò)程。

圖9:vECU實(shí)現(xiàn)虛擬存儲(chǔ)
在CANoe環(huán)境下導(dǎo)入Level 1 vECU后,可通過(guò)CANoe的面板、信號(hào)或CAPL程序模擬駕駛員操作、車輛狀態(tài)及ECU狀態(tài)(如點(diǎn)火、檔位、EcuM_State等),并將相關(guān)信號(hào)通過(guò)接口變量傳遞至Level 1 vECU,以便對(duì)里程表及后視鏡設(shè)置在運(yùn)行及復(fù)位前后的行為變更進(jìn)行觀測(cè)。Level 1 vECU在控制器斷電后會(huì)將非易失性變量存儲(chǔ)到文件,上電時(shí)則從對(duì)應(yīng)文件讀取值并賦予相應(yīng)變量,實(shí)現(xiàn)功能測(cè)試與驗(yàn)證流程。
05SDV標(biāo)配vECU解決研發(fā)“內(nèi)卷”
在軟件定義汽車(SDV)的趨勢(shì)下,算法集成正由分散轉(zhuǎn)向ZCU/HPC,多方代碼的集成測(cè)試與質(zhì)量把控迫在眉睫。為了支撐整車廠的數(shù)字孿生戰(zhàn)略及AI驅(qū)動(dòng)的數(shù)據(jù)閉環(huán)測(cè)試,供應(yīng)商必須提供可量產(chǎn)化的vECU。采用CANoe實(shí)現(xiàn)從HIL到SIL的無(wú)縫遷移,不僅能最大化利用既有測(cè)試資產(chǎn),還能打破開發(fā)壁壘,提升業(yè)務(wù)鏈整體交付效率。而vECU的方式使得開發(fā)與測(cè)試同步,從而避免傳統(tǒng)迭代的技術(shù)“瓶頸”。

圖10:CANoe貫通SIL與HIL全鏈路驗(yàn)證
-
傳感器
+關(guān)注
關(guān)注
2577文章
55436瀏覽量
793675 -
測(cè)試
+關(guān)注
關(guān)注
9文章
6369瀏覽量
131632 -
軟件
+關(guān)注
關(guān)注
69文章
5349瀏覽量
91859 -
ecu
+關(guān)注
關(guān)注
14文章
991瀏覽量
57474
原文標(biāo)題:vECU/SIL: OEM從“技術(shù)嘗鮮”到“研發(fā)標(biāo)配”
文章出處:【微信號(hào):VectorChina,微信公眾號(hào):Vector維克多】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
軟件在環(huán)(SIL)測(cè)試方案及康謀aiSim實(shí)現(xiàn)路徑
漢威科技?xì)怏w探測(cè)器獲頒TüV萊茵SIL2功能安全認(rèn)證證書
從 HiL 到 vECU SiL:汽車控制器驗(yàn)證為什么正在加速前移
CANoe性能問(wèn)題的處理方法
vECU/SIL: OEM從“技術(shù)嘗鮮”到“研發(fā)標(biāo)配”
新思科技Silver解鎖FreeRTOS虛擬ECU潛能
Include File解鎖Vector Logger Suite高階功能
高頻OTA時(shí)代,如何用SIL測(cè)試兼顧軟件可靠性和迭代速度?
CANoe.Diva典型使用問(wèn)題五則
車載軟件vECU虛擬化測(cè)試解決方案
CANoe中ADAS功能集介紹
【文章轉(zhuǎn)載】CANoe產(chǎn)品體系19版本新功能(下) - 基礎(chǔ)功能與XIL測(cè)試
Vector Team Services中國(guó)服務(wù)正式上線
CANoe產(chǎn)品體系19版本新功能(下)
Vector CANoe中vECU/SIL測(cè)試功能
評(píng)論