熊杰,金振華,2
(1.清華大學(xué)汽車工程系國(guó)家重點(diǎn)實(shí)驗(yàn)室,北京 100084;2.北京電動(dòng)車輛協(xié)同創(chuàng)新中心,北京 100084)
新能源車相對(duì)傳統(tǒng)燃油汽車有節(jié)能環(huán)保的優(yōu)勢(shì),隨著國(guó)家對(duì)環(huán)境治理的不斷重視,新能源車也迎來了越來越好的發(fā)展時(shí)機(jī)。新能源車控制器的開發(fā)是新能源車發(fā)展的重要內(nèi)容,控制器在前期開發(fā)過程中,需要大量的臺(tái)架試驗(yàn)和道路試驗(yàn)[1-3]。新能源車上有整車控制器、BMS控制器、電機(jī)控制器等,汽車控制器之間通過內(nèi)部高速CAN總線進(jìn)行數(shù)據(jù)通信。如果要驗(yàn)證目標(biāo)控制器的內(nèi)部CAN通信功能,按常規(guī)的測(cè)試方法,需要連接多個(gè)控制器實(shí)物進(jìn)行通信,國(guó)內(nèi)外臺(tái)架測(cè)試一般使用這種方案,其優(yōu)勢(shì)是測(cè)試結(jié)果更接近真實(shí)情況,不足是系統(tǒng)復(fù)雜,成本高。采用殘余總線仿真的方法可以驗(yàn)證目標(biāo)控制器的CAN通信功能,減少控制器測(cè)試系統(tǒng)的復(fù)雜度并大大降低測(cè)試成本[4-7]。本研究提出了一種新能源汽車控制器殘余總線測(cè)試平臺(tái)的設(shè)計(jì)方法,可以有效驗(yàn)證目標(biāo)控制器的CAN通信功能。
新能源車控制器主要有整車控制器、電機(jī)控制器、電池管理系統(tǒng)控制器等[8-14]。殘余總線仿真系統(tǒng)原理見圖1。上位機(jī)運(yùn)行Windows操作系統(tǒng)和NI Veristand軟件測(cè)試環(huán)境。殘余總線仿真的目的是通過計(jì)算機(jī)仿真模型來模擬CAN通信網(wǎng)絡(luò)中除待測(cè)控制器以外的CAN通信節(jié)點(diǎn)。在整個(gè)CAN通信網(wǎng)絡(luò)中,其實(shí)是一個(gè)真實(shí)的待測(cè)控制器和多個(gè)虛擬的控制器進(jìn)行CAN通信。這些虛擬的控制器我們稱為VECU,這些VECU根據(jù)它們功能特點(diǎn)的不同,有不同的算法模型,這些算法模型通常使用第三方工具M(jìn)ATLAB/Simulink/Stateflow搭建。通過離線仿真可以對(duì)VECU的算法模型進(jìn)行初步的功能驗(yàn)證。模型通過上位機(jī)電腦MATLAB/Simulink軟件編譯器編譯為DLL文件,下載到一個(gè)運(yùn)行實(shí)時(shí)操作系統(tǒng)的基于PXI架構(gòu)的實(shí)時(shí)控制器上就可以實(shí)時(shí)運(yùn)行了,VECU算法模型的輸入輸出參數(shù)可以很方便地映射到實(shí)時(shí)控制器硬件板卡的相應(yīng)I/O通道上。在上位機(jī)電腦上通過Veristand軟件平臺(tái)可以實(shí)時(shí)控制多個(gè)VECU的CAN通信狀態(tài),在PXI實(shí)時(shí)控制器中可以下載并運(yùn)行多個(gè)VECU的模型。待測(cè)ECU在與VECU進(jìn)行CAN通信時(shí),其通信過程和真實(shí)的ECU通信是一樣的,可以通過觀測(cè)通信總線的狀態(tài)和信號(hào)傳遞時(shí)序發(fā)現(xiàn)CAN通信是否正常工作,比如數(shù)據(jù)幀是否有丟幀等情況。用殘余總線仿真平臺(tái)進(jìn)行待測(cè)控制器的CAN通信功能測(cè)試和用實(shí)物控制器進(jìn)行CAN通信功能測(cè)試相比較,可以評(píng)估殘余總線仿真的有效性。
圖1 殘余總線仿真系統(tǒng)原理
本研究設(shè)計(jì)的殘余總線仿真系統(tǒng)采用基于PXI架構(gòu)的實(shí)時(shí)控制器及配套的I/O接口板卡搭建。PXI是一種開放的儀器總線,它的特點(diǎn)是具備堅(jiān)固的工業(yè)封裝以及插針式結(jié)構(gòu),具有豐富的I/O、通信接口卡以及定時(shí)和觸發(fā)能力[13]。殘余總線仿真系統(tǒng)硬件設(shè)計(jì)見圖2。系統(tǒng)組成結(jié)構(gòu)包括上位機(jī)、下位機(jī)及信號(hào)接口板。上位機(jī)采用一臺(tái)工業(yè)控制PC,安裝有Veristand軟件環(huán)境以及Visual Studio C代碼編譯器。下位機(jī)結(jié)構(gòu)包括PXI-1062機(jī)箱、PXI-8115控制器、PXI-8512 CAN通信接口卡。信號(hào)接口板的作用是將各個(gè)板卡的I/O信號(hào)線引出,方便與待測(cè)控制器進(jìn)行線束連接。下位機(jī)硬件為PXI系統(tǒng),在PXI實(shí)時(shí)控制器上運(yùn)行PharLab實(shí)時(shí)操作系統(tǒng),通過TCP/IP網(wǎng)絡(luò)方式與上位機(jī)連接,其功能主要是實(shí)現(xiàn)程序的下載和實(shí)時(shí)數(shù)據(jù)的傳輸,實(shí)現(xiàn)上位機(jī)對(duì)整個(gè)系統(tǒng)主要參數(shù)的實(shí)時(shí)觀測(cè)。
圖2 殘余總線仿真系統(tǒng)硬件設(shè)計(jì)
Veristand是針對(duì)HiL仿真測(cè)試系統(tǒng)而開發(fā)的軟件環(huán)境,其工作原理見圖3。
圖3 Veristand工作原理
Veristand能夠配置模擬、數(shù)字和基于FPGA的硬件I/O接口,能夠從NI LabVIEW和MathWorks Simulink等建模環(huán)境中導(dǎo)入控制算法和仿真模型,能夠配置激勵(lì)生成、記錄數(shù)據(jù)、計(jì)算通道和事件報(bào)警,能夠利用操作界面實(shí)時(shí)在線監(jiān)控運(yùn)行任務(wù)并與之交互。Veristand開發(fā)環(huán)境運(yùn)行于上位機(jī),其中資源管理器對(duì)實(shí)時(shí)應(yīng)用程序進(jìn)行定義,一個(gè)典型的實(shí)時(shí)應(yīng)用程序需要配置控制模型、硬件I/O接口及通信接口;工作界面包含可自由編輯的人機(jī)接口界面,界面主要有多種輸入控件和顯示控件可以與實(shí)時(shí)應(yīng)用程序進(jìn)行交互;激勵(lì)編輯器用于創(chuàng)建測(cè)試腳本,可以實(shí)現(xiàn)自動(dòng)化測(cè)試。Veristand實(shí)時(shí)引擎在下位機(jī)運(yùn)行,主要實(shí)現(xiàn)模型算法的運(yùn)行、參數(shù)更新、I/O通道刷新以及參數(shù)和故障報(bào)警燈功能。其通過TCP/IP網(wǎng)絡(luò)與上位機(jī)進(jìn)行通信,發(fā)送實(shí)時(shí)的運(yùn)行數(shù)據(jù),同時(shí)接收上位機(jī)設(shè)定的相關(guān)參數(shù)。Veristand定時(shí)功能由硬件來實(shí)現(xiàn),控制精度可達(dá)微秒級(jí)別,同時(shí)引擎可執(zhí)行多個(gè)定時(shí)循環(huán)。
本研究以車載充電機(jī)作為一個(gè)CAN通信節(jié)點(diǎn)與BCU進(jìn)行通信。充電機(jī)Stateflow模型(見圖4)主要分三部分:初始化、充電循環(huán)、充電結(jié)束。初始化模塊主要對(duì)充電機(jī)狀態(tài)進(jìn)行初始化,充電機(jī)狀態(tài)包括充電機(jī)工作狀態(tài)、充電機(jī)充電電流、充電機(jī)充電電壓;充電循環(huán)模塊功能是與BMS進(jìn)行握手通信后,按照BMS充電指令進(jìn)行充電循環(huán);充電結(jié)束模塊判斷電池是否充滿電量和充電異常情況,如果滿足條件將會(huì)關(guān)閉充電機(jī)輸出,停止工作。
圖4 充電機(jī)模型
電池模型(見圖5)采用二階電池模型,戴維南等效電路模型。電池模型主要有三個(gè)模塊:SOC計(jì)算、電壓計(jì)算、極化電流計(jì)算。電池模型有2個(gè)獨(dú)立的回路,一個(gè)是電流源,一個(gè)是電壓源,可以仿真電池的極化現(xiàn)象和自放電現(xiàn)象[14-15]。在電池放電達(dá)到截止電壓時(shí),定義SOC為0,而電池完全充滿到最高截止電壓時(shí),SOC為100%。電池的端電壓可以通過電池管理監(jiān)測(cè)芯片實(shí)時(shí)采集,用來判斷電池的SOC狀態(tài)。
圖5 電池模型
在電池電路模型中,SOC是一個(gè)很重要的參數(shù)。計(jì)算公式如下:
(1)
(2)
Ip=f(SOC,Iinstant),
(3)
VOC=f(SOC,Ip,Iinstant)。
(4)
式中:Qr為剩余電量;Qi為初始的Ah數(shù);Q0為標(biāo)定Ah數(shù);SOC為荷電狀態(tài);Iinstant為瞬時(shí)電流;Ip為極化電流;VOC為電池開路電壓。
電池模型中單體電壓可以隨著充電機(jī)充電參數(shù)的變化而變化。
殘余總線測(cè)試適用于需要對(duì)被測(cè)ECU進(jìn)行多個(gè)相關(guān)聯(lián)ECU的CAN通信聯(lián)調(diào)的情況。本研究待測(cè)ECU選擇BMS的主控制器BCU,測(cè)試界面見圖6。測(cè)試界面可以監(jiān)測(cè)充電機(jī)和BCU的CAN通信數(shù)據(jù)和狀態(tài),也可以仿真BMU的功能進(jìn)行電池參數(shù)采集后通過CAN數(shù)據(jù)發(fā)送,在上位機(jī)可以直接控制BMU的輸出數(shù)據(jù),實(shí)現(xiàn)BCU控制策略算法的驗(yàn)證。
圖6 測(cè)試界面
本研究待測(cè)的控制器是某混合動(dòng)力汽車所用的BMS,該BMS采用主從結(jié)構(gòu),即有一個(gè)主控制器BCU,一個(gè)從控制器BMU。主控器BCU主要功能包括SOC算法、均衡策略算法、安全策略、CAN通信、充放電管理、溫度管理。從控制器BMU主要功能是單體電壓采集、溫度采集、均衡功能。
表1示出虛擬的BMU與真實(shí)BCU進(jìn)行CAN通信的部分?jǐn)?shù)據(jù)。此系統(tǒng)可以實(shí)時(shí)測(cè)試BCU與BMU的通信功能,如果有通信異?;驁?bào)錯(cuò)會(huì)在Veristand的人機(jī)接口界面實(shí)時(shí)觀測(cè)到。此系統(tǒng)也可以通過Veristand軟件環(huán)境注入故障信息,觀察BCU的響應(yīng),此功能不作詳細(xì)描述。
表1 BMS內(nèi)部CAN通信部分?jǐn)?shù)據(jù)
本研究需要仿真的充電機(jī)為車載充電機(jī),型號(hào)為CH4110-14420,適用于144 V鋰電池組,輸入電壓是220 V,額定輸出電壓是144 V,充電電流最大20 A。車載充電機(jī)具有CAN通信功能,這樣有利于在充電過程中隨時(shí)控制充電機(jī)的狀態(tài)。因此將該款充電機(jī)作為CAN通信網(wǎng)絡(luò)中的一個(gè)通信節(jié)點(diǎn),可以與CAN通信總線進(jìn)行數(shù)據(jù)通信,也可以與通信總線上的其他CAN通信節(jié)點(diǎn)進(jìn)行數(shù)據(jù)通信。在充電前,BCU需要和充電機(jī)進(jìn)行CAN通信握手,充電機(jī)向BCU發(fā)送充電機(jī)是否允許充電的CAN報(bào)文(0x1806E5F4),如果允許充電,BCU會(huì)發(fā)送一幀CAN報(bào)文命令(0x18FF50E5),根據(jù)鋰電池當(dāng)前的狀態(tài),輸出鋰電池需要的最大充電電壓、最大充電電流和充電機(jī)控制字狀態(tài)。
本研究針對(duì)BCU進(jìn)行殘余總線仿真測(cè)試,充電機(jī)作為CAN通信網(wǎng)絡(luò)中的一個(gè)通信節(jié)點(diǎn),采用計(jì)算機(jī)模型仿真取代真實(shí)的充電機(jī),方便進(jìn)行充電機(jī)控制和測(cè)試,也更加安全。表2示出了BCU和充電機(jī)的CAN通信過程。
表2 BCU與充電機(jī)CAN通信部分?jǐn)?shù)據(jù)
對(duì)于充電機(jī)和BCU之間的通信故障、通信延時(shí)等問題,都可以通過殘余總線仿真測(cè)試系統(tǒng)進(jìn)行觀察和調(diào)試。根據(jù)充電機(jī)和BCU的通信時(shí)序(見圖7),可以知道兩個(gè)CAN通信節(jié)點(diǎn)之間的通信過程,通過殘余總線仿真平臺(tái)試驗(yàn)可以得到兩者通信的通信時(shí)序。
圖8示出了多個(gè)ECU進(jìn)行聯(lián)調(diào)BCU的響應(yīng)情況。試驗(yàn)過程中,只有被測(cè)對(duì)象BCU采用了實(shí)物,而其他ECU為VECU,即模型算法。在試驗(yàn)前,已知鋰電池單體的允許最高電壓為4.15 V,當(dāng)超過該值繼續(xù)充電的話,會(huì)嚴(yán)重?fù)p害電池。電池管理系統(tǒng)具有單體電池過高保護(hù)功能,如果單體電壓超過限值,BCU會(huì)強(qiáng)制斷開充電回路。在試驗(yàn)過程中,可以在上位機(jī)通過Veristand軟件平臺(tái)對(duì)整個(gè)殘余總線仿真系統(tǒng)進(jìn)行監(jiān)控和實(shí)時(shí)控制。通過在上位機(jī)控制面板上控制電池模型的電壓輸出參數(shù),可以給某個(gè)單體電池提高電壓以達(dá)到加快試驗(yàn)進(jìn)度的作用。正常充電過程中,充電電壓(CAN_CCS_CHAR_V)和充電電流(CAN_CCS_CHAR_C)分別為160 V和17 A,當(dāng)單體最高電壓在7:20時(shí)刻達(dá)到4.15 V以上,會(huì)觸發(fā)BCU的安全保護(hù)控制策略,BCU會(huì)向充電機(jī)發(fā)送CAN控制命令停止充電機(jī)充電,此時(shí)BCU發(fā)送的控制命令字節(jié)(CAN_BMS_CTL_CHA)值為1,充電機(jī)的充電電壓(CAN_CCS_CHAR_V)和充電電流(CAN_CCS_CHAR_C)輸出都為0。當(dāng)單體最高電壓降低到4.15 V以下時(shí),BCU經(jīng)過t時(shí)間(程序設(shè)置的延遲時(shí)間)的延時(shí)后會(huì)重新進(jìn)入充電循環(huán),此時(shí)BCU發(fā)送的控制命令字節(jié)(CAN_BMS_CTL_CHA)值為0,此時(shí)單體最高電壓在7:50時(shí)刻降低到4.1 V,充電機(jī)的充電電壓還是160 V,充電電流已經(jīng)下降到10 A。當(dāng)單體電池的電壓再次充電到4.15 V以上時(shí),在8:50時(shí)刻,BCU又給充電機(jī)發(fā)送了停機(jī)指令,充電機(jī)的充電電壓和充電電流又迅速降為0。BCU響應(yīng)結(jié)果與預(yù)設(shè)的結(jié)果一致,即證明本研究設(shè)計(jì)的殘余總線仿真系統(tǒng)具有驗(yàn)證控制器的控制策略的功能。
圖7 充電過程通信時(shí)序圖
圖8 BMS充電功能驗(yàn)證
基于PXI實(shí)時(shí)控制器搭建一套控制器HIL測(cè)試系統(tǒng)。該HIL系統(tǒng)主要應(yīng)用于控制器的CAN通信總線測(cè)試,通過殘余總線仿真技術(shù),大大降低了系統(tǒng)復(fù)雜度,降低了系統(tǒng)的測(cè)試成本,提高了測(cè)試效率。該仿真平臺(tái)可以用于BMS通信功能測(cè)試中。對(duì)BMS進(jìn)行通信功能測(cè)試只是殘余總線仿真技術(shù)應(yīng)用的一個(gè)方向,采用類似的設(shè)計(jì)思路,可以容易地搭建新能源汽車其他控制器的CAN通信測(cè)試系統(tǒng),比如可用于整車控制器、電機(jī)控制器等ECU的殘余總線測(cè)試。