《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于ARM9和MPC56x的燃料電池發(fā)動機(jī)雙核主控制器的研制
基于ARM9和MPC56x的燃料電池發(fā)動機(jī)雙核主控制器的研制
李建秋,林辛凡,,華劍鋒,,徐梁飛
清華大學(xué) 汽車安全與節(jié)能國家重點實驗室,北京100084
摘要: 燃料電池發(fā)動機(jī)控制系統(tǒng)具有輸入輸出通道多,、控制變量多和控制算法復(fù)雜等特點,。針對燃料電池分布式控制系統(tǒng)中的主控制器,提出了采用ARM系列單片機(jī)進(jìn)行上層算法的計算,、采用MPC56x系列單片機(jī)進(jìn)行底層輸入輸出和外圍驅(qū)動接口,、采用CAN總線進(jìn)行信息交互的雙核控制器的設(shè)計思路。設(shè)計了ARM和MPC56x兼容的數(shù)字核心接口板,,并對雙核的燃料電池發(fā)動機(jī)主控制器進(jìn)行了驗證,。
中圖分類號: TN,TH1
文獻(xiàn)標(biāo)識碼: A
Design of the ARM9+MPC56x dual core based main controller of the fuel cell engine
LI Jian Qiu,,LIN Xin Fan,,HUA Jian Feng,XU Liang Fei
State Key Lab of Automotive Safety and Energy, Tsinghua University, Beijing 100084,,China
Abstract: The control system of fuel cell engine was a multi-input multi-output, multi-variable control system. It was necessary to design a high performance controller to calculate the complex control algorithm. In this paper, a dual MCU architecture was prompted. The ARM9 series MCU was used to execute the control algorithm, while the MPC56x MCU was used to drive the low level input/output and peripheral module interfaces. They shared the information via CAN bus. The digital core circuit of ARM9 and MCU56x were designed and the dual MCU ECU was tested.
Key words : dual MCU controller,;fuel cell engine;control algorithm

    隨著清潔能源需求的增加,,燃料電池發(fā)動機(jī)及其在汽車動力系統(tǒng)中的應(yīng)用越來越重要,。燃料電池按電化學(xué)原理直接將等溫的化學(xué)能轉(zhuǎn)化為電能。由于不受熱機(jī)卡諾循環(huán)的限制,,目前各類燃料電池實際的能量轉(zhuǎn)化率均可達(dá)40%~60%,;燃料電池環(huán)境友好、工作安靜,、噪聲很低,。燃料電池發(fā)動機(jī)由空氣系統(tǒng)、氫氣系統(tǒng),、水熱管理系統(tǒng),、增濕系統(tǒng)和電堆等幾部分組成,其結(jié)構(gòu)如圖1所示,。

1 分布式燃料電池發(fā)動機(jī)控制系統(tǒng)
    針對燃料電池發(fā)動機(jī)的上述要求,,清華大學(xué)和大連化學(xué)物理研究所合作,研制了分布式燃料電池控制系統(tǒng),。整個系統(tǒng)以燃料電池發(fā)動機(jī)主控制器為核心,,包括了2個發(fā)動機(jī)的獨立控制子系統(tǒng),,每個發(fā)動機(jī)控制系統(tǒng)包括電堆控制器節(jié)點、增濕控制器節(jié)點,、風(fēng)機(jī)控制器節(jié)點以及4個單片電壓測量節(jié)點等,。加上燃料電池發(fā)動機(jī)的主控制器,整個控制系統(tǒng)共包括15個控制器節(jié)點,。這些控制器以主控制器為核心,,形成了整車動力系統(tǒng)時間觸發(fā)控制器局域網(wǎng)絡(luò)(TTCAN)通信協(xié)議。
2 基于ARM+MPC561雙單片機(jī)的主控制器設(shè)計
2.1 控制器硬件框架

    控制器的硬件框架如圖2所示,。該控制器采用MPC56x和AT91SAM9261S單片機(jī)雙核處理器的模式,,其中底層IO驅(qū)動采用MPC56x單片機(jī)[1],而控制算法采用ARM9單片機(jī)[2],。采用ARM9單片機(jī)進(jìn)行控制算法的優(yōu)點是:


    (1)ARM的主頻高,、運算速度快,最高主頻可以達(dá)到190 MHz,,運算速度可達(dá)210 MIPS,,大大高于MPC56x的56 MHz;
    (2)可以配套的內(nèi)存大,,擁有豐富的內(nèi)存擴(kuò)展接口,,不但能實現(xiàn)與MPC56x相同的SRAM擴(kuò)展,還擁有專門的SDRAM管理模塊,,能進(jìn)行SDRAM擴(kuò)展,,其容量可以輕易達(dá)到100 MB以上;
    (3)外設(shè)接口豐富,,USB2.0全速主機(jī)雙端口及設(shè)備端口,,可以實現(xiàn)與上位機(jī)的高速數(shù)據(jù)傳輸,保證上傳和下載數(shù)據(jù)的高效和可靠,;
    (4)價格低廉,,AT91SAM9261S零售價只需63元,小批量價格僅為6美元,,而MPC561零售價格高達(dá)40美元,,在價格上具有很強(qiáng)的競爭力。
    MPC56x的優(yōu)點是:帶有豐富的外圍周邊模塊,,例如TPU3,、QADC、QSM,、CAN、MIOS和SPI接口等,,能夠直接接口底層的各種信號,。因此將MPC56x和ARM結(jié)合起來,,可以保證控制器既具有強(qiáng)大的控制算法(浮點運算能力),又有強(qiáng)大的底層實時驅(qū)動能力,。
