蔡永祥 丁光林 張?jiān)讫?/p>
基于虛擬儀器的程控FIU設(shè)計(jì)
蔡永祥 丁光林 張?jiān)讫?/p>
(中國(guó)汽車(chē)技術(shù)研究中心,天津 300300)
使用自行開(kāi)發(fā)的故障注入板卡組成故障注入箱,串聯(lián)在ECU與硬件在環(huán)(HIL)系統(tǒng)之間,通過(guò)CAN總線或串口控制,實(shí)現(xiàn)任一通道的開(kāi)路、對(duì)地或?qū)﹄娫炊搪芳叭我鈨赏ǖ乐g短路故障注入?;贜I公司的LabVIEW軟件編寫(xiě)上位控制界面,支持一鍵導(dǎo)入各通道故障注入模式配置文件,使用靈活可靠。
程控 FIU HIL LabVIEW
為提高車(chē)輛動(dòng)力性、舒適性與排放性,大量電控模塊被應(yīng)用到汽車(chē)上。HIL系統(tǒng)是ECU開(kāi)發(fā)工作中必不可少的平臺(tái),應(yīng)用該技術(shù)可有效地縮短開(kāi)發(fā)周期、降低開(kāi)發(fā)成本。[1]
故障注入單元(Fault Injection Unit,F(xiàn)IU)是一種升級(jí)仿真系統(tǒng)的簡(jiǎn)便方法,其可串聯(lián)在ECU與HIL系統(tǒng)之間,通過(guò)程控實(shí)現(xiàn)任一通道的開(kāi)路、對(duì)地或?qū)﹄娫炊搪芳叭我鈨赏ǖ乐g短路故障注入,而無(wú)需額外配置。
本文使用自行開(kāi)發(fā)的故障注入板卡組成故障注入單元,該FIU提供90個(gè)通道,單通道上允許通過(guò)的電流可達(dá)10A,具有7種故障注入模式,可用于執(zhí)行器故障注入,也能用于傳感器故障注入。
圖1 帶FIU的HIL系統(tǒng)簡(jiǎn)圖
該FIU主要由9塊故障注入板卡組成,開(kāi)關(guān)類(lèi)型為繼電器,使用12V電源。依據(jù)測(cè)試需求,編寫(xiě)了MCU控制程序。
基于NI LabVIEW編寫(xiě)上位控制界面,包括導(dǎo)入測(cè)試用例配置文件、多通道故障注入、監(jiān)控故障注入后的ECU相應(yīng)狀態(tài)等。上位控制界面通過(guò)RS232或CAN與FIU通信。
故障注入單元可整合到大型測(cè)試機(jī)柜內(nèi)部,也可作為單獨(dú)的設(shè)備使用。
故障注入單元的前面板如下圖所示:
圖2 故障注入單元前面板
故障注入功能通過(guò)板卡實(shí)現(xiàn)。每塊板卡上有20個(gè)繼電器和10個(gè)通道,每個(gè)通道中使用2個(gè)繼電器。一個(gè)繼電器中有兩個(gè)開(kāi)關(guān),即單個(gè)通道由4個(gè)開(kāi)關(guān)控制。板卡一端接ECU,另一端接負(fù)載,其原理簡(jiǎn)圖如下:
圖3 故障注入板卡原理圖
當(dāng)K42、K11、K40和K41四個(gè)開(kāi)關(guān)均斷開(kāi)時(shí),ECU與負(fù)載接通,此為正常狀況。其余開(kāi)關(guān)狀態(tài)與故障模式的對(duì)應(yīng)關(guān)系如表1所示:
表1 開(kāi)關(guān)狀態(tài)與其所對(duì)應(yīng)的故障模式
3.1 板卡MCU程序
故障注入板卡的核心是微處理器。本文選用16位微處理器,用C語(yǔ)言編寫(xiě)其控制程序?;诖顺绦颍械陌蹇梢酝ㄟ^(guò)CAN或串行通信端口RS232來(lái)控制。各個(gè)板卡之間通過(guò)不同的地址來(lái)識(shí)別,地址通過(guò)板卡上的撥碼開(kāi)關(guān)設(shè)置。為了避免在一條線中傳輸多個(gè)信號(hào),必須先設(shè)置板卡地址,才能實(shí)現(xiàn)故障注入功能。
圖4 FIU故障注入板卡
RS232串行通信格式為9600波特率、1起始位、1停止位、無(wú)奇偶校驗(yàn)位。用串口通信控制時(shí),有兩種故障注入方式:
故障注入方式一:故障能夠持續(xù)任意時(shí)間,直至人為停止故障注入。故障注入方式二:故障持續(xù)特定時(shí)間,然后自動(dòng)恢復(fù)為正常狀態(tài)。開(kāi)關(guān)切換的速度很快,其動(dòng)作時(shí)間的典型值為3ms、釋放時(shí)間的典型值為1.3ms,能夠仿真松動(dòng)的觸點(diǎn)、或在十分精確的時(shí)段內(nèi)注入故障。
用CAN通信控制時(shí),可實(shí)現(xiàn)故障注入方式一。CAN報(bào)文共有8個(gè)字節(jié),其中前7個(gè)字節(jié)用于設(shè)置寄存器狀態(tài),每個(gè)字節(jié)的高四位為板卡通道,低四位為相應(yīng)通道狀態(tài),最后一個(gè)字節(jié)為命令字節(jié),無(wú)效時(shí)設(shè)置為0xFF。0xF0用于板卡所有通道狀態(tài)寄存器清零、繼電器恢復(fù)正常,本報(bào)文其他指令同時(shí)也為無(wú)效。0xFE用于設(shè)置狀態(tài)寄存器響應(yīng)到繼電器輸出。
3.2 上位控制界面
通過(guò)串口通信控制時(shí),微控制器僅能夠識(shí)別數(shù)據(jù)位形式的指令。這種指令十分抽象,不便于測(cè)試人員使用。為了直觀、方便操作、提高測(cè)試效率,本文使用LabVIEW軟件編寫(xiě)了故障注入單元的上位機(jī)控制界面。
圖5 FIU上位機(jī)控制程序
控制界面左側(cè)上方用于配置測(cè)試信息,包括測(cè)試設(shè)備配置文件和測(cè)試用例表格;左側(cè)下方用于輸入控制指令,包括延時(shí)任意時(shí)間、延時(shí)特定時(shí)間、清除故障等。
ECU的診斷功能必須在指定時(shí)間內(nèi)檢測(cè)每個(gè)故障。該程序提供FIU狀態(tài)追蹤顯示,可以測(cè)量或標(biāo)繪FIU狀態(tài),從而監(jiān)控故障注入之后ECU的故障碼和相應(yīng)狀態(tài)。因此,控制界面右側(cè)能夠選擇并顯示所有通道的故障狀態(tài)。
其程序框圖如圖6。
圖6 FIU程序框圖
手動(dòng)版測(cè)試程序具有導(dǎo)入測(cè)試用例表格的功能,優(yōu)點(diǎn)如下:
(1)測(cè)試人員能夠按照一定的格式更改測(cè)試項(xiàng)信息,增加程序應(yīng)用的廣泛性;(2)方便測(cè)試人員實(shí)時(shí)掌握測(cè)試項(xiàng)信息;(3)防止因誤操作而引起的硬件損壞:測(cè)試人員需要選擇某一通道的某個(gè)故障注入功能是否可用。被禁用的故障注入功能不會(huì)出現(xiàn)在故障狀態(tài)選項(xiàng)中,防止特定通道電流過(guò)大而燒毀被測(cè)件或其他設(shè)備,從而達(dá)到保護(hù)硬件的目的。
測(cè)試開(kāi)始時(shí),首先導(dǎo)入測(cè)試設(shè)備配置文件和測(cè)試用例表格。點(diǎn)擊延時(shí)任意時(shí)間,然后點(diǎn)擊某一通道,即可選擇該通道的正常狀況和7種故障狀態(tài)(若故障注入功能均未被禁用)。對(duì)某一通道進(jìn)行故障注入后,再選擇正常狀況,該通道即正常接通。點(diǎn)擊清除故障,則所有通道復(fù)位,故障被全部清除。此為故障注入方式一,可以按順序?qū)Χ鄠€(gè)通道進(jìn)行不同的故障注入。
導(dǎo)入文件后,點(diǎn)擊延時(shí)特定時(shí)間,完成對(duì)通道故障狀態(tài)的選擇,接著在相應(yīng)通道右側(cè)輸入故障持續(xù)時(shí)間,故障即被注入,在此期間任何命令不起作用。到時(shí)間后所有通道自動(dòng)復(fù)位。該功能可以在精確的時(shí)間內(nèi)對(duì)多個(gè)通道進(jìn)行不同的故障注入。測(cè)試用例文檔如圖7所示。
圖7 診斷DTC測(cè)試用例表格
測(cè)試用例表格中未使用的通道在程序界面上同樣被禁止,防止對(duì)測(cè)試工作造成干擾。
本文所述的基于虛擬儀器的FIU,一方面可以集成到HIL測(cè)試系統(tǒng)中,完成對(duì)ECU的故障注入,增加ECU測(cè)試的完整性和可靠性,縮短ECU的開(kāi)發(fā)周期。另一方可以用于診斷功能測(cè)試,大大提高測(cè)試效率,測(cè)試人員能夠?qū)⒕性跍y(cè)試用例上。而完善的診斷功能測(cè)試可以提高車(chē)輛維修的效率,增加整車(chē)的可靠性。
利用LabVIEW軟件編寫(xiě)的FIU上位機(jī)控制軟件,具有故障注入狀態(tài)追蹤顯示、多通道故障注入、防止誤操作等功能,能夠幫助測(cè)試人員高效地完成對(duì)ECU的診斷測(cè)試。
目前,該FIU及其上位機(jī)程序已成功應(yīng)用于某主機(jī)廠新車(chē)型的功能與診斷DTC測(cè)試中。
[1]魏勝鋒,王紹銧等.發(fā)動(dòng)機(jī)實(shí)時(shí)模擬系統(tǒng)中的發(fā)動(dòng)機(jī)模型及其應(yīng)用[J].內(nèi)燃機(jī)工程,2002,24(6):62-64.
[2]胡建軍,趙玉省,秦大同.基于CAN通信的混合動(dòng)力系統(tǒng)硬件在環(huán)仿真實(shí)驗(yàn)[J].中國(guó)機(jī)械工程,2008,19(3):300-304.
[3]孫宏軍,張濤,王超,等.智能儀器儀表[M].北京:清華大學(xué)出版社,2007.
[4]陳樹(shù)學(xué),劉萱.LabVIEW寶典[M].北京:電子工業(yè)出版社,2011.
Design of Remote-Controlled Fault Injection Unit Based on Visual Instrument
CAI Yongxiang, DING Guanglin, ZHANG Yunlong
(China Automotive Technology & Research Center, Tianjin 300300)
The fault injection unit composed of self-developed fault injection boards can be interconnected in series between ECU and HIL system. The unit controlled via one serial communication port RS232 or CAN is able to make the channel an open circuit, shorted to the ground, to the UBat or to any user-defined channel. The host computer program written by NI LabVIEW supports importing the configuration file for fault injection mode of each channel by one click, proved to be flexible and reliable.
programmable control, fault injection unit, hardware-in-the-Loop, labview