基于ARM9和MPC56x的燃料電池發(fā)動(dòng)機(jī)主控制器
掃描二維碼
隨時(shí)隨地手機(jī)看文章
隨著清潔能源需求的增加,燃料電池發(fā)動(dòng)機(jī)及其在汽車動(dòng)力系統(tǒng)中的應(yīng)用越來越重要。燃料電池按電化學(xué)原理直接將等溫的化學(xué)能轉(zhuǎn)化為電能。由于不受熱機(jī)卡諾循環(huán)的限制,目前各類燃料電池實(shí)際的能量轉(zhuǎn)化率均可達(dá)40%~60%;燃料電池環(huán)境友好、工作安靜、噪聲很低。燃料電池發(fā)動(dòng)機(jī)由空氣系統(tǒng)、氫氣系統(tǒng)、水熱管理系統(tǒng)、增濕系統(tǒng)和電堆等幾部分組成,其結(jié)構(gòu)如圖1所示。
1 分布式燃料電池發(fā)動(dòng)機(jī)控制系統(tǒng)
針對(duì)燃料電池發(fā)動(dòng)機(jī)的上述要求,清華大學(xué)和大連化學(xué)物理研究所合作,研制了分布式燃料電池控制系統(tǒng)。整個(gè)系統(tǒng)以燃料電池發(fā)動(dòng)機(jī)主控制器為核心,包括了2個(gè)發(fā)動(dòng)機(jī)的獨(dú)立控制子系統(tǒng),每個(gè)發(fā)動(dòng)機(jī)控制系統(tǒng)包括電堆控制器節(jié)點(diǎn)、增濕控制器節(jié)點(diǎn)、風(fēng)機(jī)控制器節(jié)點(diǎn)以及4個(gè)單片電壓測(cè)量節(jié)點(diǎn)等。加上燃料電池發(fā)動(dòng)機(jī)的主控制器,整個(gè)控制系統(tǒng)共包括15個(gè)控制器節(jié)點(diǎn)。這些控制器以主控制器為核心,形成了整車動(dòng)力系統(tǒng)時(shí)間觸發(fā)控制器局域網(wǎng)絡(luò)(TTCAN)通信協(xié)議。
2 基于ARM+MPC561雙單片機(jī)的主控制器設(shè)計(jì)
2.1 控制器硬件框架
控制器的硬件框架如圖2所示。該控制器采用MPC56x和AT91SAM9261S單片機(jī)雙核處理器的模式,其中底層IO驅(qū)動(dòng)采用MPC56x單片機(jī),而控制算法采用ARM9單片機(jī)。采用ARM9單片機(jī)進(jìn)行控制算法的優(yōu)點(diǎn)是:
(1)ARM的主頻高、運(yùn)算速度快,最高主頻可以達(dá)到190 MHz,運(yùn)算速度可達(dá)210 MIPS,大大高于MPC56x的56 MHz;
(2)可以配套的內(nèi)存大,擁有豐富的內(nèi)存擴(kuò)展接口,不但能實(shí)現(xiàn)與MPC56x相同的SRAM擴(kuò)展,還擁有專門的SDRAM管理模塊,能進(jìn)行SDRAM擴(kuò)展,其容量可以輕易達(dá)到100 MB以上;
(3)外設(shè)接口豐富,USB2.0全速主機(jī)雙端口及設(shè)備端口,可以實(shí)現(xiàn)與上位機(jī)的高速數(shù)據(jù)傳輸,保證上傳和下載數(shù)據(jù)的高效和可靠;
(4)價(jià)格低廉,AT91SAM9261S零售價(jià)只需63元,小批量?jī)r(jià)格僅為6美元,而MPC561零售價(jià)格高達(dá)40美元,在價(jià)格上具有很強(qiáng)的競(jìng)爭(zhēng)力。
MPC56x的優(yōu)點(diǎn)是:帶有豐富的外圍周邊模塊,例如TPU3、QADC、QSM、CAN、MIOS和SPI接口等,能夠直接接口底層的各種信號(hào)。因此將MPC56x和ARM結(jié)合起來,可以保證控制器既具有強(qiáng)大的控制算法(浮點(diǎn)運(yùn)算能力),又有強(qiáng)大的底層實(shí)時(shí)驅(qū)動(dòng)能力。
2.2 基于ARM的控制算法開發(fā)方法
燃料電池發(fā)動(dòng)機(jī)的控制算法框架如圖3所示。整個(gè)上層控制算法可以分解為2層:輸入輸出信號(hào)接口和控制算法邏輯本身。其中輸入輸出信號(hào)接口(底層驅(qū)動(dòng)信號(hào))在MPC56x中運(yùn)行,而控制算法邏輯直接在ARM中運(yùn)行,兩者通過CAN總線實(shí)現(xiàn)信息交互。
上層控制算法可直接利用MATLAB/SIMULINK中的Real Time Workshop工具箱進(jìn)行開發(fā)。MATLAB是Mathwork公司開發(fā)、支持ARM9算法仿真調(diào)試及自動(dòng)代碼生成的算法開發(fā)工具,是學(xué)術(shù)界/工業(yè)界廣泛認(rèn)可使用的工程算法開發(fā)平臺(tái)。其下的Simulink組件具有強(qiáng)大的算法仿真調(diào)試功能;Stateflow模塊提供直觀可靠的邏輯分析/狀態(tài)機(jī);Real-time Workshop模塊支持自動(dòng)代碼生成,能將仿真測(cè)試后的框圖模型自動(dòng)生成支持ARM9數(shù)字核心的C代碼。
2.3 控制器測(cè)試
對(duì)于AT91SAM9261S+MPC561的雙數(shù)字核心燃料電池主控制器,現(xiàn)階段在實(shí)驗(yàn)室中利用Vector公司的CAN Case網(wǎng)絡(luò)通信硬件工具以及CANalyzer軟件模擬整車TTCAN網(wǎng)絡(luò)和燃料電池控制系統(tǒng)的底層控制器,并采集實(shí)驗(yàn)數(shù)據(jù)對(duì)雙數(shù)字核心燃料電池主控制器進(jìn)行仿真測(cè)試,控制器測(cè)試照片如圖4所示。
通過實(shí)際測(cè)試,驗(yàn)證了采用MPC+ARM的雙數(shù)字核心架構(gòu)的燃料電池主控制器在運(yùn)行同樣的控制算法時(shí),要比采用單個(gè)MPC561數(shù)字核心的控制器快得多。在MPC和ARM之間的CAN通信方面不存在任何問題,可以應(yīng)用于實(shí)車運(yùn)行中。這種疊加式的控制器的優(yōu)點(diǎn)是在當(dāng)算法比較復(fù)雜時(shí),可以直接采用雙核控制器;而控制算法比較簡(jiǎn)單時(shí),采用單個(gè)MPC56x就可以滿足控制系統(tǒng)的要求。
(1)為了滿足復(fù)雜的燃料電池發(fā)動(dòng)機(jī)或者新能源汽車動(dòng)力系統(tǒng)的控制算法,本論文提出了采用ARM9加MPC56x單片機(jī)的雙核控制器設(shè)計(jì)的思路。由計(jì)算性能更好的ARM9負(fù)責(zé)控制算法,而驅(qū)動(dòng)能量較好的MPC56x負(fù)責(zé)輸入輸出驅(qū)動(dòng)。
(2)ARM9的控制算法可以實(shí)現(xiàn)在MATLAB/SIMULINK中的圖形化編程,然后利用控制代碼自動(dòng)生成技術(shù)實(shí)現(xiàn)上層控制算法的高效開發(fā)。
(3)在本例中,由于ARM9和MPC56x的數(shù)字核心的安裝接口完全一致,因此可以根據(jù)實(shí)際應(yīng)用的復(fù)雜程度決定是只用一個(gè)數(shù)字核心MPC56x,還是ARM9+MPC56x的雙數(shù)核心。其為教學(xué)和科研提供了一個(gè)模塊化的科研平臺(tái),為兼容各種簡(jiǎn)單和復(fù)雜控制算法的應(yīng)用系統(tǒng)提供了一個(gè)統(tǒng)一的硬件平臺(tái)。