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