2.2 基于ARM的控制算法開發(fā)方法
    燃料電池發(fā)動機(jī)的控制算法框架如圖3所示,。整個上層控制算法可以分解為2層:輸入輸出信號接口和控制算法邏輯本身。其中輸入輸出信號接口(底層驅(qū)動信號)在MPC56x中運行,,而控制算法邏輯直接在ARM中運行,,兩者通過CAN總線實現(xiàn)信息交互。

      上層控制算法可直接利用MATLAB/SIMULINK中的Real Time Workshop工具箱進(jìn)行開發(fā),。MATLAB是Mathwork公司開發(fā),、支持ARM9算法仿真調(diào)試及自動代碼生成的算法開發(fā)工具,是學(xué)術(shù)界/工業(yè)界廣泛認(rèn)可使用的工程算法開發(fā)平臺,。其下的Simulink組件具有強(qiáng)大的算法仿真調(diào)試功能,;Stateflow模塊提供直觀可靠的邏輯分析/狀態(tài)機(jī);Real-time Workshop模塊支持自動代碼生成[3],,能將仿真測試后的框圖模型自動生成支持ARM9數(shù)字核心的C代碼,。
2.3 控制器測試
    對于AT91SAM9261S+MPC561的雙數(shù)字核心燃料電池主控制器,現(xiàn)階段在實驗室中利用Vector公司的CAN Case網(wǎng)絡(luò)通信硬件工具以及CANalyzer軟件模擬整車TTCAN網(wǎng)絡(luò)和燃料電池控制系統(tǒng)的底層控制器,,并采集實驗數(shù)據(jù)對雙數(shù)字核心燃料電池主控制器進(jìn)行仿真測試,,控制器測試照片如圖4所示。

    通過實際測試,,驗證了采用MPC+ARM的雙數(shù)字核心架構(gòu)的燃料電池主控制器在運行同樣的控制算法時,,要比采用單個MPC561數(shù)字核心的控制器快得多。在MPC和ARM之間的CAN通信方面不存在任何問題,,可以應(yīng)用于實車運行中,。這種疊加式的控制器的優(yōu)點是在當(dāng)算法比較復(fù)雜時,可以直接采用雙核控制器,;而控制算法比較簡單時,,采用單個MPC56x就可以滿足控制系統(tǒng)的要求。
    (1)為了滿足復(fù)雜的燃料電池發(fā)動機(jī)或者新能源汽車動力系統(tǒng)的控制算法,,本論文提出了采用ARM9加MPC56x單片機(jī)的雙核控制器設(shè)計的思路,。由計算性能更好的ARM9負(fù)責(zé)控制算法,而驅(qū)動能量較好的MPC56x負(fù)責(zé)輸入輸出驅(qū)動,。
    (2)ARM9的控制算法可以實現(xiàn)在MATLAB/SIMULINK中的圖形化編程,,然后利用控制代碼自動生成技術(shù)實現(xiàn)上層控制算法的高效開發(fā)。
    (3)在本例中,,由于ARM9和MPC56x的數(shù)字核心的安裝接口完全一致,,因此可以根據(jù)實際應(yīng)用的復(fù)雜程度決定是只用一個數(shù)字核心MPC56x,還是ARM9+MPC56x的雙數(shù)核心,。其為教學(xué)和科研提供了一個模塊化的科研平臺,,為兼容各種簡單和復(fù)雜控制算法的應(yīng)用系統(tǒng)提供了一個統(tǒng)一的硬件平臺,。
參考文獻(xiàn)
[1] Freescale. MPC561 Reference Manual.2005,8.
[2] Atmel.AT91SAM9261S Preliminary.2007,,9.
[3] Mathworks.Matlab R2007a Help.2007,,1.
 

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。