倪計民 李曉錦 石秀勇
(同濟大學)
基于NI PXI平臺的發動機ECU HIL系統上位機程序開發
倪計民 李曉錦 石秀勇
(同濟大學)
基于NI PXI實時硬件平臺,利用實時配置軟件Veristand搭建了發動機ECU HIL系統的上位機程序,實現了對ECU控制算法驗證、參數標定和電氣故障測試等功能。利用LabVIEW FPGA模塊開發的自定義設備程序,既可實現上位機對測試數據的組織和管理,又可模擬發動機時序信號、采集ECU的噴油點火PWM信號;利用ECU測量與標定工具包中的自定義設備XCP and CCP Master,實現了對ECU測量參數和標定參數的讀寫,進而進行初步標定;利用基于PXI 2510開關板卡的自定義設備,實現了ECU電氣故障的測試。試驗結果表明,該上位機程序能夠滿足硬件在環仿真測試的實時性要求。
汽車控制器的開發普遍采用基于V型的現代設計開發流程,包括建模及離線仿真、快速原型開發、目標代碼生成、硬件在環(HIL)仿真測試、實車試驗與標定等5個環節。其中,硬件在環仿真測試是關鍵環節,主要負責ECU的控制算法驗證和電氣故障測試,可大大縮短ECU開發周期并降低成本[1]。
NI PXI平臺在硬件在環測試方面具有軟硬件系統集成一體化的優勢。首先,裝載實時操作系統(如ETS)的PXI實時控制器可保證仿真模型的實時運行;其次,豐富的模擬和數字I/O板卡、汽車總線接口卡(CAN、LIN、FlexRay)以及基于PFGA技術的可重配置I/O板卡能夠滿足汽車絕大多數信號的接口需求;同時,作為專門為硬件在環測試任務開發的實時配置軟件Veristand,支持從LabVIEW軟件和第三方環境中導入控制算法、仿真模型,可以實現快速配置實時I/O、激勵文件、數據記錄等任務。
本文基于NI PXI硬件搭建了ECU HIL測試平臺,利用Veristand軟件設計了該平臺的上位機程序,并對程序進行了試驗驗證。
發動機ECU HIL平臺的主要作用是對ECU進行以下測試:將ECU控制的汽油機瞬態模型下載到PXI實時控制器中,完成ECU控制算法的驗證;在V型開發流程的硬件在環仿真階段對一系列參數進行初步標定,以減少后期試驗臺架的標定工作;利用故障注入模塊模擬一系列的電氣故障,按照相應的測試標準對ECU進行全面的故障測試。
發動機ECU HIL平臺硬件結構主要包括ECU、NI PXI平臺、PC上位機等3部分,如圖1所示。計算機通過以太網與PXI控制器進行通信,ECU通過線束與PXI模擬數字板卡以及CAN接口卡連接。
2.1 ECU及發動機模型
ECU選用某公司生產的112針產品,ECU控制的發動機為enDYNA軟件開發的6缸汽油機瞬態模型,能夠根據采集的油門、制動、擋位等信號按照相應的控制算法控制發動機噴油、點火,并對電子節氣門進行反饋調節。
2.2 NI PXI平臺
NI PXI平臺的硬件在環結構如圖2所示。
圖2 中,NI PXI-8110控制器采用2.26GHz四核處理器,內搭載ETS嵌入式實時操作系統,能夠保證模型的實時運行;利用PXI7833R多功能RIO模塊提供的可編程FPGA芯片和LabVIEW軟件中的FPGA模塊可配置實時性要求較高的信號,如發動機時序信號、發動機噴油和點火PWM信號、電子節氣門反饋控制模擬信號等;NI9151擴展機箱中的I/O模塊用來調理7833R板卡信號,如增大通道驅動電流、提升通道電壓等,以便直接與ECU進行電氣連接;PXI6704為模擬輸出卡,負責發動機模型中模擬信號的輸出,如進氣歧管壓力、進氣歧管溫度、油門踏板位置等;開關卡PXI 2510為ECU提供一系列人為制定的電氣故障,以便測試ECU的電氣可靠性;PXI 8513雙端口CAN接口卡適用于NI-XNET驅動,一方面可直接導入CAN數據庫或自定義CAN信號,以便實現ECU與上位機的通信,另一方面也可以搭載ECU標定信息,實現在上位機中對ECU進行標定。
2.3 PC上位機
PC上位機主要實現以下功能:
a.硬件在環測試過程中的數據監視、數據記錄、預警報警及測試激勵;
b.采集和改寫ECU的測量參數和標定參數,對ECU進行初步的標定;
c.在故障注入模塊中按照測試標準配置一系列的電氣故障,測試ECU的可靠性。
上位機測試環境利用Veristand軟件進行配置。Veristand是一個基于配置的實時測試軟件,內部引擎是控制整個系統、執行主機和用戶界面之間通信定時的執行核心,負責執行模型運行、硬件I/O和系統定義文件(System Definition File)中指定的其它測試任務。系統定義文件包含了執行Veristand引擎任務的設置選項,如目標機配置、硬件I/O配置、模型導入、接口映射、自定義設備導入等,文件部署后運行在PXI控制器中;上位機監視界面為工作區(Workspace),運行時可編輯操作,其部署后運行在PC上位機中。
為了實現上位機的3種功能,采用在Veristand軟件中開發自定義設備(Custom Device)的方式,將特定的功能添加至Veristand引擎。由于創建自定義設備的LabVIEW模板庫中包含針對Veristand數據和定時資源的接口,使得自定義設備能夠像Veristand引擎中的本地任務一樣運行[2]。
本文利用LabVIEW軟件及FPGA模塊設計了一套ECU自定義設備程序,能夠精確模擬發動機時序信號,并實時采集ECU噴油、點火信號。另外,利用NI公司已經提供的XCP and CCP Master和NI FIU自定義設備進行ECU標定和電氣故障測試。
3.1 ECU自定義設備
ECU自定義設備程序實現的功能包括:
a.根據發動機模型功能需求,將PXI 7833R以及cDAQ擴展機箱的輸入、輸出接口信號進行統一封裝管理,便于參數配置及后期維護;
b.利用FPGA模塊模擬發動機曲軸、凸輪軸時序信號,采集噴油、點火PWM信號,并對電子節氣門進行反饋控制。
自定義設備的程序開發框架如圖3所示。利用labview軟件自帶的Custom Device Template Tool生成一個項目工程,包括Custom Device API library、Custom Device library、XML文件、Build Specifications等4部分。Custom Device API library包含了與veristand的數據和定時資源相聯系的API函數;Custom Device library包含自定義設備configuration and RT Engine VIs;XML文件包含引導Veristand下載、調用和發布自定義設備的定義;Build Specifications為自定義設備編譯發布的source distributions,開發完成后發布為LLB庫文件的格式,圖3中無陰影部分文件為最終自定義設備打包的內容。
生成自定義設備程序框架后,對Custom Device library中的VI進行配置,自定義設備庫函數主要包括配置VI程序、RT Driver VI子程序和FPGA VI子程序等3部分。
3.1.1 配置VI程序
利用Veristand API函數(Initialization VI和Page VI等)對通道、屬性、層次關系和頁面進行配置。通道用來在自定義設備和Veristand引擎之間交換數據;屬性用來在自定義設備內部傳遞配置數據和狀態信息;樹形層次結構配置用來組織和管理設備接口通道;頁面用來顯示參數配置的界面。
3.1.2 RT Driver VI子程序
RT Driver VI實現的功能為:
a.程序框架是單循環結構,采用RT FIFO實現自定義設備與上位機的通信,采用異步的執行方式,見圖4。
b.配置發動機曲軸傳感器齒輪參數和凸輪軸傳感器齒輪參數,曲軸信號齒輪是60-2齒,凸輪軸信號齒輪為4齒。同時,將發動機轉速值轉換以FPGA芯片中40M時鐘滴答計算的曲軸轉角值degree per tick,見圖5。
3.1.3 FPGA VI子程序
FPGA VI實現的功能為:
a.發動機時序信號是控制發動機噴油、點火的基準時間信號,一般發動機1個循環的噴油持續時間為幾毫秒,所以對仿真精度要求較高。利用LabVIEW FPGA模塊仿真發動機時序信號能夠滿足精度要求,當發動機轉速為1 000 r/min時,曲軸轉角的精度能夠達到0.000 15°。
AES(Automotive Engine Simulation)庫函數為汽車發動機HIL仿真提供了一系列的FPGA IP核,利用函數中的Crank Angle and Outout.vi來模擬曲軸傳感器信號,并配置曲軸齒輪的齒數、缺齒數及缺齒偏移量等參數;利用Cam Angle and Output.vi來模擬凸輪軸傳感器信號,并配置凸輪軸齒輪的齒數、齒寬[3~6],這2個VI在FPGA中并行執行,共同構成了發動機時序信號,如圖6所示。
利用示波器對仿真的發動機時序信號進行測試,配置參數及試驗結果見圖7和圖8。其中,周期短的脈沖為曲軸傳感器信號,周期長的脈沖為凸輪軸傳感器信號。結果表明,2個信號能夠按照設置的相位關系產生時序信號。
b.定時循環負責采集ECU點火PWM信號,然后計算出PWM的起噴角Start Angle、停噴角End Angle、持續噴射角Angle Duration和持續噴射時間;定時循環采集ECU的PWM噴油控制信號,然后計算出PWM的脈寬時長。圖9為發動機點火PWM采集程序。
所有的VI配置完成后,將FPGA VI編譯成LabVIEW可識別的Bitfile文件,供RT Driver VI調用。最后,將自定義設備的項目程序打包為LLB庫文件,以便后續在veristand軟件中調用。
3.2發動機ECU標定
利用NI公司提供的ECU測量與標定工具包對ECU進行初步標定。該工具包基于通用測量校準協議(XCP)和CAN校準協議(CCP),能根據ASAM(.A2l)數據庫文件中的定義,對內部ECU觀測變量和標定變量進行讀寫。工具包中包含了供上位機Veristand軟件調用的自定義設備XCP and CCP Master,上位機作為主設備與從設備ECU進行通信。
利用PXI 8513(雙接口CAN卡)實現上位機與ECU的通信。標定ECU時,將2種用途的CAN數據幀區分到2個CAN接口,一種用于ECU和上位機的信息交流,另一種用于搭載標定信息。該試驗采用CCP高速主從協議,利用“CTO”(命令傳輸對象)和“DRO”(數據采集對象)來區分主、從通信,CTO用于向從設備傳輸命令,DRO用于從從設備獲取連續數據。
在上位機中,將XCP and CCP Master自定義設備添加至veristand軟件系統定義文件中,選取標定的數值型變量、一維變量、二維變量和需要觀測的測量參數[7]用于定制標定界面。主設備采用基于CAN總線的標定協議CCP,并指定描述ECU結構和通信參數的A2L文件,選擇CAN 2端口搭載標定信息[7]。在工作區中,定制需要標定和測量的參數并與相應的控件連接。標定時,根據測量變量在線調節標定參數并選取最優值,圖10為一維標定參數的標定。
3.3 ECU電氣故障測試
為測試ECU的電氣性能可靠性,在NI PXI平臺與待測ECU之間插入故障注入單元FIU(Fault Insertion Units),通過實時目標機板卡的內部繼電器開關來模擬故障,主要包括仿真開路、管腳間短路(pin-to-pin)、對電池短路、對地短路故障,如圖11所示。繼電器開發最大可支持2A的運載和切換電流。
利用基于PXI-2510開關板卡開發的自定義設備NI FIU來為ECU模擬故障。PXI-2510開關板卡的68路通道配有2條故障總線(busA和busB),每條故障總線有4個可選輸入端。在Veristand軟件中,通過選擇故障通道(Fault Channel)和故障總線(Fault Bus)的狀態來配置繼電器開關,從而實現故障的自定義輸入。圖12定義了一個Channel 66和Channel 67之間短路的故障,以此類推,可以根據相應的測試要求,配置多組自定義故障[8]。
上述故障為手動配置,也可以利用Veristand軟件自帶的激勵文件或第三方測試軟件(如Teststand)實現多組故障的連續測試。
以某發動機為例,測試上位機程序是否能夠滿足硬件在環測試要求。在Veristand上位機程序中,將油門和制動都設置為0,擋位處于“P”狀態,使發動機處于怠速工況。此時,發動機轉速約為1 200 r/min,車速為0,見圖13;各缸噴油、缸內點火次序遵循“1-5-3-6-2-4”的順序,如圖14所示。試驗結果表明,ECU HIL平臺能夠按照上位機的操作對上位機進行相應的反饋,功能設計正確。另外,在發動機加速、減速工況,通過調節油門、制動和擋位,發動機轉速和車速隨油門踏板的開度實時變化,表明ECU控制算法能夠滿足硬件在環測試實時性的要求。
利用Veristand軟件為發動機ECU HIL測試平臺設計了上位機程序,實現了ECU控制算法驗證、參數初步標定和電氣故障測試的功能。利用CCP協議實現對ECU測量參數和標定參數的讀寫,從而對ECU的關鍵性參數(如點火提前角、空燃比等)進行初步標定,為后期的試驗標定提供基礎標定數據。利用故障注入單元FIU,為待測模擬常見的電氣故障,既可以通過手動配置實現單個測試,也可以通過程序測試序列實現連續性測試。以發動機怠速工況為例,對ECU控制算法進行驗證,試驗結果表明該上位機程序能夠滿足硬件在環測試實時性的要求。
1劉巨江,周文華,何正胤,等.基于模型的發動機ECU開發.汽車工程,2007(11):938~941.
2NI VeriStand 2010 Custom Device Developer's Guide, National Instruments White Paper.http://www.ni.com/whitepaper/12712/en
3張永光,吳鋒,方正,等.發動機HILS系統曲軸轉速與凸輪相位信號模擬.浙江大學學報(工學版),2011(7):1221~1226.
4Chris Washington,Jordan Dolman.Creating Next Generation HIL Simulators with FPGA Technology.IEEE,2010.
5Automotive Engine Simulation(AES)Library for HIL, NationalInstrumentsWhitePaper.https://decibel.ni.com/ content/docs/DOC-5684.
6HIL Automotive Engine Simulation Reference Example.http: //zone.ni.com/devzone/cda/epd/p/id/6187.
7XCP and CCP Master Add-on for NI VeriStand.http://zone. ni.com/devzone/cda/epd/p/id/6374.
8NI VeriStand Add-on-NI Fault Insertion Units.http://zone. ni.com/devzone/cda/epd/p/id/6248.
(責任編輯文楫)
修改稿收到日期為2013年12月14日。
Design of Host Program for Engine ECU HIL System Based on NI PXI Platform
Ni Jimin,Li Xiaojin,Shi Xiuyong
(Tongji University)
Based on NI PXI real-time hardware platform,a host program for engine ECU HIL system is established with real-time software Veristand for ECU control algorithm validation,parameter calibration and electric fault test.A custom device program developed with labview FPGA module provides an effective way for organization and management of test data in the host computer,simulation of engine sequence signal and acquisition of the PWM signal of injection and ignition;the custom device XCP and CCP Master included in ECU and calibration toolkit can read and write ECU measurement parameter and calibration parameter and thus ECU could be preliminarily calibrated;with a custom device program based on the switch card-PXI 2510,ECU electric faults could be tested.Test results show that the host program can satisfy the real-time requirement of HIL simulation test.
Engine,ECU HIL system,Host pc,PXI platform,Program development
發動機ECU HIL系統上位機PXI平臺程序開發
U464.12
:A
:1000-3703(2014)03-0054-05