OpenDSS 微電網實作單元(教學實踐研究計畫)
明志科大電機系「工業配電實務」課程內由教育部 114 年度教學實踐研究計畫安排的 5 次教學介入(共 15 hr)。從零安裝 OpenDSS、到模擬校園三項真實 DER 資源(天橋 PV / 電機館小型微電網 / Lab126 工商型儲能),最後產出三案例比較與口頭發表。
- 記憶 / 理解:說出 OpenDSS 來源、元件分類;解釋微電網與分散式能源原理
- 應用:撰寫 PVSystem / Storage / Loadshape 等 OpenDSS 程式並求解潮流
- 分析:判讀 24 hr 時序模擬結果、識別過壓 / 欠壓 / 過載等違規時段
- 評估 / 創造:以校園真實場域產出三件作品 + 比較報告 + 口頭發表
📅 OpenDSS 實作單元地圖(5 次教學介入)
「工業配電實務」是一學期 18 週的正式課程。本單元為其中由教育部 114 年度教學實踐研究計畫特別安排、連續 5 次(共 15 小時)的 OpenDSS 微電網實作教學介入,把三個校園真實可控的分散式能源資源從現場搬進模擬器,並透過混合研究設計(前後測 + 作品 rubric + 同儕互評 + 反思寫作)完整紀錄學習歷程 [14]。
OpenDSS 介紹與安裝
0 · 學習目標與這堂課的位置
本「工業配電實務」課程前 13 次已完成電力系統基礎;接下來這 5 次(4/24、5/8、5/15、5/22、5/29)是教育部教學實踐研究計畫安排的 OpenDSS 實作教學介入。我們要一起做一件事:
本實作單元路線圖
| 次 | 日期 | 主題 | 你會產出什麼 |
|---|---|---|---|
| 1 | 2026-04-24 | OpenDSS 介紹與安裝(已完成) | 裝好 OpenDSS、做完前測 |
| 2 | 2026-05-08 | 補課第一個電路 + 元件建模 | 作品 1:3-bus + PV + Storage |
| 3 | 2026-05-15 | Case A:天橋太陽光電系統建模 | 作品 2:天橋 PV `.dss` 檔 + 過電壓分析 |
| 4 | 2026-05-22 | Case B+C:電機館小型微電網 + Lab126 儲能 | 作品 3、4:24 hr 時序模擬 |
| 5 | 2026-05-29 | 整合比較與口頭發表 + 後測 | 三案例比較報告 + 發表影片 |
這份網頁就是你的課本。你可以:
- 課堂上邊聽邊做(建議開兩個視窗:OpenDSS + 這頁)
- 本單元 5 次課內容都已整合在這一頁,從側邊欄切換即可
- 課後重播滑桿練習,複習重點
- 手機也能看(響應式設計)
- 第 1 節 9:00–9:50 前段教學 / 開場 / 同意書
- 9:50–10:00 下課 10 分鐘
- 第 2 節 10:00–10:50 元件講解或案例樣板
- 10:50–11:00 下課 10 分鐘
- 第 3 節 11:00–11:50 分組實作 / 預告下次
每次課的詳細時段見下方 第 N 次 區塊。
1 · 背景:為什麼大四要學微電網?
1.1 全球趨勢:從集中式電網到分散式能源
根據國際能源總署(IEA)[1],2023 年全球再生能源新增裝置容量突破 510 GW,其中有超過 70% 發生在配電層(中低壓端)。換句話說,「發電」這件事正從十幾座大型電廠,逐步往數百萬個分散式能源資源(DER, Distributed Energy Resources)擴散。這個轉變也帶來新的規劃與最佳化挑戰 [13]。
1.2 臺灣的 2050 淨零路徑
國家發展委員會公布的「臺灣 2050 淨零排放路徑」[2]設定了明確目標:
1.3 微電網是什麼?
美國能源部(DOE)定義:微電網(Microgrid)是一個「具有清楚電氣邊界、在併網或孤島下都能運作、內含本地發電與負載、可做為單一可控實體」的小型電力系統 [3]。
換成白話:
- 有明確範圍(一棟大樓、一個社區、一間工廠、一個校園)
- 自己有發電(PV、風機、柴油機)
- 有儲能(鋰電池、飛輪)
- 有負載(建築用電、EV 充電樁)
- 可以併入臺電主網,也可以獨立運轉(孤島模式)
1.4 明志科大的微電網在哪裡?
本校其實就是一個活生生的微電網場域。本實作單元 5 次課我們會分析三個實際可控制的分散式資源——全部都位於或連接到電機館(Lab126 為微電網實驗室核心):
2 · 認識 OpenDSS
2.1 一句話定義
OpenDSS(Open Distribution System Simulator)是美國電力研究院(EPRI, Electric Power Research Institute)開發的開源配電系統模擬工具,專為穩態與準穩態(quasi-static)分析設計,是目前國際上最廣泛使用的配電級模擬器之一 [4][5]。
2.2 OpenDSS 發展時間軸
2.3 與其他電力系統軟體的比較
| 軟體 | 定位 | 授權 | 適用層級 | 臺灣學界可用性 |
|---|---|---|---|---|
| OpenDSS | 配電穩態、時序、諧波 | 🟢 BSD 開源 | 中低壓 | 完全免費 |
| ETAP | 綜合電力系統分析 | 🔴 商用 | 輸 / 配 / 工業 | 校園授權昂貴 |
| DIgSILENT PowerFactory | 輸配電 + 暫態 | 🔴 商用 | 輸 / 配 | 少數實驗室有 |
| PSS®E | 輸電潮流、動態 | 🔴 商用 | 輸電 | 臺電在用 |
| PSCAD / EMTDC | 電磁暫態 | 🔴 商用 | µs 等級 | 部分學校有 |
| MATPOWER | 潮流 / 最佳潮流 | 🟢 開源 | 輸電為主 | 需 MATLAB |
| GridLAB-D | 配電 + agent-based | 🟢 BSD 開源 | 中低壓 | 冷門 |
| pandapower | Python 潮流 | 🟢 BSD 開源 | 輸 / 配 | 新興,但功能較弱 |
2.4 OpenDSS 架構
OpenDSS 不只是一個 GUI 軟體,它其實是一整套可呼叫的引擎:
2.5 擅長與不擅長
| ✅ 擅長 | ❌ 不適合 |
|---|---|
|
三相 / 單相不平衡潮流(每相分開解) 短路計算(對稱 / 不對稱) 時序模擬(daily / yearly / dutycycle mode) 諧波分析(頻域) DER 整合研究(PV、BESS、EV) Monte Carlo 不確定性分析 配電層級(LV 0.4 kV ~ MV 33 kV) |
輸電層級大規模潮流(> 69 kV) 電磁暫態(µs 等級,用 PSCAD / EMTP,見 [12]) 精細的 IGBT / MOSFET 切換 機組機械動態、勵磁系統 即時控制系統(RTDS) 市場電價最佳化(用 PyPSA / Gurobi) |
2.5 時間尺度定位:OpenDSS 能做什麼、不能做什麼
很多同學會疑惑:「那如果我想看雷擊打到變電所的那幾微秒電壓波形呢?」答案是——OpenDSS 不做這件事。電力系統現象從微秒到年的跨度,不同軟體各守一段:
- ❌ 「OpenDSS 可以模擬雷擊突波」→ 錯,微秒級屬於電磁暫態,要用 PSCAD / EMTP / ATP
- ❌ 「OpenDSS 可以做繼電保護動作時序」→ 錯,毫秒級波形超出 OpenDSS 範圍
- ✅ 「OpenDSS 能回答:校園 PV 一天出力造成的電壓變化」→ 對,這就是 daily 模擬
- ✅ 「OpenDSS 能回答:這條饋線裝多少 PV 會違反 ±5% 規範」→ 對,這就是 hosting capacity 分析
3 · 安裝與啟動
3.1 下載(Windows 標準安裝)
官方下載來源是 SourceForge:
https://sourceforge.net/projects/electricdss/files/
選擇最新版的 OpenDSSInstaller-x64.exe(約 10–15 MB),或若電腦是 32 位元選 OpenDSSInstaller.exe。
3.2 Windows 安裝步驟
- 在安裝檔按滑鼠右鍵 → 「以系統管理員身分執行」
- 一路 Next,安裝路徑預設為
C:\Program Files\OpenDSS - 若 Windows Defender 彈警告,選「仍要執行」(OpenDSS 是開源軟體但無微軟數位簽章)
- 安裝完成後,桌面與開始選單會出現 OpenDSS 捷徑
雙擊捷徑後會看到的畫面:上方選單列、左側 Main 編輯區、下方 Results 輸出區
3.3 macOS / Linux 使用者:用 DSS-Extensions
原版 OpenDSS.exe 只能在 Windows 跑。若你用 Mac 或 Linux,請改裝社群維護的 Python 版本:
# 需先安裝 Python 3.9+
pip install OpenDSSDirect.py[all]
這樣裝好後可以用 Python 呼叫 OpenDSS 引擎,macOS/Linux/Windows 三平台通吃。我們會在第 9 節介紹用法。參考 DSS-Extensions GitHub:
https://github.com/dss-extensions/OpenDSSDirect.py
3.4 第一次啟動(Windows)
雙擊桌面的 OpenDSS,你會看到三個區域:
3.5 ✅ 安裝檢核(3 秒鐘驗證)
在 Main 視窗貼上以下三行,選擇「Do Command」(或 Ctrl+D):
New Circuit.Test basekv=11.4 phases=3 Solve
若 Results 視窗沒有紅字,出現類似 Solution converged 字樣,恭喜!你的 OpenDSS 可以用了 🎉
⚠️ 為什麼要分兩行?OpenDSS 的 Main 視窗逐行執行命令;若把 basekv / phases 寫在同一行的 New Circuit.Test 後面,部分版本的 GUI 會把整段視為單一 token 而報錯。最穩的寫法:第 1 行只下 New Circuit.<名稱>,第 2 行用「屬性=值」修改剛建立的元件(OpenDSS 對「最近一個 New 出來的物件」可以這樣繼續設定屬性)。
3.6 常見問題 FAQ
| 症狀 | 原因 / 解法 |
|---|---|
| 點捷徑沒反應 | 可能被防毒軟體攔截。到安裝目錄手動執行 OpenDSS.exe,或把該資料夾加白名單 |
Results 出現 "Need to define a voltage source" | 第一個 New 指令必須是 New Circuit.<自訂名>,OpenDSS 會自動幫你建立一個 Vsource。⚠️ Circuit. 後面那段是電路名稱(不是副檔名!);OpenDSS 所有元件都是 類型.名稱 格式,例如 Line.L1、Load.HouseLoad。命名規則:英數字 + 底線( _),不要中文 / 空格 / 點 / 連字號。範例: New Circuit.MyDemo、New Circuit.MingChi_CaseA、New Circuit.Test_2026。 |
| 電壓值看起來「不對」(相差 √3) | kV 填錯了:三相填線電壓 L-L,單相填相電壓 L-N |
Solve 後顯示 "did not converge" | 負載太大、電路開路、或 iterate 次數不夠。可試 set maxiter=100 |
| 找不到 Plot 指令的輸出 | Plot 會開新視窗(Windows only);若在虛擬機,可能被遮蔽 |
4 · 基本觀念:電路在 OpenDSS 的世界觀
4.1 四大角色
OpenDSS 把電力系統抽象成 4 種物件 [4](這種分類方式與 Kersting [10] 及 Short [11] 的經典配電系統教科書一致):
4.2 語法通式
New 元件類型.名稱 bus1=匯流排名 參數1=值 參數2=值 ...
這一行格式走天下。實例:
New Load.Classroom bus1=bus2 kV=0.22 kW=10 pf=0.9
意思:建立一個叫 Classroom 的負載,接在 bus2 匯流排,額定電壓 0.22 kV(單相 220 V),功率 10 kW,功率因數 0.9。
4.3 per-unit(標么值)— 本課最重要觀念
例題(明志校園實例)
假設電機館變壓器低壓側量到電壓 216 V(線對中性),額定基準是 220 V。問 pu 值多少?
Vpu = Vactual / Vbase = 216 / 220 = 0.982 pu
→ 偏低 1.8%,還在臺電 ±5% 規範(0.95–1.05)內
4.4 三相 vs 單相的 kV 怎麼填?
這是初學者最常出錯的地方。規則如下:
| 情境 | kV 參數應填 | 臺灣常見值 |
|---|---|---|
| 三相平衡系統( phases=3 ) | 線電壓(L-L) | 11.4, 22.8, 69 kV(配電) |
| 單相負載( phases=1 ) | 相對中性點電壓(L-N) | 0.11 kV(一般插座)、0.22 kV(冷氣、熱水器) |
| 單相雙線 110 V(Split-phase) | L-N 的 kV | 0.11 kV |
4.5 Load 的 model 類型(model=1~8)
依 EPRI OpenDSS Reference Guide [4] 定義,Load 可選 8 種電壓相依行為:
| model | 數學行為 | 典型用途 |
|---|---|---|
| 1(預設) | 定功率:P、Q 皆為常數 | 一般建築物用電,最常用 |
| 2 | 定阻抗:P、Q ∝ |V|² | 電熱器、白熾燈泡 |
| 3 | 馬達模型:P 為常數、Q ∝ |V|² | 定速感應馬達 |
| 4 | 饋線混合:P 線性、Q 平方(指數式) | 配電饋線整體混合負載 |
| 5 | 定電流:|I| 為常數 | 整流器、大型 VFD 輸入端 |
| 6 | 定 P、固定 Q(可為負) | 含發電成分的混合點(類 DG) |
| 7 | 定 P、固定電抗 Q = V²/X | 逆變器式行為 |
| 8 | ZIP 模型:%Z + %I + %P 可調比例 | CVR 研究、最彈性的電壓保存分析 |
本課所有範例都用 model=1,後續若做電壓保存(CVR, Conservation Voltage Reduction)研究,建議改用 model=8 的 ZIP 模型 [10]。
5 · 第一個電路:兩匯流排系統
先把一個最簡單的配電系統跑起來:電源 → 線路 → 負載。
5.1 完整 .dss 程式碼
! demo_1_first_circuit.dss —— 我的第一個 OpenDSS 電路 ! 作者:____ | 日期:____ Clear ! ① 建立新電路,11.4 kV 三相電源接在 sourcebus New Circuit.MyFirst basekv=11.4 bus1=sourcebus ! ② 2 公里長的三相架空線,sourcebus → loadbus ! (續行用 ~,必須放在「下一行」開頭,不是上一行結尾的 &) New Line.L1 bus1=sourcebus bus2=loadbus length=2 units=km ~ r1=0.3 x1=0.4 ! ③ 1 MW、功率因數 0.9 的三相負載,接 loadbus New Load.L_bldg bus1=loadbus phases=3 kV=11.4 kW=1000 pf=0.9 ! ④ 指定電壓基準(讓 pu 顯示正確) Set voltagebases=[11.4] Calcvoltagebases ! ⑤ 求解 + 顯示結果 Solve Show Voltages LN Nodes Show Currents Elements Show Powers kVA Elements Show Losses
Clear:清空記憶體,不影響硬碟New Circuit:必須是第一個 New,會自動產生 Vsource.source~(tilde)放在下一行的開頭代表「續打前一個 New 的屬性」(OpenDSS 沒有&行尾續行;用&會跳錯)Calcvoltagebases:讓每個 bus 認識自己的額定電壓,pu 才會正確Solve:預設為 snapshot 模式(單點潮流)Show Losses:顯示系統總功率 + 損耗
每一份 OpenDSS 程式結尾都長這三行,順序不能換——這是最容易踩到的第一個坑。
| 步驟 | 指令 | 在跟 OpenDSS 說什麼 |
|---|---|---|
| ① | Set voltagebases=[11.4 0.38] | 「基準電壓清單是 11.4 kV 和 0.38 kV」 |
| ② | CalcVoltageBases | 「收到,我去算每條匯流排屬於哪個電壓等級」 |
| ③ | Solve | 「開始跑潮流計算」 |
記法:先給清單 → 再算基準 → 最後解題。
- Solve 寫在 CalcVoltageBases 之前:pu 值全錯或顯示成奇怪的數字,因為連「基準電壓」都還沒算,pu = 實際值 / ??
- 漏掉 Set voltagebases:CalcVoltageBases 找不到清單,不會報錯但 pu 會全部變 1.000(看起來像成功,其實是假象——這就是 B18 題的情境)
- 只打 Solve:潮流能跑,但
Show Voltages LN Nodes的 pu 欄位不可信
5.2 預期輸出(四份報表)
分別對應 .dss 結尾的四個 Show 指令。請到工作列把每一個都打開來看,不要只看到其中一個就以為跑完了。如果某個視窗已被關掉,可在 Script 視窗再下一次 Show ... 即可重新打開。
① Show Voltages LN Nodes — 電壓報表
LINE-GROUND and LINE-LINE VOLTAGES BY BUS & NODE Bus Node VLN (kV) Angle pu Base kV Node-Node VLL (kV) Angle pu SOURCEBUS 1 6.5794 0.0 0.99964 11.400 1-2 11.396 30.0 0.99964 - 2 6.5794 -120.0 0.99964 11.400 2-3 11.396 -90.0 0.99964 - 3 6.5794 120.0 0.99964 11.400 3-1 11.396 150.0 0.99964 LOADBUS 1 6.529 -0.3 0.99197 11.400 1-2 11.308 29.7 0.99197 - 2 6.529 -120.3 0.99197 11.400 2-3 11.308 -90.3 0.99197 - 3 6.529 119.7 0.99197 11.400 3-1 11.308 149.7 0.99197
- VLN=相對中性點電壓(Line-to-Neutral,6.58 kV);VLL=線間電壓(Line-to-Line,11.4 kV);兩者比例為 √3
- sourcebus pu = 0.99964 ≠ 1.000:Vsource 並不是「無窮硬電源」,OpenDSS 依
MVAsc3、MVAsc1自動算出內阻;負載拉電後源端會微微下垂(這是真實電網的常態) - loadbus pu = 0.99197:離源端 2 km,1 MW 負載,掉 0.77%,仍在臺電 ±5% 規範內
- Angle 三相相差 120° 為標準三相平衡;loadbus 比 sourcebus 慢 0.3°(電流產生的相位延遲)
② Show Currents Elements — 電流報表
ELEMENT = "Vsource.SOURCE" SOURCEBUS 1 56.72 ∠ 153.9° = -50.946 + j 24.933 ← 從電源「流出」的電流 SOURCEBUS 2 56.72 ∠ 33.9° = 47.066 + j 31.653 SOURCEBUS 3 56.72 ∠ -86.1° = 3.880 + j-56.587 ELEMENT = "Line.L1" SOURCEBUS 1 56.72 ∠ -26.1° = 50.946 + j-24.933 ← 線從 sourcebus「流入」端 LOADBUS 1 56.727 ∠ 153.9° = -50.946 + j 24.950 ← 線從 loadbus「流出」端 ELEMENT = "Load.L_BLDG" LOADBUS 1 56.727 ∠ -26.1° = 50.946 + j-24.950 ← 從 loadbus 流入負載
- 每相電流 ≈ 56.7 A(與 5.3 節手算 56.3 A 完全吻合,差異 0.4 A 來自 OpenDSS 用實際電壓而非額定電壓除)
- 角度 −26.1°(電流相對電壓滯後):cos⁻¹(0.9) = 25.84° → 落後角約等於這個,是 pf=0.9 lagging 的物理意義
- 同一條 Line.L1 兩端電流方向相反(一端 −26.1°、另一端 153.9°,相差 180°):因為 OpenDSS 把「流進元件」一律當正方向,所以入端與出端的有符號電流剛好反相
③ Show Powers kVA Elements — 功率流向報表
ELEMENT = "Vsource.SOURCE" TERMINAL TOTAL -1005.8 + j -491.7 1119.5 kVA pf=0.8984 ← 電源輸出 1005.8 kW ELEMENT = "Line.L1" SOURCEBUS TOTAL 1005.8 + j 491.7 1119.5 kVA pf=0.8984 ← 進線端 LOADBUS TOTAL -1000.0 + j -484.3 1111.1 kVA pf=0.9000 ← 出線端 ELEMENT = "Load.L_BLDG" LOADBUS TOTAL 1000.0 + j 484.3 1111.1 kVA pf=0.9000 ← 負載吸收 1000 kW Total Circuit Losses = 5.8 + j 7.4
- 正號 = 流入元件,負號 = 流出元件(OpenDSS 一律以「流入元件為正」記號)
- 能量守恆:Source 出 1005.8 kW = Line 進 1005.8 kW,Line 出 1000 kW = Load 進 1000 kW;Line 兩端差 5.8 kW 即為損耗
- Source 端 pf=0.8984、Load 端 pf=0.9000:因為線路本身的 X 也吃了一些 var,從電源看出去 pf 略低於 0.9
④ Show Losses — 損耗報表(也就是你貼的那份)
LOSSES REPORT Element kW Losses % of Power kvar Losses "Line.L1" 5.79159 0.58 7.39174 LINE LOSSES = 5.8 kW TRANSFORMER LOSSES = 0.0 kW TOTAL LOSSES = 5.8 kW TOTAL LOAD POWER = 1000.0 kW Percent Losses = 0.58 %
- 5.79 kW:與 5.3 節 I²R 手算 56.3² × 0.6 × 3 ≈ 5.71 kW 相符(差 0.08 kW 是因 OpenDSS 用了 56.7 A 而非 56.3 A)
- 0.58%:每送 1000 kW 給負載,5.8 kW 在線路上變熱散掉。臺電配電平均線損約 4–6%(含變壓器、所用電),本例僅有一條線當然遠低於此
- kvar 損耗 7.4:線路電抗 X 吃掉的無功,是線路 PF 與電壓變化的另一個來源
四份報表如何對應「能不能下班」
| 報表 | 關鍵欄位 | 判讀重點 |
|---|---|---|
| ① 電壓 | loadbus pu | 是否落在 0.95–1.05 範圍(臺電規範) |
| ② 電流 | 每相 A、角度 | 是否超過導線安培容量(ampacity);pf 是否合理 |
| ③ 功率流向 | 進元件 / 出元件 | 能量守恆是否守住、PF 在哪一段惡化 |
| ④ 損耗 | % of Power | 線路效率;> 5% 通常代表線徑太細或太長 |
看到 loadbus = 0.99197 pu、損耗 0.58%、源/負載功率守恆 → 你的第一個 OpenDSS 模擬就成功了!👏
5.3 為什麼電壓會掉?物理解釋
回到基本電路:負載端電壓 = 電源電壓 − 線路壓降 = Vs − I·Z。以本例做單相等效手算(VLN = 11.4/√3 ≈ 6.58 kV):
- 單相功率:Pφ = 1000/3 ≈ 333 kW,Qφ = Pφ × tan(acos 0.9) ≈ 161 kvar,Sφ = Pφ / pf ≈ 370 kVA
- 線電流:|I| = Sφ / VLN = 370 000 / 6 581 ≈ 56.3 A(OpenDSS 實際算出 56.7 A,差異來自源端微微下垂後的迭代)
- 線路阻抗:R = 0.3 × 2 = 0.6 Ω,X = 0.4 × 2 = 0.8 Ω
- 近似壓降公式:ΔV ≈ I × (R cos φ + X sin φ) = 56.3 × (0.6×0.9 + 0.8×0.436) ≈ 50 V
- 負載端:VLN ≈ 6 581 − 50 = 6 531 V → pu ≈ 0.992;線電壓 ≈ 6 531 × √3 ≈ 11.31 kV
OpenDSS 用完整的相位計算與迭代法 [4],跑出 0.99197 pu,與手算的 0.992 差不到 0.001——這就是「物理直覺 + 工程模擬互相印證」的價值。
📌 為什麼 OpenDSS 的 sourcebus 是 0.99964 pu 而不是 1.0000?因為 Vsource 預設不是「無窮硬電源」——它依 MVAsc3=2000、MVAsc1=1500 算出一個內阻,當下游有負載拉電時源端會微微下垂,這正是真實電網的行為。若希望 sourcebus 永遠是 1.0000 pu,可改成 MVAsc3=999999(接近無限大),但對 5/8 教學目標反而失真。
5.4 為什麼程式裡沒寫電流也能算?(重要觀念)
很多同學第一次看 OpenDSS 都會問:「電路學課本要給電流源、電壓源;但這個 .dss 檔我只給了負載 kW,沒給電流,怎麼算得出 56.7 A?」
你給了什麼?OpenDSS 算了什麼?
| 元件 | 你給的 | OpenDSS 算的 |
|---|---|---|
Circuit.MyFirst basekv=11.4 | 電源電壓 Vs = 11.4 kV (L-L) | — |
Line.L1 r1=0.3 x1=0.4 length=2 | 線路阻抗 Z = (0.6 + j0.8) Ω | — |
Load.L_bldg kW=1000 pf=0.9 | 負載功率 P=1000 kW、Q=484 kvar | — |
| 沒給的(OpenDSS 自己解) | — | Vload、I(每條線的電流) |
數學上怎麼算?(迭代法)
已知:V_s = 6.58 kV (L-N),Z = 0.6 + j0.8 Ω,S_load = 333 + j161 kVA (per phase)
迭代第 1 步:
假設 V_load⁰ = V_s = 6.58 kV
I⁰ = conj(S_load / V_load⁰) = (333 - j161) / 6.58 ≈ 50.6 - j24.5 A
|I⁰| ≈ 56.2 A
迭代第 2 步:
V_load¹ = V_s - I⁰·Z
= 6.58 - (50.6-j24.5)(0.6+j0.8) / 1000
≈ 6.529 kV
I¹ = conj(S_load / V_load¹)
≈ 50.95 - j24.7 A |I¹| ≈ 56.7 A
⋮ 收斂後(3-5 次):
V_load = 6.529 kV、I = 56.72 A ← 你 Show Currents 看到的數字!
為什麼這樣設計?(vs 電路學課本)
| 電路學課本 | 潮流分析(OpenDSS) | |
|---|---|---|
| 給什麼 | V 源 + R + 電流源 | V 源 + Z + 負載功率 |
| 求什麼 | 節點電壓 | V 與 I(同時) |
| 非線性? | 線性 | 非線性(V 跟 I 互相耦合)→ 需迭代 |
| 為什麼這樣? | 教概念 | 真實電網:用戶報用電量、不報電流 |
⚡ 想想冷氣機:標籤寫「1.5 kW」,不寫「6.5 A」。台電帳單按度(kWh)收,不是按安培秒。OpenDSS 完全反映這個現實。
P = √3 × V_LL × I × cos φ = √3 × 11.31 × 56.72 × 0.9 / 1000 ≈ 1.000 MW✓ 跟你
kW=1000 完全對得上——能量守恆驗證通過!
所以 Show Currents Elements 是把「OpenDSS 已經算好的電流」印出來。它不是你「指定」的;它是 V × Z × S 三項約束下,由 Kirchhoff 定律 + 歐姆定律唯一決定的結果。
6 · 第二個電路:含變壓器的 3 匯流排系統
真實校園會有升降壓變壓器:校外進來 11.4 kV,經變壓器降到 380 V 給一般建築,再降到 220 V 給插座。我們用 OpenDSS 重現這一層。
6.1 程式碼(可直接複製貼上跑)
! demo_2_with_transformer.dss —— 進階範例:含變壓器與 PV Clear ! 高壓側電源(臺電饋入) New Circuit.Campus basekv=11.4 bus1=hvbus phases=3 ! 高壓饋線,1 km New Line.Feeder bus1=hvbus bus2=primbus length=1 units=km ~ r1=0.2 x1=0.3 phases=3 ! 配電變壓器 Dyn11:一次側 Δ、二次側 Y 中性點直接接地,500 kVA,阻抗 5.75% New Transformer.T1 phases=3 windings=2 xhl=5.75 ~ buses=[primbus lvbus] conns=[delta wye] ~ kvs=[11.4 0.38] kvas=[500 500] %loadloss=1.0 ! 300 kW 三相負載(例如某棟系館) New Load.Bldg bus1=lvbus kV=0.38 kW=300 pf=0.92 model=1 phases=3 ! 100 kW 屋頂 PV(第 2 次課會深入介紹) New PVSystem.Rooftop bus1=lvbus kV=0.38 kVA=120 Pmpp=100 ~ irradiance=1.0 pf=1.0 phases=3 ! 設定電壓基準(兩層:11.4 kV、0.38 kV;陣列用空格分隔,不要逗號) Set voltagebases=[11.4 0.38] Calcvoltagebases Solve Show Voltages LN Nodes Show Powers kVA Elements
Transformer:xhl是高低壓側之間的漏電抗(百分比),500 kVA 配電變壓器典型值約 4–7%buses=[a b]:用中括號列出多個 bus(1 次側、2 次側);OpenDSS 也接受小括號或逗號分隔,本教材統一使用 中括號conns=[delta wye]:一次側 Δ、二次側 Y。OpenDSS 中wye預設為中性點直接接地,若需非接地可加Rneut=-1PVSystem:簡化版先用Pmpp+irradiance=1.0(下次課會加 PVShape 日照曲線)voltagebases:多電壓層要全部列出(本例:11.4、0.38 兩層)
6.2 預期輸出(實機驗證)
① Show Voltages LN Nodes — 電壓報表(三層)
LINE-GROUND and LINE-LINE VOLTAGES BY BUS & NODE Bus Node VLN (kV) Angle pu Base kV Node-Node VLL (kV) Angle pu HVBUS 1 6.5812 0.0 0.99991 11.400 1-2 11.399 30.0 0.99991 - 2 6.5812 -120.0 0.99991 11.400 2-3 11.399 -90.0 0.99991 - 3 6.5812 120.0 0.99991 11.400 3-1 11.399 150.0 0.99991 PRIMBUS 1 6.5771 0.0 0.99929 11.400 1-2 11.392 30.0 0.99929 - 2 6.5771 -120.0 0.99929 11.400 2-3 11.392 -90.0 0.99929 - 3 6.5771 120.0 0.99929 11.400 3-1 11.392 150.0 0.99929 LVBUS 1 0.2150 -31.2 0.97999 0.380 1-2 0.3724 -1.2 0.97999 - 2 0.2150 -151.2 0.97999 0.380 2-3 0.3724 -121.2 0.97999 - 3 0.2150 88.8 0.97999 0.380 3-1 0.3724 118.8 0.97999
- 三層電壓清楚看見:源頭 11.4 kV → 饋線末端仍 11.4 kV(壓降微小)→ 變壓器後 380 V(=0.38 kV)
- HVBUS 0.99991 pu:Vsource 經過 0.1 km 內阻後就微微下垂(仍幾乎 = 1.0)
- PRIMBUS 0.99929 pu:經過 1 km 饋線壓降約 0.06% → 高壓側壓降本來就小(11.4 kV 高電壓)
- LVBUS 0.97999 pu = -2.0%:經過變壓器(含 5.75% 漏抗)+ 200 kW 淨負載 → 掉到 0.98。仍在臺電 ±5% 規範內 [9]
- LVBUS 角度 −31.2°:Δ-Y 變壓器引入 30° 相位偏移(IEC vector group Dyn1/Dyn11 標準)+ 1.2° 負載引起的滯後
② Show Powers kVA Elements — 功率流向(含 PV 反送)
ELEMENT = "Vsource.SOURCE" TERMINAL TOTAL -201.3 + j -134.5 242.1 kVA pf=0.8314 ← 電源輸出 201.3 kW ELEMENT = "Line.FEEDER" HVBUS TOTAL 201.3 + j 134.5 242.1 kVA pf=0.8314 ← 進線端 PRIMBUS TOTAL -201.2 + j -134.5 242.0 kVA pf=0.8312 ← 出線端 (損耗 0.1 kW) ELEMENT = "Transformer.T1" PRIMBUS TOTAL 201.2 + j 134.5 242.0 kVA pf=0.8312 ← 一次側 (Δ) LVBUS TOTAL -200.0 + j -127.8 237.3 kVA pf=0.8427 ← 二次側 (Y),損耗 1.2 kW ELEMENT = "Load.BLDG" LVBUS TOTAL 300.0 + j 127.8 326.1 kVA pf=0.9200 ← 負載吃 300 kW ELEMENT = "PVSystem.ROOFTOP" LVBUS TOTAL -100.0 + j 0.0 100.0 kVA pf=-1.0000 ← PV 反送 100 kW Total Circuit Losses = 1.3 + j 6.7
- 能量守恆:Source 出 201.3 kW + PV 出 100 kW = 301.3 kW;Load 吃 300 kW + 損耗 1.3 kW = 301.3 kW ✓
- PV 注入 100 kW,所以從電網看出去只需供應 200 kW(300 - 100),這就是 PV 的價值——降低供電端負擔
- 變壓器損耗 1.2 kW(占總損耗 92%):300 kW 級配電變壓器在 60% 負載率下的合理值(含 1% loadloss + 銅損)
- 線路損耗只有 0.1 kW:1 km 高壓饋線、200 kW 流量 → I²R 很小
- Source 端 PF = 0.8314(很差):因為 PV 注入「純實功」而負載要無功(kvar=128),電網要負擔所有 var → PF 變差。這是下次課要講的「PV 過量沒有改善 PF」議題
- PVSystem PF = −1.0000:負號代表「源」(不是負載),絕對值 1 代表 unity power factor(純實功,零無功)
③ 兩個 callout:你今天要記住的兩件事
Pmpp=100 改成 Pmpp=400(超過負載 300 kW)→ Solve → 你會看到 LVBUS pu 飆到 > 1.0,這就是第 3 次課(5/15)天橋 PV 案例要深入探討的過電壓反送問題 [7][15]。
6.3 三層電壓的物理意義(速記)
| 位置 | pu 值 | 掉了多少 | 原因 |
|---|---|---|---|
| HVBUS(源頭) | 0.99991 | 0.009% | Vsource 內阻(MVAsc3 設定) |
| PRIMBUS(饋線末端) | 0.99929 | 0.062% | 1 km 高壓饋線 IR/IX 壓降 |
| LVBUS(低壓側) | 0.97999 | 1.93% | 變壓器 5.75% 漏抗 × 60% 負載率 ≈ 1.93% |
每跨過一個元件就掉一點點,最後仍在 ±5% 內。這就是「電壓沿線下降」的工程直覺——若再加負載或拉長線,遲早會掉破 0.95。
6.4 從這份輸出可以讀出 5 件事(教學重點)
把 § 6.2 報表完整看完,你會抓到 5 個工程直覺,未來看任何配電潮流結果都用得上:
Source 出 201.3 kW + PV 注 100 kW = 301.3 kW
Load 吃 300 kW + 線路損 0.1 kW + 變壓器損 1.2 kW = 301.3 kW ✓
kvar 也對得上:134.5 + 0 (PV unity) = 127.8 (load) + 6.7 (損耗) ✓
總 1.3 kW 損耗中,變壓器吃 1.2 kW(92%)、線路只佔 0.1 kW(8%)。
原因:1 km 11.4 kV 高壓線電流小(10 A 級)→ I²R 小;變壓器 500 kVA 在 60% 負載率下,銅損 + %loadloss=1.0 的鐵損加總約 1.2 kW(典型值)。
意義:配電工程師最在意「變壓器損耗管理」——拉長線路只增加微量損;配變壓器選不好則年年燒錢。
負載端 PF = 0.92(一般辦公大樓);但從 Source 看 PF 只有 0.8314(很差)。為什麼?
因為 PV 把好做的「實功」搶走了,留給電網的是「無功(var)」:
・負載要 300 kW + 128 kvar
・PV 出 100 kW + 0 kvar(unity PF)
・電網被迫供 200 kW + 128 kvar → cos φ = 200/√(200²+128²) = 0.842 ≈ Source 端看到的 0.83
對策:smart inverter Volt-VAR 控制([8])讓 PV 也供無功,而非只供實功。
看電壓報表:HVBUS phase 1 角度 0°;LVBUS phase 1 角度 −31.2°(不是 0°)。
30° 是 Δ-Y 標準相位偏移(IEC vector group Dyn1),剩 1.2° 是負載引起的滯後。
意義:兩台 Δ-Y 變壓器並聯時必須 vector group 相同,否則會循環電流。這是電力工程師最常踩的雷區。
PVSystem.Rooftop 的功率報表:-100.0 kW,PF 顯示 -1.0000。
負號 = 從元件流出去(源),正號 = 流入(負載)。
所以從 LVBUS 看 PV 是「給電」,跟從 LVBUS 看 Load.BLDG 是「吃電」剛好相反。
絕對值 |PF| = 1.0 代表 PV unity power factor(純實功,不出入無功)。
6.4.1 想自己驗證?把這幾個改下去
| 實驗 | 修改 | 預期觀察 |
|---|---|---|
| PV 過量反送 | Edit PVSystem.Rooftop Pmpp=400 | LVBUS pu > 1.0、Source 出力變負(吃 PV 反送的電) |
| 變壓器負載率拉滿 | Edit Load.Bldg kW=480(接近 500 kVA) | 變壓器損耗從 1.2 → 約 3 kW(隨 I² 平方放大) |
| PV 改 PF 抗壓升 | Edit PVSystem.Rooftop pf=-0.95(吸 var) | 從 Source 看 PF 變好;LVBUS 不會升那麼多 |
| 關 PV | Edit PVSystem.Rooftop irradiance=0 | Source 必須補回那 100 kW,PF 回到 0.92(與 Load 同) |
7 · 互動模擬器 🎛️
不安裝 OpenDSS 也能玩!下方這個模擬器在你的瀏覽器內跑真實的迭代法潮流計算(相當於 OpenDSS 的 Solve,誤差 < 0.01%)。
試著拖動滑桿,觀察當負載變大或線路變長時,負載端電壓如何變化:
⚙️ 參數調整
📊 計算結果 (Solve)
7.1 電壓剖面圖(Voltage Profile)
沿著饋線從 source 走到末端,電壓如何一路下滑?這張圖即時顯示:
- 為什麼負載變大,電壓反而變小?
- 功率因數從 0.9 降到 0.7,電壓跟著降多少?這就是無效功率的影響
- 線路長度拉到 10 km,pu 跌到多少?臺電規定的 0.95 pu 下限還守得住嗎?
- 提高電源電壓(模擬變壓器抽頭往上 1 檔),能挽救多少?
- 如果負載端加一組 500 kvar 電容器,電壓剖面會怎麼變?(第 3 次課示範)
7.2 Solve 模式選擇地圖:snap / daily / duty / yearly
上面這個模擬器跑的是 snap(瞬時)模式。但第 3–4 次課我們要分析「天橋 PV 一整天的出力」、「儲能 24 小時的削峰填谷」,就得切換到 daily 模式。先建立選擇地圖:
| Solve 模式 | 時間尺度 | 什麼時候用 | 本學期對應 |
|---|---|---|---|
snap(預設) | 單一瞬間 | 只看「此刻」電壓與負載的關係 | 節 5、節 7 現場操作 |
daily | 24 小時 | PV 日曲線、EV 充電時段、儲能充放電策略 | 第 3、4 次課三個校園案例 |
duty | 秒~分 | 衝擊型負載(電梯、電焊機)造成的瞬間波動 | 選讀 |
yearly | 一整年(8760 hr) | 裝置容量規劃、hosting capacity 分析 | 期末延伸 |
! 搭配 LoadShape / PVShape(每 15 分鐘一點,一天 96 點) Set Mode=Daily number=96 stepsize=15m Solve
關鍵差異:snap 只算 1 個解,daily 則依 LoadShape / PVShape 連跑 96 次——所以才能看到一天內電壓怎麼起伏。
8 · 常用指令速查
Clear ! 清空 New Circuit.Name basekv=11.4 ! 宣告電路 New Line.L1 bus1=a bus2=b length=1 units=km r1=0.3 x1=0.4 New Transformer.T1 phases=3 windings=2 xhl=5.75 ~ buses=[busH busL] conns=[delta wye] ~ kvs=[11.4 0.38] kvas=[500 500] New Load.L1 bus1=b kV=11.4 kW=100 pf=0.9 model=1 New PVSystem.PV1 bus1=c kV=0.38 kVA=50 Pmpp=45 irradiance=1.0 New Storage.Bat1 bus1=c kV=0.38 kWrated=100 kWhrated=200 %stored=50 New Capacitor.C1 bus1=b kV=11.4 kvar=300 New Reactor.R1 bus1=b kV=11.4 kvar=100 Edit Load.L1 kW=150 ! 修改已存在元件 Disable Load.L1 ! 暫時停用 Enable Load.L1 ! 重新啟用
Set voltagebases=[11.4 0.38 0.22] Calcvoltagebases Solve ! 單點潮流(snapshot) Set mode=daily stepsize=1h number=24 Solve ! 24 hr 時序 Set mode=yearly stepsize=1h number=8760 Solve ! 一整年時序 Set mode=faultstudy Solve ! 短路計算 Set mode=harmonics Solve ! 諧波分析 Set maxiter=100 ! 放寬收斂次數 Set tolerance=0.0001 ! 收斂容差
Show Voltages LN Nodes ! 每個 bus 的相電壓 Show Voltages LL ! 線電壓 Show Currents Elements ! 每個元件的電流 Show Powers kVA Elements ! 每個元件的功率 Show Losses ! 系統總損耗 Show Buses ! 所有 bus 清單 + 座標 Show Taps ! 變壓器分接頭狀態 Show EventLog ! 事件紀錄 Export Voltages ! 輸出 CSV Export Powers ! 輸出 CSV Export Summary ! 摘要
Plot Circuit ! 電路拓樸圖 Plot Profile ! 沿饋線的電壓剖面 Plot Monitor object=Mon1 ! 某 Monitor 的波形 Plot Daisy ! Daisy-chain 圖 Plot Scatter ! 散佈圖 Plot Loadshape ! 負載曲線
! Monitor:錄影某元件的電壓/電流/功率 New Monitor.MVolt element=Line.L1 terminal=1 mode=0 ! V, I New Monitor.MPow element=Load.L1 terminal=1 mode=1 ! P, Q ! EnergyMeter:沿此線向下統計能量 / 損耗 New Energymeter.FeederM element=Line.Feeder terminal=1 Solve mode=daily stepsize=1h number=24 Show Monitor MVolt Export Monitor MVolt Plot Monitor object=MVolt channels=(1 3 5)
! Loadshape:負載隨時間的倍率曲線(24 點代表 24 小時) New Loadshape.DailyBldg npts=24 interval=1 ~ mult=(0.3 0.3 0.3 0.3 0.3 0.4 0.6 0.8 0.9 1.0 1.0 1.0 0.95 1.0 1.0 0.95 0.9 0.85 0.8 0.75 0.6 0.5 0.4 0.3) ! PVShape:PV 出力曲線(夜間為 0) New Loadshape.DailyPV npts=24 interval=1 ~ mult=(0 0 0 0 0 0 0.1 0.3 0.6 0.85 0.95 1.0 1.0 0.95 0.85 0.6 0.3 0.1 0 0 0 0 0 0) ! 套用到 Load / PVSystem Edit Load.L_bldg daily=DailyBldg Edit PVSystem.Rooftop daily=DailyPV ! 跑 24 hr 時序 Set mode=daily stepsize=1h number=24 Solve ! 檢視結果 Plot Monitor object=Mon1 Export Monitors all
9 · 進階:用 Python 控制 OpenDSS(選讀)
若你修過 Python(選修的 Python 程式設計、或專題有用 Python),可以透過 OpenDSSDirect.py 讓 OpenDSS 變成一個被呼叫的引擎,適合做批次跑幾百個案例、或整合機器學習。
9.1 安裝
pip install OpenDSSDirect.py[all]
9.2 把第 5 節的電路用 Python 跑一次
import opendssdirect as dss # 寫好的 .dss 檔可以直接載入 dss.run_command("Redirect demo_1_first_circuit.dss") # 或直接在 Python 裡建電路 dss.run_command("Clear") dss.run_command("New Circuit.Test basekv=11.4 bus1=src") dss.run_command("New Line.L1 bus1=src bus2=load length=2 units=km r1=0.3 x1=0.4") dss.run_command("New Load.L1 bus1=load kV=11.4 kW=1000 pf=0.9") dss.run_command("Set voltagebases=[11.4]") dss.run_command("Calcvoltagebases") dss.run_command("Solve") # 取出結果(回傳 list) voltages = dss.Circuit.AllBusMagPu() buses = dss.Circuit.AllBusNames() for b, v in zip(buses, voltages): print(f"{b:10s} {v:.4f} pu")
9.3 批次掃描:畫出「負載 vs 末端電壓」曲線
import opendssdirect as dss import matplotlib.pyplot as plt loads, vends = [], [] for kW in range(100, 3001, 100): dss.run_command(f"Edit Load.L1 kW={kW}") dss.run_command("Solve") v = dss.Circuit.AllBusMagPu()[-1] # 末端 bus loads.append(kW); vends.append(v) plt.plot(loads, vends, marker="o") plt.axhline(y=0.95, color="r", ls="--", label="±5% 下限") plt.xlabel("負載 (kW)"); plt.ylabel("末端 pu") plt.legend(); plt.grid(); plt.show()
- 做 Monte Carlo:PV 出力有不確定性,跑 1000 次不同出力組合,看違規機率
- 訓練 ML 模型:用 OpenDSS 生資料,訓練神經網路預測潮流(快 100×)
- 整合最佳化:把 OpenDSS 當「模擬器」嵌入遺傳演算法 / 強化學習
10 · 課堂挑戰(30 分鐘)
打開 OpenDSS,把第 5 節的程式碼跑起來,然後完成下列修改:
- 挑戰 A — 加重負載:把負載從 1000 kW 改成 2500 kW。
→ loadbus 電壓跌到多少 pu?有超過臺電規定 ±5% 嗎? - 挑戰 B — 改善功率因數:在 loadbus 加一個電容器補償無效功率:
New Capacitor.C1 bus1=loadbus kV=11.4 kvar=500
→ 電壓有改善嗎?線路電流變化多少? - 挑戰 C — 拉長線路:把 Line.L1 的 length 改成 8 km。
→ pu 跌破 0.95 了嗎?這就是為什麼偏遠地區需要升壓站。 - 挑戰 D — 加一個變壓器:參考第 6 節,在 loadbus 之後接一個 11.4/0.38 kV 變壓器與 0.38 kV 負載。
→ 多了變壓器漏抗,電壓剖面如何變化? - 挑戰 E — 時序模擬(🌟 選做、第 2 次課正式教):參考第 8 節「時序 Loadshape」分頁的範本,建立簡單 Loadshape(晚上 0.3、白天 1.0)後跑 24 hr。
→ 畫出每小時的末端電壓。本挑戰超出本課範圍,做不出來不扣分;做得出來下次課直接跳級加分。
.dss 檔 + 每個電路 Show Voltages 的 Results 截圖壓成 zip,上傳到課程平台。命名:[學號]_lesson01.zip。截止:下次上課前 24 小時。
11 · 小測驗(8 題 · 即時回饋)
每題做完會立刻看到解析,不必等下課。答對 6 題以上表示本課學習成效達標。
12 · 校園場域預覽(3 個可控資源)
接下來 3 次課會分析的三個 DER 資源。B 與 C 都位於電機館 Lab126 微電網實驗室,A 則透過校內饋線併網。請事先實地走訪一次,下次課同學們會討論該如何把你眼前看到的轉成 OpenDSS 語法。
建議:側拍全貌 + PV 面板近照 + 併網配電箱特寫各一張
明志校內跨路的太陽光電系統,併入校內 11.4 kV 饋線。建議估測:PV 總容量(kWp)、併網逆變器規格、線路長度與線徑、日典型出力曲線。
建議:屋頂 PV 空拍 + Lab126 PCS 機櫃 + EV 充電樁使用中的照片
由三個元件組成:電機館屋頂 PV 陣列 + 安裝於 Lab126 的功率調節器(PCS)+ 一座 7 kW 電動車充電樁。三者共構完整的「發電 + 轉換 + 負載」迷你微電網。建議記錄:PV 陣列數量與容量、PCS 額定功率與效率曲線、充電樁使用時段。
建議:電池櫃外觀、PCS 功率轉換器、BMS 控制介面、SOC 歷史曲線
位於電機館 Lab126 的工商級電池儲能系統。建議記錄:額定容量(kWh)/ 額定功率(kW)、C-rate、PCS 廠牌、BMS 通訊協定、典型充放電策略(削峰填谷 / 尖離峰套利 / 緊急支援)。
第 5 次課口頭發表時用的總覽圖
三個資源都接入校內 11.4 kV 饋線;電機館內 Lab126 同時容納資源 B 的 PCS 與資源 C 的儲能,構成本校微電網的「控制中樞」。整個系統併入臺電 22.8 kV 主網。第 5 次課會討論整合後的功率平衡與三資源協同調度。
12.1 特別關注:天橋 PV 的「中午過電壓」現象
為什麼資源 A 值得整整一次課來分析?因為它是台灣配電業最頭痛問題的縮影:PV 併網造成饋線末端中午過電壓(Katiraei & Aguero, IEEE Power & Energy Magazine, 2011)。
- ☀️ 日照最強的 11:00–13:00,天橋 PV 出力 ≈ 裝置容量的 70–90%
- 🏫 校園白天負載相對穩定,週末 / 寒暑假最嚴重(負載低、PV 照樣發電)
- ⚡ 當
PV 發電 > 本地負載,多餘的電反送回饋線,沿線各點電壓都被推高 - 📐 饋線越長、PV 容量越大、負載越少,過電壓越嚴重
第 3 次課要用 OpenDSS 回答的題目:「如果明志科大 2030 再把天橋 PV 擴增 3 倍,末端電壓會不會違反臺電 ±5% 規範?」
13 · 外部資源(想學更多)
13.1 官方與開源社群
| 資源 | 連結 | 說明 |
|---|---|---|
| OpenDSS 官方下載 | SourceForge | Windows 安裝檔、舊版存檔 |
| OpenDSS Wiki | SourceForge Wiki | 官方知識庫、範例檔 |
| 官方討論區 | SourceForge Forum | EPRI 工程師會回答問題 |
| EPRI | epri.com | 研究報告、白皮書 |
| DSS-Extensions (GitHub) | github.com/dss-extensions | 跨平台 Python / Julia / C++ 綁定 |
| OpenDSSDirect.py | GitHub | Python 介面,macOS/Linux 也能跑 |
| PyPI 套件 | pypi.org | pip install 安裝 |
13.2 學習資源(免費)
- EPRI OpenDSS Primer(官方入門手冊)— 隨安裝檔附 PDF,路徑:
C:\Program Files\OpenDSS\Doc\ - OpenDSS Manual(參數手冊)— 同上路徑,查指令細節必備
- OpenDSS Tech Note(技術筆記)— 官方寫的主題文章:諧波、PV、時序模擬各一篇
- NREL OpenDSS Tutorials(美國再生能源國家實驗室)— YouTube 上搜尋 "NREL OpenDSS"
- IEEE PES Distribution Systems Technical Committee — 定期舉辦 webinar
13.3 相關測試系統(寫論文會用到)
| 測試系統 | 用途 |
|---|---|
| IEEE 13-Node | 入門標準案例,不平衡負載 |
| IEEE 34-Node | 長饋線電壓調整 |
| IEEE 123-Node | 中型網狀電路 |
| IEEE 8500-Node | 大型配電網 |
| EPRI Ckt24 | 真實北美配電饋線(含真實 PV 滲透) |
以上皆已內建在 OpenDSS 安裝的 IEEETestCases 資料夾中,可直接 Compile 來跑。
13.4 相關會議與期刊
- IEEE PES General Meeting(每年 7 月)— OpenDSS 新功能多在此發表
- IEEE PES Transmission & Distribution Conference
- CIRED(International Conference on Electricity Distribution)— 歐洲配電盛會
- IEEE Transactions on Power Systems、Power Delivery、Smart Grid(三大 SCI 期刊)
- 中華民國電機工程學會《電力工程》季刊 — 中文、本土案例
13.5 AI 輔助學習(本課程建議使用)
當你卡在語法或錯誤訊息時,可用 ChatGPT / Claude / Gemini 協助:
提示詞範例: 我在寫 OpenDSS 程式,想要 [你要做的事], 目前的程式碼是 [貼上 .dss], 執行後出現錯誤 [貼上 Results 訊息], 請幫我找出問題並說明原因。
但請務必自己先讀懂再複製 — 期末報告會口試,AI 產生的程式碼若你自己解釋不出來,分數會被扣。
14 · 參考文獻
- International Energy Agency, Renewables 2023: Analysis and forecast to 2028. Paris: IEA, 2024. [Online]. Available: https://www.iea.org/reports/renewables-2023
- 國家發展委員會,《臺灣 2050 淨零排放路徑及策略總說明》. 臺北:國發會,2022.
- U.S. Department of Energy, "DOE Microgrid Workshop Report," Office of Electricity Delivery and Energy Reliability, Aug. 2011.
- R. C. Dugan, Reference Guide: The Open Distribution System Simulator (OpenDSS), Electric Power Research Institute (EPRI), Palo Alto, CA, 2020.
- R. C. Dugan and T. E. McDermott, "An open source platform for collaborating on smart grid research," in Proc. IEEE PES General Meeting, Detroit, MI, USA, Jul. 2011, pp. 1–7, doi: 10.1109/PES.2011.6039829.
- D. Montenegro, M. Hernandez, and G. A. Ramos, "Real time OpenDSS framework for distribution systems simulation and analysis," in Proc. IEEE/PES T&D Latin America, 2012.
- R. Tonkoski, L. A. C. Lopes, and T. H. M. El-Fouly, "Coordinated active power curtailment of grid connected PV inverters for overvoltage prevention," IEEE Trans. Sustain. Energy, vol. 2, no. 2, pp. 139–147, Apr. 2011.
- IEEE Standard for Interconnection and Interoperability of Distributed Energy Resources with Associated Electric Power Systems Interfaces, IEEE Std 1547-2018, Apr. 2018.
- 臺灣電力公司,《再生能源發電設備併聯技術要點》,2021 年修訂版.
- W. H. Kersting, Distribution System Modeling and Analysis, 4th ed. Boca Raton, FL: CRC Press, 2017.
- T. A. Short, Electric Power Distribution Handbook, 2nd ed. Boca Raton, FL: CRC Press, 2014.
- J. A. Martínez-Velasco, Transient Analysis of Power Systems: Solution Techniques, Tools and Applications. Hoboken, NJ: Wiley, 2015.
- A. Keane et al., "State-of-the-art techniques and challenges ahead for distributed generation planning and optimization," IEEE Trans. Power Syst., vol. 28, no. 2, pp. 1493–1502, 2013.
- 羅慶權,〈以 OpenDSS 建構校園微電網數位分身之教學實踐〉,教育部教學實踐研究計畫 114 年度計畫書,2025.
- P. P. Barker and R. W. de Mello, "Determining the impact of distributed generation on power systems: Part 1 — Radial distribution systems," in Proc. IEEE PES Summer Meeting, 2000, pp. 1645–1656.
15 · 第 1 次到此結束 · 接著看
第 1 次課的內容就到這。下面接著是 5/8、5/15、5/22、5/29 四次課的教材。建議:
- 👇 直接捲到下方「第 2 次|2026-05-08」看明天上課要做什麼
- 📚 想複習可以再玩一次互動模擬器或重看第一個電路
- 📝 想看課程整體規劃,回到頂端的 OpenDSS 實作單元地圖
補課第一個電路 + 微電網元件建模
第 2 次|元件建模(PVSystem / Storage / Monitor / EnergyMeter)
時間表(3 節 × 50 min + 兩個 10 min 休息 = 150 min)
| 時段 | 內容 |
|---|---|
| 第 1 節 9:00–9:10 | 開場 + 同意書(雙層 + 錄音)22 份發放 |
| 9:10–9:30 | 補課:第一個電路(demo_1 逐行解說 + 學生跟打) |
| 9:30–9:50 | demo_2 修改負載 + 三步口訣強化 |
| 9:50–10:00 | 下課 10 分(同意書收齊 + 補測進度 check) |
| 第 2 節 10:00–10:25 | PVSystem 元件 + demo_3 示範(反送電示意) |
| 10:25–10:50 | Storage 三狀態 + Monitor + EnergyMeter + demo_4 |
| 10:50–11:00 | 下課 10 分(demo_5 起點檔發放 + 分組確認) |
| 第 3 節 11:00–11:05 | 作品 1 任務 A–D 說明 |
| 11:05–11:35 | 作品 1 實作:3-bus + PV + Storage(demo_5) |
| 11:35–11:45 | 上傳 + A4 紙寫一句話觀察 |
| 11:45–11:50 | 預告 5/15 + 踏查作業說明 |
PVSystem 與 Storage 兩大新元件
kV(接入電壓 L-L)、kVA(逆變器額定容量)、Pmpp(最大功率點)、irradiance(日照比例 0~1,1.0 = STC)。idling / charging / discharging。4 關鍵參數:kWrated(瞬間功率)、kWhrated(容量)、%stored(SoC)、state。對應 Lab126 工商型儲能 30 kW / 100 kWh。PVSystem 範例(demo_3)
New PVSystem.PV1 bus1=LoadBus phases=3 kV=11.4 ~ kVA=30 Pmpp=30 irradiance=1.0 ~ %cutin=0.1 %cutout=0.1 conn=wye
Storage 範例(demo_4)
New Storage.BESS1 bus1=LoadBus phases=3 kV=11.4 ~ kWrated=30 kWhrated=100 %stored=50 %reserve=20 ~ %EffCharge=95 %EffDischarge=95 ~ state=discharging dispmode=default
🎯 三步口訣
| 步 | 指令 | 含意 |
|---|---|---|
| ① | Set voltagebases=[11.4 0.38] | 「基準電壓清單是 11.4 kV 和 0.38 kV」 |
| ② | CalcVoltageBases | 「OpenDSS 去算各母線屬於哪個基準」 |
| ③ | Solve | 「開始迭代求解潮流」 |
口訣:先給清單 → 算基準 → 解題。順序顛倒 → pu 全錯或變 NaN。
☀️ PVSystem 元件拆解
PVSystem 不是「太陽能板」,而是「太陽能板 + 直流轉換 + 逆變器整體模組」。OpenDSS 用一個元件包到底。
4 個關鍵參數的物理意義
| 參數 | 單位 | 意義 | 典型值 |
|---|---|---|---|
kV | kV | 接入電壓(三相填 L-L、單相填 L-N) | 11.4(高壓)/ 0.38(低壓) |
kVA | kVA | 逆變器額定容量(apparent power 上限) | ≥ Pmpp(通常 1.0–1.2 倍) |
Pmpp | kW | PV 板最大功率點功率(Maximum Power Point) | 等於板子 STC 標稱 |
irradiance | 無單位(0~1) | 日照比例(1.0 = STC 1000 W/m²) | 白天 0.7–1.0、夜間 0 |
%cutin / %cutout | % | 進入/離開穩態運轉的觸發比例(% of Pmpp) | 實務 5–10;本教案故意設 0.1 讓低光照仍在線 |
conn | — | 接線:wye(中性點接地)/ delta | 三相 PV 通常 wye |
🌅 PV 反送電示意
同一個 LoadBus,PV 出力大過負載時電壓反而上升,這是與直覺相反的現象。下表用 demo_3 場景模擬:
| 情境 | irradiance | PV 出力 | 淨負載(負載 − PV) | LoadBus pu(預期) |
|---|---|---|---|---|
| 夜間 | 0.0 | 0 kW | +200 kW(淨吸收) | ≈ 0.985 略低於 1.0 |
| 清晨/傍晚 | 0.3 | 9 kW | +191 kW | ≈ 0.986 |
| 正午一般 | 0.7 | 21 kW | +179 kW | ≈ 0.988 |
| 正午滿出力 | 1.0 | 30 kW | +170 kW | ≈ 0.989 因 PV 抵了一些 |
這個簡化案例 PV (30 kW) 還小於負載 (200 kW),所以沒「反送」。但若把 Pmpp 改大到 500(遠超過負載),就會看到反送讓 LoadBus 衝破 1.0 pu — 這是 5/15 Case A 天橋 PV 真實場景的縮影。
🔋 Storage 元件三狀態
kWrated vs kWhrated 不要搞混
| 參數 | 單位 | 類比 | Lab126 規格 |
|---|---|---|---|
kWrated | kW(功率) | 水管粗細(瞬間流速上限) | 30 kW |
kWhrated | kWh(能量) | 水桶大小(總共能裝多少) | 100 kWh |
30 kW × 滿放 1 hr = 30 kWh,所以 100 kWh 大約可以滿放 3.3 小時。實務上會留 %reserve=20(不放到 0),所以實際可用約 80 kWh ≈ 2.7 hr。
📊 Monitor vs EnergyMeter — 兩個不同任務的「儀表」
| 面向 | Monitor | EnergyMeter |
|---|---|---|
| 定位 | 「示波器」 | 「電費表」 |
| 記錄什麼 | 某元件的瞬間 V / I / P / Q 時序 | 從某元件下游累計能量、損耗、過/欠壓時數 |
| 範圍 | 單一元件 | 整個下游饋線 |
| snap mode 用 | 只記 1 筆,意義不大 | 看當前累計損耗 |
| daily mode 用(5/22 用) | 記 24 筆 → 可匯出 csv 畫曲線 | 看 24 hr 總能量、總損耗 |
| 指令 | New Monitor.M_PV element=PVSystem.PV1 mode=1 | New EnergyMeter.EM1 element=Line.L1 terminal=1 |
mode=1 是「記錄功率(P/Q)」;mode=0 是「記錄電壓電流(V/I)」。Monitor 結束後可:
Show Monitor M_PV ! 看時序 Export Monitor M_PV ! 匯出 csv 給 Excel 畫圖 Plot Monitor object=M_PV channels=[1 3]
🎯 作品 1:3-bus + PV + Storage
本次課堂作品為一個「明志校園微電網縮影」,3 個匯流排串接背景負載 + 天橋 PV 縮影 + Lab126 儲能縮影。
! 架構
[Sub 11.4kV] -- L1 0.5km -- [Bus_A] -- L2 0.3km -- [Bus_B] -- L3 0.2km -- [Bus_C]
│ │
PV 50kVA BESS 30kW
+負載 150kW +負載 100kW
4 個情境練習:
- baseline:三個 Bus pu 各是多少?
- 夜間:PV irradiance=0,Bus_B 怎麼變?
- 儲能充電:Storage state=charging,Bus_C 怎麼變?
- 線路加長:L3 length 0.2 → 1.0 km,末端電壓會發生什麼?
🧪 作品 1 任務分階段(每階段 10–15 min)
demo_5_pv_storage_3bus.dss 到自己的 D:\OpenDSS_Lab\02\Group_X\,先 Redirect 跑通,再依下表 4 個任務修改後重新 Solve。每個任務在 A4 紙上記錄結果。
🅰 任務 A — Baseline 跑通
不修改任何參數,直接 Redirect → 紀錄三個 Bus 與電源端的電壓 pu。
Set DataPath=D:\OpenDSS_Lab\02\Group_X Redirect demo_5_pv_storage_3bus.dss Show Voltages LN Nodes
填表:
| Bus | pu 值 |
|---|---|
| Sub | ______ |
| Bus_A | ______ |
| Bus_B(接 PV) | ______ |
| Bus_C(接 BESS) | ______ |
🅱 任務 B — 夜間(PV 不發電)
把 PV 的 irradiance 改成 0,重新 Solve。對比 Bus_B 變化。
Edit PVSystem.PV_Skybridge irradiance=0 Solve Show Voltages LN Nodes
觀察:Bus_B 從 __ pu 變到 __ pu。解釋:因為 PV 不發了,Bus_B 變回「純負載」狀態,電壓比白天 ____。
🅲 任務 C — 儲能切換為充電
把 BESS 的 state 改成 charging(吸收電網功率),重新 Solve。對比 Bus_C 變化。
Edit Storage.BESS_Lab126 state=charging Solve Show Voltages LN Nodes
觀察:Bus_C 從 __ pu 變到 __ pu。解釋:充電時儲能也是負載 → 電網要供應更多 → Bus_C 電壓比放電時 ____。
🅳 任務 D — 線路加長(壓降放大鏡)
把 Bus_B 到 Bus_C 的 Line.L3 從 0.2 km 改到 1.0 km(5 倍長),重新 Solve。觀察 Bus_C 大幅下降。
Edit Line.L3 length=1.0 Solve Show Voltages LN Nodes Show Losses
觀察:Bus_C 從 __ pu 變到 __ pu。解釋:線路加長 → R 與 X 都變大 → 同樣電流流過產生的壓降變大。
📝 一句話結論
各組在 A4 上寫一句話總結:
📤 上傳
- 修改後的
.dss檔,命名hw01_組X.dss,上傳到 Google Drive 組別資料夾 - A4 紙拍照上傳(或寫成 .md)
- 截止:5/8 課後 24 hr 內
📝 5/8 小測驗(8 題 · 即時回饋)
下課前 5 分鐘自我驗收。每題作答後立即看到正解與解析。
📚 完整教案
詳細逐段說明、教師端準備清單、課後分析動作:課程規劃/02_第2次_微電網元件建模_3hr教案.md
Case A · 天橋太陽光電系統建模
第 3 次|Case A 天橋太陽光電系統 + 同儕互評
從實際踏查 → 寫成 OpenDSS → 解出潮流 → 判讀過電壓,並引入同儕互評讓學習從個人作品轉為學習共同體。
時間表(3 節 × 50 min + 兩個 10 min 休息 = 150 min)
| 時段 | 內容 |
|---|---|
| 第 1 節 9:00–9:15 | 各組踏查回報(每組 2 min,含照片) |
| 9:15–9:50 | PV 中午過電壓深度解說 |
| 9:50–10:00 | 下課 10 分 |
| 第 2 節 10:00–10:30 | 業師客席(ITRI / 台電)30 min |
| 10:30–10:50 | 業師 Q&A + 案例 A 樣板講解 20 min |
| 10:50–11:00 | 下課 10 分(樣板檔派發 + 分組) |
| 第 3 節 11:00–11:25 | 分組實作:天橋 PV 樣板填空 + Solve |
| 11:25–11:40 | 同儕互評(組間交換 .dss、用互評表) |
| 11:40–11:48 | ARCS 中測 5 題(介入方法學中點) |
| 11:48–11:50 | 預告 Case B+C |
📋 5/8 預告:踏查作業(5/15 前每組完成)
- 必拍 3 張照片:全貌、面板近照、併網箱(逆變器銘牌)
- 記錄:面板總片數、單片功率(Wp)、推算總裝置容量(kWp)、逆變器廠牌型號 / 額定 kVA
- 5/15 上課時每組 2 min 口頭報告,並上傳資料到 Google Drive 組別資料夾
- 時間:30 分鐘以內
⚠️ PV 中午過電壓:為什麼 PV 不只是「白天有電就好」
很多人直覺以為 PV 太多會讓饋線「電不夠」,事實正好相反——中午負載低、PV 大量發電時,饋線末端會反送電導致電壓飆高,超過臺電 ±5% 規範。
傳統配電(無 PV) PV 併入後中午
[變電所 V=1.02] [變電所 V=1.02]
│ ↓ 壓降 │ ↑ 反送
▼ ▼
[饋線末端 V=0.95] [饋線末端 V=1.08 ⚠️]
正常 違反 ±5% 規範
- 傳統配電線:末端是最低壓點(線路 IR / IX 壓降累積)
- PV 大量發電時:反送電讓功率方向反轉,末端反而變最高壓點
- 明志校園:寒暑假最嚴重(學校沒人但 PV 還在發)
- 對策:PV 出力曲線控制(active power curtailment)[7]、smart inverter Volt-VAR 控制 [8]
🤝 同儕互評(5 個面向)
| 面向 | 滿分 |
|---|---|
| 建模合理性(kVA、線長與踏查相符) | 4 |
| 三步口訣有沒有漏 | 4 |
| 結果解讀(過電壓判讀正確) | 4 |
| 報告清晰 | 4 |
| 自選讚美 + 自選建議(質性 ≥ 30 字) | 4 |
📐 過電壓的物理直覺:壓降公式變號
把 5/8 講過的壓降公式拿出來,放慢動作看:
ΔV ≈ I × (R cosφ + X sinφ)
- 沒 PV 時:電流 I 從變電所流向負載 → ΔV 為正 → 末端電壓 = V源 − ΔV → 末端較低
- PV 過量時:電流 I 反向(從 PV 流向變電所)→ ΔV 變號(負)→ 末端電壓 = V源 − (−ΔV) = V源 + |ΔV| → 末端較高
- 數值感:若 PV 反送 100 A、R=0.6Ω、cos φ≈1(PV 通常 unity PF)→ ΔV ≈ 60 V → 11.4 kV 系統推升 60/6580 ≈ 0.9%;裝越多越誇張
📋 Case A 樣板填空(每組課堂上要寫)
把踏查得來的實際數字(板數、kVA、線長)填到樣板的 ??? 處:
! ============================================ ! Case A - 天橋太陽光電系統 (組 X 填空) ! 組別: ____ 組員: ____ 踏查日期: ____ ! ============================================ Clear ! 1. 校園 11.4 kV 進線 New Circuit.MingChiCaseA basekv=11.4 phases=3 bus1=Sub MVAsc3=2000 MVAsc1=1500 ! 2. 線路 (踏查的距離) New Linecode.LC_3ph nphases=3 r1=0.1 x1=0.2 c1=3.4 units=km New Line.L_Sky bus1=Sub bus2=BridgePV_Bus ~ phases=3 linecode=LC_3ph length=??? units=km ! 3. 校園其他負載 (平日中午 800 kW,週末 200 kW) New Load.CampusBldg bus1=Sub phases=3 kV=11.4 kW=??? pf=0.95 model=1 ! 4. 天橋 PV (從踏查算出的 kVA) New PVSystem.PV_Skybridge bus1=BridgePV_Bus phases=3 kV=11.4 ~ kVA=??? Pmpp=??? irradiance=1.0 ~ %cutin=0.1 %cutout=0.1 conn=wye ! 5. 三步口訣 Set voltagebases=[11.4] CalcVoltageBases Solve Show Voltages LN Nodes Show Powers kva Elements
🎯 作品 2:天橋 PV `.dss` 檔 + 過電壓分析報告
每組從踏查的真實數字出發,跑三個情境:
- 平日中午(校園 800 kW、irradiance=1.0)
- 週末中午(校園 200 kW、irradiance=1.0)
- 寒暑假 + 3 倍 PV(校園 200 kW、PV kVA × 3)
產出表格:每個情境下 BridgePV_Bus 的 pu 值、線路功率、是否違反 ±5%。
🧪 作品 2 任務分階段
🅰 任務 A — Baseline(平日中午)
填好上面樣板的 ???,使用平日中午參數:校園 800 kW、PV irradiance=1.0。Solve 後紀錄 BridgePV_Bus 的 pu 值與線路功率方向。
🅱 任務 B — 週末中午(校園負載降到 200 kW)
Edit Load.CampusBldg kW=200 Solve Show Voltages LN Nodes Show Powers kva Elements
觀察:BridgePV_Bus 從 __ pu 變到 __ pu。解釋:負載少了 → PV 反送量增加 → 末端電壓被推高更多。
🅲 任務 C — 寒暑假 + 3 倍 PV
Edit PVSystem.PV_Skybridge kVA=[原值×3] Pmpp=[原值×3] Solve Show Voltages LN Nodes
觀察:BridgePV_Bus 是否衝破 1.05 pu?若是 → 違反 ±5% 規範。對策:(1) PV 出力曲線控制(active power curtailment)[7];(2) Volt-VAR 控制;(3) 增加儲能吸收。
📊 產出表格(A4 紙寫好上傳)
| 情境 | BridgePV_Bus pu | 線路功率 kW(正向 / 反向) | 是否違反 ±5% |
|---|---|---|---|
| A 平日中午 | ____ | ____ | ____ |
| B 週末中午 | ____ | ____ | ____ |
| C 寒暑假 + 3× PV | ____ | ____ | ____ |
🎤 業師演講筆記模板(30 min)
本次邀請 ITRI 綠能所 / 台電綜研所同仁分享「台灣實際 11.4 kV 配電饋線的 PV hosting capacity 案例」。請每位同學在筆記本記下:
- 業師講的一個真實 PV 過電壓案例(地點、容量、解決方法)
- 業師提到的一個你沒聽過的工具或標準(IEEE 1547、IEC 61850 等)
- 業師回答 Q&A 時,你最有共鳴的一句話
- 對你未來求職的啟發(≥ 30 字)
課後請把筆記彙整給老師,整理成班級共同學習成果。
📝 5/15 小測驗(8 題 · 即時回饋)
下課前 5 分鐘自我驗收。
📚 完整教案
Case B 電機館小型微電網 + Case C Lab126 工商型儲能
第 4 次|時序模擬 + Lab126 實地走訪
從 snap mode(瞬間值)升級到 daily mode(24 小時時序)。同時實地走訪電機館 Lab126,看 PCS、BMS、目前已孤島運轉一個多月的實機。
時間表(3 節 × 50 min + 兩個 10 min 休息 = 150 min)
| 時段 | 內容 |
|---|---|
| 第 1 節 9:00–9:25 | Solve 模式地圖 + Loadshape / PVShape 語法 |
| 9:25–9:50 | 實地移動到 Lab126:PCS、BMS、孤島運轉現況(拍照) |
| 9:50–10:00 | 下課 10 分(從 Lab126 走回教室) |
| 第 2 節 10:00–10:50 | 分組實作 Case B(電機館 PV + PCS + 7 kW EV)24 hr |
| 10:50–11:00 | 下課 10 分(Case B 結果交流) |
| 第 3 節 11:00–11:40 | 分組實作 Case C(Lab126 BESS 削峰填谷)24 hr |
| 11:40–11:50 | 5/29 發表抽籤(A / B / C 深度版)+ 預告後測 |
🗺️ Solve 模式地圖
你要解的問題是…
│
┌─────┴─────┐
│ │
「某一瞬間」 「一段時間的變化」
│ │
▼ ▼
snap ┌──────────────┐
(預設) │ 時間尺度多長? │
└──────┬───────┘
│
┌───────────┼────────────┐
▼ ▼ ▼
幾秒~幾分 24 小時 一整年
│ │ │
▼ ▼ ▼
duty daily yearly
(衝擊負載) (校園 PV) (容量規劃)
| 案例 | 使用模式 | 原因 |
|---|---|---|
| Case A 天橋 PV | daily | PV 出力隨日照變化 |
| Case B 小型微電網 | daily | EV 充電 + PV + PCS 協調 |
| Case C Lab126 BESS | daily | 削峰填谷本質為 24 hr 策略 |
| 5/8 模擬器 | snap | 只看瞬間電壓對負載反應 |
daily mode 三件事
! ① 定義 24 hr 倍率曲線 New Loadshape.CampusDay npts=24 interval=1 ~ mult=(0.4 0.35 0.3 0.3 0.3 0.35 0.5 0.7 0.85 0.95 1.0 1.0 1.0 0.95 0.95 0.9 0.85 0.85 0.8 0.7 0.6 0.55 0.5 0.45) ! ② 把 Loadshape 掛到 Load Edit Load.CampusBldg daily=CampusDay ! ③ 切換到 daily 模式並 Solve Set Mode=Daily number=24 stepsize=1h Solve
🏛 Lab126 實地走訪 5 個觀察點
| 觀察點 | 看什麼 | 對應 OpenDSS 元件 |
|---|---|---|
| ① 屋頂 PV 接線箱 | DC → AC 物理位置 | PVSystem.PV_Roof |
| ② PCS(Power Conversion System) | 雙向逆變器,能充能放 | Storage.BESS1 |
| ③ BMS 顯示器 | SoC、SoH、單體電壓平衡 | %stored, %reserve |
| ④ 7 kW EV 充電樁 | Type 2、單相 220V 32A | Load + daily=EVChargeShape |
| ⑤ 智慧電錶 / 切換開關 | 併網 / 孤島切換點 | Circuit / 解列點 |
- 不要碰 PCS 機殼(高壓警告)
- 不要按任何按鈕
- 拍照可以,但不要對著 BMS 顯示器拍序號(資安)
📈 三條 24 hr 倍率曲線(校園 / PV / EV)
daily mode 的核心是「用倍率(mult)代替直接給 kW」。三條曲線分別代表校園用電、PV 出力、EV 充電的小時級節奏:
! 校園負載 24 hr (上班時段拉高、半夜偏低) New Loadshape.CampusDay npts=24 interval=1 ~ mult=(0.4 0.35 0.3 0.3 0.3 0.35 0.5 0.7 0.85 0.95 1.0 1.0 1.0 0.95 0.95 0.9 0.85 0.85 0.8 0.7 0.6 0.55 0.5 0.45) ! PV 24 hr (鐘形, 12:00 ± 2hr 為峰) New Loadshape.PVDay npts=24 interval=1 ~ mult=(0 0 0 0 0 0 0.05 0.2 0.5 0.75 0.9 1.0 1.0 0.9 0.75 0.5 0.2 0.05 0 0 0 0 0 0) ! EV 充電 24 hr (晚峰 18-22 點) New Loadshape.EVDay npts=24 interval=1 ~ mult=(0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0) ! 掛到對應元件 Edit Load.CampusBldg daily=CampusDay Edit PVSystem.PV_Roof daily=PVDay Edit Load.EV_Charger daily=EVDay ! 三步口訣 → daily mode → Solve Set voltagebases=[11.4 0.38] CalcVoltageBases Set Mode=Daily number=24 stepsize=1h Solve ! 看時序結果 Show Monitor M_PV Export Monitor M_PV ! 匯出 csv 給 Excel 畫圖
Load.CampusBldg kW=500、Loadshape mult=0.4 → 那一小時實際吃 200 kW(500 × 0.4)。改 kW 數字會等比放大整條曲線。
🔋 BESS 削峰填谷策略(Case C 核心)
儲能的價值在「離峰充、尖峰放」。用 mult 在不同時段切換 charging/discharging 行為(負值 = 充電、正值 = 放電、0 = 待命):
| 時段 | 策略 | mult 值 | 原因 |
|---|---|---|---|
| 00–06 | 離峰充電 | −1(充滿) | 夜間電價最低、PV 沒貢獻 |
| 06–10 | 待命 | 0 | 電價中等,等中午 PV |
| 10–14 | PV 充電 | −1 | 中午 PV 過量 → 吸收避免反送 |
| 14–18 | 待命 | 0 | 過渡時段 |
| 18–22 | 尖峰放電 | +1 | 晚峰電價最高 + 學校仍有用電 |
| 22–24 | 待命 | 0 | 等下一輪離峰開始 |
New Loadshape.BESSStrategy npts=24 interval=1 ~ mult=(-1 -1 -1 -1 -1 -1 0 0 0 0 -1 -1 -1 -1 0 0 0 0 1 1 1 1 0 0) Edit Storage.BESS_PeakShave daily=BESSStrategy
💰 經濟性試算(24 hr 一次循環)
假設台灣三段式時間電價:
| 時段 | 電價(NTD/kWh) |
|---|---|
| 離峰(00–07、22–24) | 1.50 |
| 半尖(07–10、12–18) | 3.00 |
| 尖峰(10–12、18–22) | 4.50 |
BESS 30 kW × 4 hr 充滿(120 kWh)+ 4 hr 放完(120 kWh)一個循環的電費差:
充電成本(離峰 1.5 / kWh × 4 hr × 30 kW × 95% 充電效率) = 1.5 × 120 × 0.95 = 171 元 放電收益(尖峰 4.5 / kWh × 4 hr × 30 kW × 95% 放電效率) = 4.5 × 120 × 0.95 = 513 元 每日淨收益 = 513 − 171 = 342 元 每月(30 天)≈ 10,260 元 每年 ≈ 124,830 元
🎯 作品 3、4:Case B + Case C 24 hr 時序
- 作品 3 Case B:屋頂 PV + Lab126 PCS + 7 kW EV 充電樁,找出過電壓時段(pu > 1.05 的小時數)
- 作品 4 Case C:BESS 削峰填谷 24 hr SoC 軌跡 + 經濟性試算
🧪 作品 3、4 任務分階段
🅰 任務 A — Case B baseline(電機館 24 hr)
使用 案例B_電機館小型微電網_樣板.dss,跑 24 hr daily mode → 匯出 Monitor csv → 用 Excel 畫三條時序:屋頂 PV / PCS / EV。找出 LVBUS 電壓最高與最低的小時。
🅱 任務 B — Case B 過電壓敏感性
把屋頂 PV 容量調 ×2、×3、×5,分別跑 daily mode,記錄「LVBUS 違規(pu > 1.05)的小時數」。找出 hosting capacity 上限。
🅲 任務 C — Case C BESS baseline
使用 案例C_Lab126儲能_樣板.dss,套上方 BESSStrategy 倍率,跑 24 hr → 匯出 SoC 軌跡 + 電網功率。畫一張圖:尖峰時段電網從 Lab126 看出去的功率是否被削平。
🅳 任務 D — Case C 經濟性敏感性
把 BESS kWhrated 從 100 改成 60、200,分別跑經濟性試算。找出最佳容量點(最快回收期)。
📝 5/22 小測驗(8 題 · 即時回饋)
📚 完整教案
整合比較 · 口頭發表 · 後測
第 5 次|成果發表 + 後測 + 反思寫作
學期最後一次課。各組以 IMRaD(Introduction-Method-Result-Discussion)迷你版口頭發表抽籤的案例深度版,緊接後測 + 反思寫作 + 訪談自願招募。
時間表(3 節 × 50 min + 兩個 10 min 休息 = 150 min)
| 時段 | 內容 |
|---|---|
| 第 1 節 9:00–9:10 | 發表注意事項 + 教師示範 rubric 評分 |
| 9:10–9:50 | 第 1–3 組口頭發表(10 min 報告 + 3 min Q&A × 3 組 = 39 min) |
| 9:50–10:00 | 下課 10 分 |
| 第 2 節 10:00–10:50 | 第 4–6 組口頭發表(13 min × 3 = 39 min)+ 教師總結 11 min |
| 10:50–11:00 | 下課 10 分(rubric 兩位老師對分 + 後測準備) |
| 第 3 節 11:00–11:15 | 頒發最佳作品獎 + 全班合照 |
| 11:15–11:40 | 後測 + ARCS + SDT + 反思寫作(最終量化 + 質性核心資料) |
| 11:40–11:50 | 結語 + 訪談自願招募 + 7 月延遲後測預告 |
🎤 口頭發表規格
抽籤主題(5/22 課末抽)
- A 深度版(天橋 PV):×3 容量擴展、季節性比較(夏 / 冬)
- B 深度版(電機館小型微電網):孤島運轉模擬、緊急情境
- C 深度版(Lab126 BESS):經濟性 + 容量最佳化(30 kWh 換成 60 kWh 比較)
📝 後測與反思寫作
後測題目與前測平行(B 區 18 題 + C 區技能 + D 區 ARCS + E 區 SDT + F 區永續),同 6 碼匿名編號。後測後接 3 題結構化反思寫作:
- 從「學了什麼」到「最讓你卡住的地方」——請具體寫一個模擬錯誤與解決歷程(≥ 100 字)
- 最讓我有成就感的瞬間(≥ 50 字)
- 給下一屆學弟妹的一個最重要建議(≥ 50 字)
👥 半結構訪談(自願 4–6 人)
5/29 後若你願意分享更深入的學習經驗,可報名一次 30 min 訪談(錄音轉逐字稿)。提供小額感謝。訪談大綱:
- 你對 OpenDSS 的第一印象 vs 現在的印象?
- 哪一次課改變了你對微電網的理解?
- 以後會在求職面試或其他課程用到這些嗎?
- 真實場域(天橋 PV、Lab126)有比教科書範例幫助嗎?為什麼?
- 同儕互評時最有收穫或最挫折的時刻?
📊 發表評分 Rubric(5 面向 × 4 等級 = 20 分)
教師 + 同儕雙盲評分。每面向 4 等級,每等級 1 分。
| 面向 | 4 分(優異) | 3 分(達標) | 2 分(部分達標) | 1 分(待加強) |
|---|---|---|---|---|
| 建模正確性 | 三步口訣完整、Bus 名稱清楚、結果合理 | 程式可跑、結果大致合理 | 程式可跑但 pu 略有可疑 | 程式報錯或結果離譜 |
| 場域真實性 | 使用踏查實際數字、有現場照片佐證 | 使用真實規格但未踏查 | 使用合理但虛構的數字 | 數字憑空想像 |
| 結果分析 | 判讀過/欠壓、提出對策、有量化結論 | 判讀電壓但未提對策 | 只貼數字無解讀 | 未呈現結果 |
| 口頭表達 | 清楚、自信、互動好、12 min 控時準 | 結構完整、控時微差 | 結構不全或超時 > 2 min | 緊張無法完整表達 |
| Q&A 應對 | 能回答 + 自承不會的部分 + 後續查證 | 能回答多數問題 | 勉強回答 | 無法應對 |
📝 IMRaD 迷你版範本(10 min 投影片建議結構)
把學術論文標準結構濃縮成 5 個 1 分鐘片段:
| 段落 | 時間 | 內容 | 關鍵句型 |
|---|---|---|---|
| Introduction | 1 min | 問題背景 + 你回答什麼 RQ | 「明志校園的 X 案例,問:若 ____ 會怎樣?」 |
| Method | 2 min | OpenDSS 建模、參數來源、情境設計 | 「我們用踏查的 ____ kVA、線長 ____ km 寫成 .dss,跑 ____ 個情境」 |
| Results | 4 min | 主圖(電壓 / 功率 / SoC 軌跡) + 主表 | 「結果顯示 ____,最關鍵的數字是 ____」 |
| aDiscussion | 2 min | 對應實務 / 規範、侷限、建議 | 「相對 ±5% 規範,____;本研究侷限是 ____;未來可 ____」 |
| Q&A | 2 min | 互動 | 「謝謝,____ 是好問題,____」 |
💭 反思寫作引導
後測後 10 分鐘,三題結構化反思——這是讓你回顧自己一個月學習旅程的機會。每題給一個好答案範例讓你掌握深度:
好答案範例:「我第一次跑 daily mode 時跑出 NaN,查了半天發現 Loadshape mult 寫成負值(−0.5),OpenDSS 會把它當反向功率而不收斂。改成正值後就 OK 了。學到:mult 是『倍率』不是『方向』,方向要靠 state 屬性指定。」
好答案範例:「Lab126 實地走訪那次,看到我電腦裡的 BESS_Lab126 元件,跟眼前的 PCS 機櫃對應起來——OpenDSS 不再只是抽象程式,而是『現實的數位分身』。」
好答案範例:「三步口訣 Set voltagebases → CalcVoltageBases → Solve 一定要背熟,每個 .dss 結尾都要這三行。錯了 OpenDSS 不會報錯但 pu 會錯——不要花一小時 debug 才發現。」
🏆 課程結束後的續航
- 表現優異的學生有機會參與後續學術成果擴散(細節將在 5/29 結語時公布)
- 三件作品(A / B / C)組合成「校園微電網數位分身」,可作為個人作品集
- 本互動教材永久保留於 GitHub Pages,可作為求職時的作品集連結
📝 期末綜合小測驗(8 題 · 涵蓋 5 次內容)
跨 5 次課的整合題,作為發表前自我檢核:
📚 完整教案
5/22 後依各組進度補定稿,預定路徑:課程規劃/05_第5次_整合發表後測_3hr教案.md