封存文章
本文源自 HiMCM 2021 Problem A。舊程式把「每日 15 kWh」誤當成每小時 15 kWh,又用一星期只有一個週期的正弦波和最高 模擬日照,因而產生約 1,900 kWh unmet demand。 本版本重建能源帳;原有技術排名與水泥電池成本數字不視為有效結果。
離網住宅沒有電網隨時補足差額。設計儲能時,平均每日發電等於平均需求仍不夠: 系統還要跨過夜晚、陰天、高峰功率、季節低日照和設備損失。
一個可用模型要同時回答:
- 住宅每個時段需要多少 power(kW)?
- 一天或數天需要多少 energy(kWh)?
- 太陽能陣列在指定地點和傾角每小時可產生多少?
- 電池的 usable capacity、charge/discharge power 和效率是否足夠?
- 在一年或多年天氣中,停電風險是否低於目標?
- 哪一組 PV、battery 和 backup 組合的 lifecycle cost 最合理?
一、先建立負載清單
對 appliance ,令額定功率為 ,時段 的 on-fraction 為 :
時間步長為 小時時,
要分開 critical 與 flexible loads:
| 類別 | 例子 | 模型用途 |
|---|---|---|
| 關鍵 | 冰箱、醫療、通訊 | 不容許或極少 unmet |
| 可移時 | 洗衣、熱水、充電 | 可移到太陽充足時段 |
| 可削減 | 部分空調、非必要照明 | emergency control |
| 瞬時高峰 | 水泵、壓縮機啟動 | inverter surge rating |
住宅面積本身不是需求的充分預測量。住戶數、氣候、供暖燃料、煮食方式、 熱水、泵和行為都更重要。
二、太陽能發電
若有 plane-of-array irradiance :
或從面積表示:
的單位是 ,乘面積和效率後得到 kW; 再乘 才是 kWh。地面晴天峰值通常在 左右的量級,舊模型的 5 倍峰值不合理。
def pv_energy(pv_kw_stc, poa_kw_m2, temperature_factor,
system_factor, dt_hours):
power_kw = (
pv_kw_stc
* poa_kw_m2 / 1.0
* temperature_factor
* system_factor
)
return np.maximum(power_kw, 0) * dt_hours
應使用至少一整年逐時 weather file;一個星期只有一次日照正弦週期, 會令六天近乎沒有太陽。
三、電池狀態與能源守恆
令 是電池內可用 energy(kWh),容量為 。 把 round-trip efficiency 拆成 和 ,例如可近似
充電端接收 、負載端輸出 :
並有:
反映最大 depth of discharge; continuous power 和短時間 surge power 不能由 capacity 取代。
正確 dispatch
from dataclasses import dataclass
@dataclass
class Battery:
capacity_kwh: float
min_soc_fraction: float
max_charge_kw: float
max_discharge_kw: float
eta_charge: float
eta_discharge: float
soc_kwh: float
def dispatch_step(load_kwh, pv_kwh, battery, dt_hours):
direct = min(load_kwh, pv_kwh)
remaining_load = load_kwh - direct
excess_pv = pv_kwh - direct
room_at_input = (
battery.capacity_kwh - battery.soc_kwh
) / battery.eta_charge
charge_input = min(
excess_pv,
battery.max_charge_kw * dt_hours,
room_at_input,
)
battery.soc_kwh += battery.eta_charge * charge_input
curtailed = excess_pv - charge_input
min_soc = battery.capacity_kwh * battery.min_soc_fraction
available_at_load = max(
0,
(battery.soc_kwh - min_soc) * battery.eta_discharge,
)
discharge_to_load = min(
remaining_load,
battery.max_discharge_kw * dt_hours,
available_at_load,
)
battery.soc_kwh -= discharge_to_load / battery.eta_discharge
unmet = remaining_load - discharge_to_load
return {
"direct_pv_kwh": direct,
"charged_kwh": charge_input,
"discharged_kwh": discharge_to_load,
"curtailed_kwh": curtailed,
"unmet_kwh": unmet,
"soc_kwh": battery.soc_kwh,
}
舊 discharge() 先改 SOC,再用改後 SOC 判斷 shortfall,並把輸入/輸出 energy
方向混在一起,所以不守恆。上面的函數每一步都可檢查:
但要留意 charged/discharged 是電池哪一側的量;最可靠是明確標註 bus-side 與 cell-side。
四、可靠度指標
總 unmet energy:
之外,離網系統還應報告:
Loss of load probability
Loss of power supply probability
Autonomy
若沒有 PV,電池可供關鍵負載的小時或日數。簡單日數估算:
但逐時峰值仍需另行檢查。
Resilience event
模擬連續陰天、設備故障或 smoke/dust event,檢查關鍵負載能否維持。 平均天氣下零 unmet 不代表極端情景安全。
五、配置最佳化
決策變數可包括:
以 discounted lifecycle cost 為目標:
並限制:
若可靠度是硬性要求,不能只把 unmet demand 以很小 penalty 加入成本。
def evaluate_design(pv_size, battery_spec, load, weather, dt):
trace = simulate_year(pv_size, battery_spec, load, weather, dt)
return {
"lpsp": trace.unmet.sum() / load.sum(),
"lolp": (trace.unmet > 0).mean(),
"curtailment": trace.curtailed.sum(),
"cycles": trace.equivalent_full_cycles,
"cost": lifecycle_cost(pv_size, battery_spec, trace),
}
六、舊 15 kWh/day 範例的錯誤
舊 HomeEnergyDemand(base_demand=15) 在每個 hour 返回:
return self.base_demand * demand_factor
所以 15 kWh/day 被當成至少 15 kWh/hour;基本負載變成 360 kWh/day, 晚間還乘 1.5。這解釋了七日 unmet demand 為 1,677–1,893 kWh, 亦解釋了 10、13.5、50 kWh 電池結果幾乎相同:主要缺口是發電與負載單位錯誤, 不是 battery technology 的證據。
正確做法是先建立 normalized hourly shape ,使
然後:
shape = np.array([
0.025, 0.022, 0.020, 0.020, 0.022, 0.030,
0.050, 0.055, 0.045, 0.035, 0.030, 0.030,
0.032, 0.030, 0.032, 0.038, 0.050, 0.070,
0.085, 0.090, 0.080, 0.060, 0.045, 0.035,
])
shape = shape / shape.sum()
hourly_kwh = 15.0 * shape
這只是示範 shape;真實住宅應由 smart-meter 或 appliance diary 建立。
七、電池技術比較
Lithium-ion/LFP
優點通常包括較高 round-trip efficiency、較高 energy density、 良好 power capability 與成熟 inverter integration。需要考慮 thermal management、 BMS、cycle/calendar degradation、低溫性能與消防規範。
Lead-acid
初始成本可較低,技術成熟,但 usable depth of discharge、cycle life、 效率、維護與通風會影響實際 lifetime cost。不能只比較 nameplate kWh。
Flow battery
energy 與 power 可相對獨立擴展,適合長時儲能概念,但家用規模的成本、 泵與空間要按具體產品評估。
「水泥電池」
2021 年研究展示 electrically conductive cement-based rechargeable battery 的概念, 但 energy density 遠低於商用 electrochemical batteries,技術成熟度、cycle life、 結構安全、維修、回收與 code compliance 都未足以支持住宅產品比較。
舊文假設:
- 50 kWh 水泥電池;
- 65% 效率;
- $100/kWh;
- 十年固定 degradation factor;
卻沒有資料來源。由此算出的 $0.05/kWh lifetime cost
和「水泥比鋰電更划算」應刪除。建築材料同時承重和儲能亦會產生
failure coupling:電化學維修不能危及結構。
八、混合系統
混合儲能只有在 dispatch 把各技術分工時才有意義,例如:
- 高功率 battery 處理短峰值;
- 長時儲能跨夜或多日;
- thermal storage 承擔熱水/空調負載;
- controllable backup 只在稀有低資源事件啟動。
把兩個 Battery 分別獨立跑同一負載,再各自報 unmet demand,
並不是 hybrid simulation。真正模型需要共同 power balance:
控制規則亦要說明哪個先充、哪個先放,以及保留多少 emergency reserve。
九、敏感度與不確定性
至少改變:
- annual load 及 hourly shape;
- critical-load fraction;
- weather year;
- PV degradation;
- battery usable capacity、efficiency 和 replacement year;
- temperature-dependent derating;
- component cost、discount rate;
- required LPSP;
- outage/multi-day low-solar events。
不要在每個 sensitivity run 重新抽一組 weather,否則參數效果與天氣 noise 混在一起。 可用相同 weather years 作 paired comparison,再用多個 years 表達 climate variability。
十、驗證清單
- 全時段 energy balance residual 接近零;
- SOC 從不超出界線;
- charge/discharge power 不超上限;
- 全零 PV 時,SOC 和 autonomy 與手算一致;
- 無限容量但有限 PV 時,年度能量不足仍會造成 unmet;
- 增加容量不應在其他條件不變時增加 unmet;
- 減小 後結果收斂;
- 與成熟工具或一個已知 benchmark 比較。
結論
離網儲能選擇不是按 capacity、efficiency 和 price 做一張簡單排名。 先要建立逐時負載和當地 solar resource,再用守恆 dispatch 同時限制 SOC、 continuous power、surge power、efficiency 與 degradation,最後以可靠度約束和 lifecycle cost 找出可行設計。
原實驗的大量 unmet demand 主要源自每日/每小時單位錯誤和不合理 irradiance, 所以不能用來支持 lithium、lead-acid 或 cement 的優劣。修正後的研究價值在於 展示一套可泛化流程:需求盤點 → PV 模型 → 電池守恆 → 可靠度 → 成本與不確定性。
參考資料
- COMAP, Inc. (2021). HiMCM 2021 Problem A: Storing the Sun.
- Masters, G. M. (2013). Renewable and Efficient Electric Power Systems (2nd ed.). Wiley.
- Duffie, J. A., & Beckman, W. A. (2013). Solar Engineering of Thermal Processes (4th ed.). Wiley.
- IEEE. (2007). IEEE Std 1561-2007: Guide for Optimizing the Performance and Life of Lead-Acid Batteries in Remote Hybrid Power Systems.
- Zhang, E., Tang, L., Zhang, Y., et al. (2021). Rechargeable concrete battery. Buildings, 11(3), 103.