鉅大LARGE | 點(diǎn)擊量:783次 | 2020年05月28日
燃料動(dòng)力電池城市客車(chē)數(shù)據(jù)支持系統(tǒng)設(shè)計(jì)
在“863”國(guó)家重大專(zhuān)項(xiàng)燃料動(dòng)力電池城市客車(chē)項(xiàng)目中,燃料動(dòng)力電池發(fā)動(dòng)機(jī)占有舉足輕重的地位。隨著對(duì)燃料動(dòng)力電池控制研究的逐漸深入,新的控制策略要了解燃料動(dòng)力電池在車(chē)用惡劣環(huán)境下的性能變化,以及燃料動(dòng)力電池同其他部件之間的配合情況。因此,設(shè)計(jì)專(zhuān)用的燃料動(dòng)力電池?cái)?shù)據(jù)支持系統(tǒng)以記錄并分析其運(yùn)行數(shù)據(jù)關(guān)于分析燃料動(dòng)力電池發(fā)動(dòng)機(jī)在車(chē)用工況下的特性有著十分重要的意義。
傳統(tǒng)的車(chē)用數(shù)據(jù)記錄系統(tǒng)一般用于記錄交通事故發(fā)生前一段時(shí)間(如15min內(nèi))汽車(chē)的一些運(yùn)行參數(shù),其用途類(lèi)似于飛機(jī)上的“黑匣子”。傳統(tǒng)車(chē)用數(shù)據(jù)記錄系統(tǒng)記錄的數(shù)據(jù)僅為影響到汽車(chē)行駛安全的關(guān)鍵參數(shù),如剎車(chē)信號(hào)、安全氣囊等,其存儲(chǔ)數(shù)據(jù)的時(shí)間跨度不長(zhǎng),并且隨著車(chē)輛的運(yùn)行,新的數(shù)據(jù)會(huì)覆蓋前次記錄的數(shù)據(jù)。而燃料動(dòng)力電池?cái)?shù)據(jù)支持系統(tǒng)的設(shè)計(jì)目的為分析燃料動(dòng)力電池客車(chē)的運(yùn)行狀態(tài)以及燃料動(dòng)力電池在車(chē)用條件下的性能,要記錄整車(chē)所有的運(yùn)行參數(shù)。同時(shí),為了保證記錄數(shù)據(jù)在時(shí)間上的完整性,在記錄數(shù)據(jù)被導(dǎo)入數(shù)據(jù)分析系統(tǒng)進(jìn)行處理和保存之前,已記錄數(shù)據(jù)不會(huì)被覆蓋。本文所述的數(shù)據(jù)支持系統(tǒng),利用燃料動(dòng)力電池控制器的TpU模塊作為控制單元,可在既不影響主控制任務(wù)實(shí)時(shí)性又不新增額外控制器的前提下進(jìn)行數(shù)據(jù)的存儲(chǔ)和時(shí)間的獲取。
本文所述的數(shù)據(jù)支持系統(tǒng),不僅適用于燃料動(dòng)力電池發(fā)動(dòng)機(jī)控制系統(tǒng),還具有較強(qiáng)的適應(yīng)性,稍加改動(dòng)即可應(yīng)用于多種控制器。
1數(shù)據(jù)支持系統(tǒng)處理器選型
常規(guī)的車(chē)用數(shù)據(jù)記錄系統(tǒng)有兩種方法:直接在控制單元的處理器上進(jìn)行數(shù)據(jù)記錄功能的開(kāi)發(fā),或者使用額外的處理器進(jìn)行數(shù)據(jù)記錄功能的開(kāi)發(fā)。前者的優(yōu)點(diǎn)是可以直接利用控制程序中的變量作為存儲(chǔ)數(shù)據(jù),無(wú)需進(jìn)行額外的變量傳遞和采集,但是處理器在執(zhí)行數(shù)據(jù)存儲(chǔ)任務(wù)時(shí)會(huì)占用正常工作資源,降低控制單元的實(shí)時(shí)性能;后者在運(yùn)行過(guò)程中雖然不占用主控制器資源,但是要通過(guò)外部總線、雙口RAM、模擬量采集等方式來(lái)獲取存儲(chǔ)數(shù)據(jù),設(shè)計(jì)較為復(fù)雜,并且新增成本。總之,兩種常用的方法各有利弊。
在燃料動(dòng)力電池城市客車(chē)控制系統(tǒng)中,燃料動(dòng)力電池發(fā)動(dòng)機(jī)控制任務(wù)較多,加入數(shù)據(jù)支持系統(tǒng)后,無(wú)疑會(huì)新增控制器CpU的負(fù)擔(dān),降低控制的實(shí)時(shí)性與可靠性。另一方面,燃料動(dòng)力電池?cái)?shù)據(jù)支持系統(tǒng)要記錄的數(shù)據(jù)較多,如采用單獨(dú)的處理器,則要進(jìn)行大量的數(shù)據(jù)交換工作,會(huì)顯著新增成本。本文針對(duì)所述兩種方法的弊端,設(shè)計(jì)了一種新的數(shù)據(jù)支持系統(tǒng)方法――使用燃料動(dòng)力電池發(fā)動(dòng)機(jī)電控單元處理器中的TpU模塊作為數(shù)據(jù)支持系統(tǒng)的運(yùn)算單元。
燃料動(dòng)力電池控制器數(shù)字核心為Freescale公司的MpC5xx系列單片機(jī),相關(guān)于其他大部分車(chē)用處理器,該系列單片機(jī)擁有獨(dú)特的TpU模塊。TpU(TimerprocessorUnit),即時(shí)間處理單元。在該模塊的結(jié)構(gòu)中,包括獨(dú)立的運(yùn)算單元、程序空間、內(nèi)存區(qū)域、中斷系統(tǒng)、端口,可以認(rèn)為T(mén)pU是一個(gè)嵌入在MpC5xx內(nèi)部的小型微處理器。
同常規(guī)的單片機(jī)程序不同,TpU模塊的程序由微碼編寫(xiě),經(jīng)過(guò)編譯器編譯后,集成在主程序工程文件中并由下載線燒寫(xiě)到單片機(jī)的Flash中。單片機(jī)復(fù)位完成后,在初始化任務(wù)中將TpU程序下載到TpU模塊的程序內(nèi)存,即DpTRAM中(如圖1左所示)。在此后的正常運(yùn)行過(guò)程中,CpU總線同DpTRAM斷開(kāi)(如圖1右所示),TpU模塊通過(guò)TpU內(nèi)部總線從DpTRAM中取指令,并在TpU模塊內(nèi)部的運(yùn)算單元中執(zhí)行,TpU擁有獨(dú)立的RAM區(qū)和寄存器進(jìn)行臨時(shí)變量的存放。因此,在正常運(yùn)行過(guò)程中,TpU和CpU是相互獨(dú)立的處理器,TpU的運(yùn)行不占用CpU資源,從而不會(huì)影響主控制任務(wù)的實(shí)時(shí)性。
在程序的正常運(yùn)行過(guò)程中,TpU與CpU之間通過(guò)HostInterface(如圖2所示)進(jìn)行連接,CpU可以通過(guò)修改HSR寄存器的值來(lái)觸發(fā)TpU運(yùn)行,TpU可以通過(guò)出現(xiàn)CpU中斷的方式與CpU交互。此外,CpU和TpU可以通過(guò)一段公共的內(nèi)存單元(parameterRAM)交換數(shù)據(jù)。MpC5xx系列單片機(jī)擁有兩個(gè)獨(dú)立的TpU模塊――TpUA和TpUB,共有8KB的程序存儲(chǔ)空間。每個(gè)TpU模塊擁有16路輸入/輸出通道,以及256B的parameterRAM、2個(gè)按時(shí)器,并可觸發(fā)16路中斷,能夠獨(dú)立完成較為復(fù)雜的任務(wù)。