氫燃料電池的「體溫」之困
質子交換膜燃料電池(PEMFC)被視為氫能經濟的核心轉換裝置,其原理是將氫氣的化學能直接轉化為電能,副產物僅為水與熱。然而,正是看似無害的「熱」成為了限制燃料電池堆性能與壽命的主要瓶頸。一個典型的 100 kW 車用燃料電池堆在滿載運行時,產生的熱量大約等於其電功率輸出——即額外 100 kW 的廢熱需要通過冷卻系統移除。相比之下,內燃機的廢熱可通過排氣管直接排放,而燃料電池堆的工作溫度通常限制在 60-80℃,這使得其散熱面積需求遠大於內燃機散熱器。
更為複雜的是,PEMFC 的「水管理」與「熱管理」深度耦合。膜的質子傳導率高度依賴於含水量(濕度),而含水量又隨溫度與電流密度變化。溫度過高會導致膜脫水、電阻急劇上升;溫度過低則導致液態水積聚、電極淹沒(Flooding)。因此,精確的熱管理系統並非簡單的冷卻,而是對電堆內部熱場、濕度場與電流密度分佈的協同控制。
PEM 電堆的熱生成與傳遞機制
燃料電池內的熱源主要來自三個方面:電化學反應的熵變、活化極化損失以及歐姆極化損失。總發熱量 Q_gen 可表示為 Q_gen = (E_th − V_cell) × I,其中 E_th 為熱中性電壓(約 1.48 V),V_cell 為實際工作電壓,I 為電流。在典型工況下,電堆效率每下降 1%,廢熱量就增加約 1.8%。
熱量在電堆內的傳遞路徑極其複雜:在面內方向,熱量通過雙極板(石墨或金屬)與氣體擴散層(GDL)橫向傳導;在垂直方向,熱量需要穿過膜電極組件(MEA),而 MEA 的厚度僅數百微米,熱導率卻極低(約 0.2 W/m·K),形成了主要的熱阻。溫度在 MEA 兩側可能產生超過 5℃ 的梯度,影響膜中水分的分佈。為了建立有效的控制系統,通常採用集總參數熱模型(Lumped Thermal Model)來近似電堆的平均溫度動態,以便於實時控制器設計。
水熱平衡:膜加濕與冷卻液策略
PEM 燃料電池的「水熱平衡」指的是在維持膜充分濕潤的同時,避免電極淹沒。這一平衡由以下三個並行子系統共同實現:
- 冷卻液迴路:去離子水與乙二醇混合液經水泵流經電堆內部的冷卻流道,帶走反應生成熱。流量與入口溫度的調節由 PID 控制器根據電堆出口溫度與電流密度動態計算。
- 氣體增濕系統:入口氫氣與空氣需經過膜式增濕器(Membrane Humidifier),利用電堆出口廢氣的濕度與熱量對入口乾氣進行預增濕。增濕不足導致膜脫水,增濕過度則引發淹沒。
- 吹掃與排水策略:低負載時,電壓降低不足以驅動液態水通過 GDL 排出,需要定時脈衝吹掃。控制器需根據電堆阻抗譜或壓降特徵判斷淹沒程度,觸發吹掃循環。
這三個子系統的時間常數差異巨大:電流變化在毫秒級,溫度變化在數十秒級,而膜的濕度平衡則需要數分鐘。因此,熱管理控制器必須採用多時間尺度的分層控制架構。
冷啟動熱管理與集總參數模型
低溫冷啟動是燃料電池系統最具挑戰性的工況之一。當環境溫度低於 0℃ 時,電堆內殘餘的水可能結冰,阻塞氣體通道並破壞 MEA 結構。成功的冷啟動要求在電堆溫度達到 0℃ 之前,產生的熱量足以熔化冰層而非使其增長。這需要精確的「熱慣性」規劃:在啟動初期以較小的電流密度運行,平衡產熱率與熱容的升溫速率。
以下 Python 程式碼展示了一個簡化的集總參數熱模型,用於模擬冷啟動過程中電堆溫度的上升曲線與熱平衡狀態。
import numpy as np class StackThermalModel: def __init__(self): # Physical parameters self.C_th = 8500.0 # Thermal capacity [J/K] self.R_th = 0.08 # Thermal resistance to ambient [K/W] self.T_amb = -10.0 # Ambient temperature [°C] self.n_cells = 400 # Number of cells in stack self.E_th = 1.48 # Thermoneutral voltage [V] def heat_generation(self, current_a, v_cell): """ Calculate waste heat from polarization loss. Q_gen = (E_th - V_cell) * I * n_cells """ return (self.E_th - v_cell) * current_a * self.n_cells def thermal_dynamics(self, t, state, current_a, v_cell, coolant_temp, coolant_flow): """ ODE: dT/dt = (Q_gen - Q_cool - Q_loss) / C_th state[0]: stack temperature [°C] """ T_stack = state[0] # Heat generated Q_gen = self.heat_generation(current_a, v_cell) # Heat removed by coolant: Q = m_dot * cp * (T_stack - T_coolant_in) cp_coolant = 3500.0 # J/kg·K (water-glycol) Q_cool = coolant_flow * cp_coolant * (T_stack - coolant_temp) # Heat loss to ambient Q_loss = (T_stack - self.T_amb) / self.R_th # Temperature rate of change dT_dt = (Q_gen - Q_cool - Q_loss) / self.C_th return [dT_dt] def cold_start_simulation(self, current_profile, v_profile, dt): """ Simulate stack warm-up from -10°C. current_profile: list of current setpoints [A] v_profile: list of cell voltages [V] dt: time step [s] """ T = self.T_amb history = [T] coolant_temp = 20.0 # Coolant preheated for startup coolant_flow = 0.5 # kg/s for i in range(len(current_profile)): dT = self.thermal_dynamics( 0, [T], current_profile[i], v_profile[i], coolant_temp, coolant_flow )[0] T += dT * dt # Switch to active cooling above 0°C if T > 5.0: coolant_flow = 2.0 # Increase cooling once above freezing history.append(T) return np.array(history) # Simulation: 120 seconds of cold start, 400-cell stack model = StackThermalModel() currents = [50] * 120 # 50 A constant during warm-up voltages = [0.72] * 120 # Average cell voltage T_profile = model.cold_start_simulation(currents, voltages, dt=1.0) # T_profile[-1] shows stack temperature after 120s print(f"Stack temperature after 120s: {T_profile[-1]:.1f} °C")
結語:熱管理決定商業化上限
氫燃料電池的熱管理不僅僅是散熱問題,它從根本上決定了電堆的功率密度、耐久性與系統成本。從材料層面的高導熱 MEA 研發,到系統層面的多變量預測控制(MPC),再到整車層面的熱泵協同管理,每一層級的熱優化都直接影響氫能系統的商業競爭力。隨著重型卡車與船舶領域對氫燃料電池系統需求的增長,熱管理將成為決定 PEMFC 能否在交通運輸領域大規模替代內燃機的關鍵技術壁壘。
本文內容僅供技術探討與工程教育參考。文中提及之燃料電池性能數據(效率、功率密度、壽命等)以學術文獻與產業公開報告為參考,實際表現因電堆設計、操作條件與系統整合程度而異。實施相關系統設計應遵循國際氫能安全標準(ISO 19880等)與當地法規。