燃料電池汽車整車控制器硬件在環(huán)實(shí)時(shí)仿真測(cè)試平臺(tái)設(shè)計(jì)
虛擬平臺(tái)的數(shù)字信號(hào)和模擬信號(hào)通過(guò)PCI接口的數(shù)據(jù)采集卡實(shí)現(xiàn)與真實(shí)世界的交換。采用的各種通訊卡一般都具有Matlab底層軟件驅(qū)動(dòng)程序,可以直接用于實(shí)時(shí)仿真。對(duì)于部分不支持Matlab實(shí)時(shí)仿真環(huán)境的數(shù)據(jù)采集卡,可以采用Matlab/Simulink環(huán)境下的S函數(shù)編寫,并在Matlab環(huán)境下調(diào)用動(dòng)態(tài)鏈接庫(kù)。本文采用的PCI1731、PCI1723和PCI1720板卡并不配套Matlab驅(qū)動(dòng)程序,因此采用S函數(shù)進(jìn)行集成。整個(gè)虛擬平臺(tái)共具備32路數(shù)字量輸入接口、32路數(shù)字量輸出接口、32路數(shù)字量輸入/輸出復(fù)用接口、32路模擬量輸入接口和20路模擬量輸出接口。
虛擬平臺(tái)產(chǎn)生或接收的CAN信號(hào)通過(guò)PCI總線與CAN通訊卡相連,由CAN通訊卡通過(guò)CAN總線與待測(cè)整車控制器進(jìn)行通訊。虛擬平臺(tái)支持CAN2.0A和CAN2.0B擴(kuò)展協(xié)議,能夠同時(shí)輸出2路獨(dú)立的CAN信號(hào)。
信號(hào)調(diào)理器硬件設(shè)計(jì)
由于燃料電池客車上的信號(hào)比較復(fù)雜,數(shù)字信號(hào)有24V、12V和5V等不同的驅(qū)動(dòng)電平和驅(qū)動(dòng)方式,模擬信號(hào)也有各種電壓范圍和驅(qū)動(dòng)功率的不同需求。而從虛擬平臺(tái)經(jīng)過(guò)數(shù)據(jù)采集卡輸出的信號(hào)比較單一,故經(jīng)過(guò)信號(hào)調(diào)理器對(duì)信號(hào)進(jìn)行調(diào)理后,才能夠完全再現(xiàn)燃料電池客車上的真實(shí)控制接口,直接與整車控制器連接進(jìn)行仿真測(cè)試。
如圖2所示,虛擬平臺(tái)產(chǎn)生或接收的數(shù)字模擬信號(hào)通過(guò)PCI總線與數(shù)據(jù)采集卡相連。數(shù)據(jù)采集卡與可配置的信號(hào)調(diào)理器之間通過(guò)專用的數(shù)據(jù)線進(jìn)行數(shù)據(jù)交換,經(jīng)過(guò)可配置的信號(hào)調(diào)理器對(duì)信號(hào)進(jìn)行必要的放大、電平轉(zhuǎn)換、邏輯轉(zhuǎn)換后,輸出信號(hào)完全符合實(shí)際整車信號(hào)規(guī)范,并采用標(biāo)準(zhǔn)接口與待測(cè)整車控制器相連,從而實(shí)現(xiàn)對(duì)整車控制器的無(wú)縫連接。通過(guò)調(diào)整可配置信號(hào)調(diào)理器的配置方式,可以實(shí)現(xiàn)各種車輛的不同信號(hào)規(guī)范。信號(hào)調(diào)理器為靈活的母板子板設(shè)計(jì),母板完成通用的信號(hào)連接電源供給等任務(wù),子板完成具體的可配置信號(hào)處理功能。母板和子板聯(lián)合工作,可以根據(jù)用戶的需要隨時(shí)更換子板電路,以滿足不同仿真測(cè)試的需要。
硬件在環(huán)實(shí)時(shí)仿真測(cè)試平臺(tái)軟件設(shè)計(jì)
虛擬整車平臺(tái)軟件設(shè)計(jì)
虛擬整車平臺(tái)基于Matlab/Simulink平臺(tái)構(gòu)建了燃料電池汽車仿真模型,該模型包括燃料電池發(fā)動(dòng)機(jī)、DC-DC變換器、蓄電池、異步驅(qū)動(dòng)電機(jī)及車輛負(fù)載。系統(tǒng)各部件模型一方面需考慮模型精度,另一方面必須滿足實(shí)時(shí)性的要求。整個(gè)模型在Matlab/Simulink xPC Target實(shí)時(shí)仿真環(huán)境上運(yùn)行。整車仿真模型通過(guò)PCI數(shù)據(jù)采集卡和PCI CAN卡實(shí)現(xiàn)與駕駛員和整車控制器的通訊。
虛擬司機(jī)平臺(tái)軟件設(shè)計(jì)
虛擬司機(jī)平臺(tái)實(shí)現(xiàn)了可供駕駛員操作的虛擬駕駛環(huán)境。除了駕駛加速信號(hào)由測(cè)試人員通過(guò)踏板輸入外,其余整車肩停開(kāi)關(guān)、燃料電池開(kāi)關(guān)、電機(jī)轉(zhuǎn)速表、車速表、水溫報(bào)警等控制開(kāi)關(guān)和儀表均由虛擬司機(jī)平臺(tái)實(shí)現(xiàn)。整個(gè)模型基于Matlab/Simulink RTW Target實(shí)時(shí)仿真環(huán)境實(shí)現(xiàn),并利用Matlab Gauges工具箱實(shí)現(xiàn)了整車儀表顯示和控制開(kāi)關(guān)輸入。Gauges是Matlab在Simulink中提供的一款用于顯示監(jiān)控?cái)?shù)據(jù)的儀表開(kāi)發(fā)工具,利用Gauges工具箱可以在Simulink模型中快速地開(kāi)發(fā)出虛擬車用儀表系統(tǒng)。虛擬司機(jī)仿真模型同樣通過(guò)PCI數(shù)據(jù)采集卡和PCI CAN卡實(shí)現(xiàn)與駕駛員和整車控制器的通訊。
實(shí)時(shí)性能分析
Matlab/Simulink為實(shí)時(shí)仿真提供了很好的軟件環(huán)境。Real-TimeWorkshop代碼自動(dòng)生成工具可以將仿真模型編譯生成實(shí)時(shí)C代碼,并支持多種實(shí)時(shí)仿真目標(biāo)環(huán)境,包括Matlab 工具箱RTW Target、xPC Tar-get以及第三方軟件,如dSPACE等。本文選擇了xPC Target和RTW Target來(lái)構(gòu)建虛擬整車平臺(tái)和虛擬司機(jī)平臺(tái)。
整車虛擬平臺(tái)承擔(dān)再現(xiàn)真實(shí)燃料電池汽車運(yùn)行的任務(wù),是整個(gè)測(cè)試平臺(tái)的核心部件。由于燃料電池汽車結(jié)構(gòu)復(fù)雜、控制對(duì)象較多,為了真實(shí)再現(xiàn)整車運(yùn)行情況,系統(tǒng)各部件模型除了需要滿足精度要求外,還必須嚴(yán)格滿足實(shí)時(shí)性的要求。整車虛擬平臺(tái)采用的xPC Target實(shí)時(shí)仿真環(huán)境采用目標(biāo)機(jī)和宿主機(jī)的結(jié)構(gòu),由Matlab生成的實(shí)時(shí)內(nèi)核通過(guò)軟驅(qū)或者USB閃存獨(dú)立運(yùn)行在目標(biāo)機(jī)上,直接調(diào)用CPU資源。仿真模型通過(guò)宿主機(jī)編譯生成實(shí)時(shí)代碼后下載到目標(biāo)機(jī)上運(yùn)行,能夠?qū)崿F(xiàn)嚴(yán)格的系統(tǒng)實(shí)時(shí)仿真。
虛擬司機(jī)平臺(tái)采用的RTW Target實(shí)時(shí)內(nèi)核直接運(yùn)行在Matlab/Simulink環(huán)境中,在同一臺(tái)PC機(jī)上就能夠迅速實(shí)現(xiàn)系統(tǒng)的實(shí)時(shí)仿真。其缺點(diǎn)是由于整個(gè)系統(tǒng)在Windows系統(tǒng)下運(yùn)行,實(shí)時(shí)內(nèi)核不能完全占有PC機(jī)操作系統(tǒng)資源,實(shí)時(shí)性受其他運(yùn)行程序的影響。由于駕駛員模擬操作對(duì)實(shí)時(shí)性要求不高,因此選擇RTW Target實(shí)時(shí)仿真環(huán)境能夠滿足這一要求。
實(shí)時(shí)仿真信號(hào)定義
虛擬整車平臺(tái)、虛擬司機(jī)平臺(tái)的信號(hào)定義如表1、表2所示,與目標(biāo)燃料電池汽車完全保持一致。虛擬整車平臺(tái)定義了燃料電池汽車各部件控制器CAN網(wǎng)絡(luò)節(jié)點(diǎn)協(xié)議以及整車控制器制動(dòng)信號(hào)輸入和整車車速輸出。虛擬司機(jī)平臺(tái)系統(tǒng)信號(hào)包括各種駕駛員指令輸出以及駕駛員面板顯示信息輸入,并定義了一個(gè)數(shù)據(jù)采集CAN節(jié)點(diǎn)。虛擬整車平臺(tái)與虛擬司機(jī)平臺(tái)除了車速信號(hào)、CAN網(wǎng)絡(luò)信號(hào)的聯(lián)系,其他所有信號(hào)均是與整車控制器交互。
評(píng)論