OpenDSS 實作單元 · 5 × 3 hr v3.1 · 五次教學介入整合 🎯 大四 · 工業配電實務

OpenDSS 微電網實作單元(教學實踐研究計畫)

明志科大電機系「工業配電實務」課程內由教育部 114 年度教學實踐研究計畫安排的 5 次教學介入(共 15 hr)。從零安裝 OpenDSS、到模擬校園三項真實 DER 資源(天橋 PV / 電機館小型微電網 / Lab126 工商型儲能),最後產出三案例比較與口頭發表。

📌 本實作單元總體目標(布魯姆分類法)
  • 記憶 / 理解:說出 OpenDSS 來源、元件分類;解釋微電網與分散式能源原理
  • 應用:撰寫 PVSystem / Storage / Loadshape 等 OpenDSS 程式並求解潮流
  • 分析:判讀 24 hr 時序模擬結果、識別過壓 / 欠壓 / 過載等違規時段
  • 評估 / 創造:以校園真實場域產出三件作品 + 比較報告 + 口頭發表

明志科技大學 · 電機工程系 · 工業配電 | 授課教師:羅慶權 | 教育部 114 年度教學實踐研究計畫成果 [14]

📅 OpenDSS 實作單元地圖(5 次教學介入)

「工業配電實務」是一學期 18 週的正式課程。本單元為其中由教育部 114 年度教學實踐研究計畫特別安排、連續 5 次(共 15 小時)的 OpenDSS 微電網實作教學介入,把三個校園真實可控的分散式能源資源從現場搬進模擬器,並透過混合研究設計(前後測 + 作品 rubric + 同儕互評 + 反思寫作)完整紀錄學習歷程 [14]。

🗓️ 為什麼是這 5 次? 本學期前 13 次課已完成電力系統基礎;後 5 次(4/24、5/8、5/15、5/22、5/29)使用 OpenDSS 做完整微電網實作。5/1 為勞動節休假停課,因此 5 次集中於 4 月底到 5 月底連續 5 個週五。
第 1 次 📅 2026-04-24(五)· 已完成

OpenDSS 介紹與安裝

0 · 學習目標與這堂課的位置

本「工業配電實務」課程前 13 次已完成電力系統基礎;接下來這 5 次(4/24、5/8、5/15、5/22、5/29)是教育部教學實踐研究計畫安排的 OpenDSS 實作教學介入。我們要一起做一件事:

🎯 本實作單元終點 把校內三個真實可控的 DER 資源搬進電腦裡——天橋太陽光電系統、電機館屋頂 PV + Lab126 PCS + 7 kW EV 充電樁小型微電網、電機館 Lab126 工商型儲能系統——用業界標準工具 OpenDSS 做完整的微電網分析,並在第 5 次課做口頭發表。

本實作單元路線圖

次日期主題你會產出什麼
12026-04-24OpenDSS 介紹與安裝(已完成)裝好 OpenDSS、做完前測
22026-05-08補課第一個電路 + 元件建模作品 1:3-bus + PV + Storage
32026-05-15Case A:天橋太陽光電系統建模作品 2:天橋 PV `.dss` 檔 + 過電壓分析
42026-05-22Case B+C:電機館小型微電網 + Lab126 儲能作品 3、4:24 hr 時序模擬
52026-05-29整合比較與口頭發表 + 後測三案例比較報告 + 發表影片

這份網頁就是你的課本。你可以:

  • 課堂上邊聽邊做(建議開兩個視窗:OpenDSS + 這頁)
  • 本單元 5 次課內容都已整合在這一頁,從側邊欄切換即可
  • 課後重播滑桿練習,複習重點
  • 手機也能看(響應式設計)
⏱️ 課程時間結構(3 節 × 50 min + 兩個 10 min 下課 = 150 min / 2.5 hr)
  • 第 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]。

① 傳統電網(單向) 大電廠 H 住戶 ② 現代微電網(雙向、多源) 電廠 匯流排 PV 風 儲能 EV 負載 ↔ 雙向功率流 ↔ 反送電可能 ↔ 電壓/頻率波動 ↔ 保護複雜化

1.2 臺灣的 2050 淨零路徑

國家發展委員會公布的「臺灣 2050 淨零排放路徑」[2]設定了明確目標:

🌞 再生能源
2050 年占比 60–70%(目前 < 10%)
🔋 儲能系統
2030 年達 5.5 GW 以上
🔌 智慧電網
2050 年先進讀表基礎建設(AMI, Advanced Metering Infrastructure)全面普及、需求面管理(DR)成熟
🏫 校園示範
教育部推動「校園微電網示範場域」計畫

1.3 微電網是什麼?

美國能源部(DOE)定義:微電網(Microgrid)是一個「具有清楚電氣邊界、在併網或孤島下都能運作、內含本地發電與負載、可做為單一可控實體」的小型電力系統 [3]。

換成白話:

  • 有明確範圍(一棟大樓、一個社區、一間工廠、一個校園)
  • 自己有發電(PV、風機、柴油機)
  • 有儲能(鋰電池、飛輪)
  • 有負載(建築用電、EV 充電樁)
  • 可以併入臺電主網,也可以獨立運轉(孤島模式)

1.4 明志科大的微電網在哪裡?

本校其實就是一個活生生的微電網場域。本實作單元 5 次課我們會分析三個實際可控制的分散式資源——全部都位於或連接到電機館(Lab126 為微電網實驗室核心):

🌉 資源 A · 天橋太陽光電系統
跨越校園主幹道的太陽能光電系統,併入校內饋線供日間用電
🏛 資源 B · 電機館小型微電網
電機館屋頂 PV + 安裝在 Lab126 的功率調節器(PCS)+ 一座 7 kW 電動車充電樁,三者共構一個小型微電網
🔋 資源 C · Lab126 工商型儲能
位於電機館 Lab126 的工商型電池儲能系統(BESS, Battery Energy Storage System),含 PCS 與電池管理系統(BMS),可做削峰填谷與孤島支援
🤔 為什麼要自己模擬?不是有人算過了嗎? 因為只有你最了解自己的校園。套用教科書的 IEEE 13-bus 範例永遠是別人的案例;用你每天走過的天橋、你做專題的 Lab126 建的模型,才真正是「你的」工程。這也是本課程的設計核心:從真實場域學配電。

2 · 認識 OpenDSS

2.1 一句話定義

OpenDSS(Open Distribution System Simulator)是美國電力研究院(EPRI, Electric Power Research Institute)開發的開源配電系統模擬工具,專為穩態與準穩態(quasi-static)分析設計,是目前國際上最廣泛使用的配電級模擬器之一 [4][5]。

2.2 OpenDSS 發展時間軸

1997 — Roger Dugan 於 Electrotek Concepts 開始開發,最初為客戶內部工具
2004 — EPRI 收購其核心,納入 Green Circuits 計畫,擴充 DER 分析能力
2008 — EPRI 以 BSD 開源授權釋出 OpenDSS [4],發佈於 SourceForge
2011 — Dugan & McDermott 於 IEEE PES General Meeting 發表奠基論文 [5]
2015+ — EPRI 的 Davis Montenegro 等人 [6] 推出 OpenDSSDirect 系列,提供跨平台 DLL 介面
2018+ — DSS-Extensions 社群誕生,推出 Python / Julia / C++ 綁定,支援 macOS / Linux
2024– — 全球廣泛使用,含美國 PG&E、Duke、NREL、PNNL、歐洲配電業者(DSO, Distribution System Operator)、臺電綜合研究所

2.3 與其他電力系統軟體的比較

軟體定位授權適用層級臺灣學界可用性
OpenDSS配電穩態、時序、諧波🟢 BSD 開源中低壓完全免費
ETAP綜合電力系統分析🔴 商用輸 / 配 / 工業校園授權昂貴
DIgSILENT PowerFactory輸配電 + 暫態🔴 商用輸 / 配少數實驗室有
PSS®E輸電潮流、動態🔴 商用輸電臺電在用
PSCAD / EMTDC電磁暫態🔴 商用µs 等級部分學校有
MATPOWER潮流 / 最佳潮流🟢 開源輸電為主需 MATLAB
GridLAB-D配電 + agent-based🟢 BSD 開源中低壓冷門
pandapowerPython 潮流🟢 BSD 開源輸 / 配新興,但功能較弱

2.4 OpenDSS 架構

OpenDSS 不只是一個 GUI 軟體,它其實是一整套可呼叫的引擎:

DSS Engine (C++ 核心,Solver + Parser) OpenDSS.exe Windows GUI COM Interface Excel / MATLAB / VB OpenDSSDirect 跨平台 DLL Python (.py 腳本) Julia 大型模擬 MATLAB / Simulink GIS 地理 / SCADA 監控 Machine Learning

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)
💡 一句話記住 OpenDSS 「配電網的穩態與準穩態專家」— 每一秒、每一分鐘、每一小時電壓電流長什麼樣,OpenDSS 是首選工具。

2.5 時間尺度定位:OpenDSS 能做什麼、不能做什麼

很多同學會疑惑:「那如果我想看雷擊打到變電所的那幾微秒電壓波形呢?」答案是——OpenDSS 不做這件事。電力系統現象從微秒到年的跨度,不同軟體各守一段:

μs ms 秒 分 時 日 年 雷擊突波 斷路器動作 頻率擾動 負載變化 PV 出力 儲能排程 容量規劃 PSCAD / EMTP PSS/E(輸電暫態) 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。

⚠️ 教室電腦網路問題 明志工學大樓電腦教室若無法連上 SourceForge(防火牆限制),老師會把安裝檔放在 USB 隨身碟上,請助教協助。也可事先在家下載好帶來。

3.2 Windows 安裝步驟

  1. 在安裝檔按滑鼠右鍵 → 「以系統管理員身分執行」
  2. 一路 Next,安裝路徑預設為 C:\Program Files\OpenDSS
  3. 若 Windows Defender 彈警告,選「仍要執行」(OpenDSS 是開源軟體但無微軟數位簽章)
  4. 安裝完成後,桌面與開始選單會出現 OpenDSS 捷徑
📸 [建議放上 OpenDSS 主視窗截圖]
雙擊捷徑後會看到的畫面:上方選單列、左側 Main 編輯區、下方 Results 輸出區
圖 3-1 OpenDSS 主視窗介面(老師可於課堂截圖後置換此圖)

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,你會看到三個區域:

上方 · 選單列
File / Edit / Do Command / Compile / Solve / Show / Plot / Help
左側 · Main 視窗
寫 .dss 指令、貼程式碼的地方。可多分頁。
下方 · Results 視窗
顯示執行結果、錯誤訊息、Show 指令輸出

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] 的經典配電系統教科書一致):

① Circuit(電路容器)
整張圖的最外殼。必須是第一個 New。會自動產生一個 Vsource 作為起點。
② Bus(匯流排 / 節點)
不用自己宣告。只要在元件中提到,OpenDSS 就會自動建立。
③ PDElement(電力傳遞元件)
Line、Transformer、Reactor、Capacitor。有兩端,連接兩個 bus。
④ PCElement(電力產消元件)
Load、Generator、PVSystem、Storage、Vsource。只有一端,接一個 bus。

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(標么值)— 本課最重要觀念

為什麼要 pu? 配電網常有多個電壓層級(11.4 kV、380 V、220 V)。數值懸殊不好比較,把每一層除以該層的基準值(base),全部變成 1.0 左右,就能一眼看出哪裡電壓偏低、哪裡偏高。依臺灣《再生能源發電設備併聯技術要點》[9],配電系統電壓偏移應維持在 ±5% 內;相關國際標準另有 IEEE 1547-2018 [8]。

例題(明志校園實例)

假設電機館變壓器低壓側量到電壓 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 的 kV0.11 kV
⚠️ 經典陷阱 三相系統把 kV 填成 220/√3=127 就錯了。三相 phases=3,kV 必須填 線電壓(例如 0.38 代表三相 380 V 系統)。

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逆變器式行為
8ZIP 模型:%Z + %I + %P 可調比例CVR 研究、最彈性的電壓保存分析

本課所有範例都用 model=1,後續若做電壓保存(CVR, Conservation Voltage Reduction)研究,建議改用 model=8 的 ZIP 模型 [10]。

5 · 第一個電路:兩匯流排系統

先把一個最簡單的配電系統跑起來:電源 → 線路 → 負載。

~ Vsource 11.4 kV 三相 sourcebus Line.L1 (2 km, r1=0.3 Ω/km, x1=0.4 Ω/km) loadbus Load 1000 kW, pf=0.9

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:顯示系統總功率 + 損耗
🎯 三步口訣:Set voltagebases → CalcVoltageBases → Solve

每一份 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 預期輸出(四份報表)

💡 Solve 之後 OpenDSS 會用記事本另開「四個視窗」

分別對應 .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?」

💡 關鍵觀念:電流是「結果」,不是「輸入」 電路 4 個基本量:V(電壓)/ I(電流)/ Z(阻抗)/ S(功率)。 OpenDSS 設計上要求你給「V 源 + Z + S」,I 由它算——這正好對應真實電網:用戶只說「我要 1 MW」,沒人說「給我 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 完全反映這個現實。

🧪 反過來驗證 OpenDSS 算出 56.72 A,反推三相功率:
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 重現這一層。

~ 11.4 kV hvbus Line.Feeder 1 km primbus T1 Δ-Y, 500 kVA 11.4 / 0.38 kV lvbus Load 300 kW PV 100 kW

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=-1
  • PVSystem:簡化版先用 Pmpp + irradiance=1.0(下次課會加 PVShape 日照曲線)
  • voltagebases:多電壓層要全部列出(本例:11.4、0.38 兩層)

6.2 預期輸出(實機驗證)

💡 比第一個電路更精彩 這次有三層電壓(11.4 kV 源頭、11.4 kV 饋線末端、0.38 kV 低壓側)+ 變壓器 + PV 反送,所以 4 份報表的訊息量大很多。

① 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:你今天要記住的兩件事

⚠️ PF 矛盾的真相 Load 端 PF=0.92(不錯),但從 Source 看 PF 只有 0.83(很糟)!為什麼?因為 PV 把好做的「實功」搶走了,留給電網的是「無功」(var)。裝越多 PV,從電網看 PF 越差,這是配電工程師的真實困擾——所以才需要 smart inverter Volt-VAR 控制 [8]。
🔋 想看反送電過電壓? 把 Pmpp=100 改成 Pmpp=400(超過負載 300 kW)→ Solve → 你會看到 LVBUS pu 飆到 > 1.0,這就是第 3 次課(5/15)天橋 PV 案例要深入探討的過電壓反送問題 [7][15]。

6.3 三層電壓的物理意義(速記)

位置pu 值掉了多少原因
HVBUS(源頭)0.999910.009%Vsource 內阻(MVAsc3 設定)
PRIMBUS(饋線末端)0.999290.062%1 km 高壓饋線 IR/IX 壓降
LVBUS(低壓側)0.979991.93%變壓器 5.75% 漏抗 × 60% 負載率 ≈ 1.93%

每跨過一個元件就掉一點點,最後仍在 ±5% 內。這就是「電壓沿線下降」的工程直覺——若再加負載或拉長線,遲早會掉破 0.95。

6.4 從這份輸出可以讀出 5 件事(教學重點)

把 § 6.2 報表完整看完,你會抓到 5 個工程直覺,未來看任何配電潮流結果都用得上:

① 能量守恆(每一元件兩端 P+Q 必須對得上)

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 (損耗) ✓

② 損耗 92% 在變壓器,不在線

總 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 vs 源頭 0.83(為什麼變差?)

負載端 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 也供無功,而非只供實功。

④ Δ-Y 變壓器引入 30° 相位偏移

看電壓報表:HVBUS phase 1 角度 0°;LVBUS phase 1 角度 −31.2°(不是 0°)。
30° 是 Δ-Y 標準相位偏移(IEC vector group Dyn1),剩 1.2° 是負載引起的滯後。
意義:兩台 Δ-Y 變壓器並聯時必須 vector group 相同,否則會循環電流。這是電力工程師最常踩的雷區。

⑤ PV 注入 = 負號 = 「源」(不是負載)

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=400LVBUS 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 不會升那麼多
關 PVEdit PVSystem.Rooftop irradiance=0Source 必須補回那 100 kW,PF 回到 0.92(與 Load 同)

7 · 互動模擬器 🎛️

不安裝 OpenDSS 也能玩!下方這個模擬器在你的瀏覽器內跑真實的迭代法潮流計算(相當於 OpenDSS 的 Solve,誤差 < 0.01%)。

試著拖動滑桿,觀察當負載變大或線路變長時,負載端電壓如何變化:

⚙️ 參數調整

1000
0.90
2.0
11.4

📊 計算結果 (Solve)

負載端電壓—
負載端 pu—
線路電流—
線路壓降 %—
線路損耗 kW—
狀態—
~ 11.4 kV — kV 1.000 pu Load

7.1 電壓剖面圖(Voltage Profile)

沿著饋線從 source 走到末端,電壓如何一路下滑?這張圖即時顯示:

1.05 pu 1.00 pu 0.95 pu 0.90 pu 臺電 ±5% 上限 臺電 ±5% 下限 source loadbus 饋線距離
💭 課堂思考題
  • 為什麼負載變大,電壓反而變小?
  • 功率因數從 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 現場操作
daily24 小時PV 日曲線、EV 充電時段、儲能充放電策略第 3、4 次課三個校園案例
duty秒~分衝擊型負載(電梯、電焊機)造成的瞬間波動選讀
yearly一整年(8760 hr)裝置容量規劃、hosting capacity 分析期末延伸
🎯 第 3、4 次課會用到的 daily 指令長這樣
! 搭配 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 節的程式碼跑起來,然後完成下列修改:

  1. 挑戰 A — 加重負載:把負載從 1000 kW 改成 2500 kW。
    → loadbus 電壓跌到多少 pu?有超過臺電規定 ±5% 嗎?
  2. 挑戰 B — 改善功率因數:在 loadbus 加一個電容器補償無效功率:
    New Capacitor.C1 bus1=loadbus kV=11.4 kvar=500
    → 電壓有改善嗎?線路電流變化多少?
  3. 挑戰 C — 拉長線路:把 Line.L1 的 length 改成 8 km。
    → pu 跌破 0.95 了嗎?這就是為什麼偏遠地區需要升壓站。
  4. 挑戰 D — 加一個變壓器:參考第 6 節,在 loadbus 之後接一個 11.4/0.38 kV 變壓器與 0.38 kV 負載。
    → 多了變壓器漏抗,電壓剖面如何變化?
  5. 挑戰 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 面板近照 + 併網配電箱特寫各一張
資源 A · 天橋太陽光電系統
明志校內跨路的太陽光電系統,併入校內 11.4 kV 饋線。建議估測:PV 總容量(kWp)、併網逆變器規格、線路長度與線徑、日典型出力曲線。
📸 [請放上電機館屋頂 PV + Lab126 PCS + 7 kW 充電樁]
建議:屋頂 PV 空拍 + Lab126 PCS 機櫃 + EV 充電樁使用中的照片
資源 B · 電機館小型微電網
由三個元件組成:電機館屋頂 PV 陣列 + 安裝於 Lab126 的功率調節器(PCS)+ 一座 7 kW 電動車充電樁。三者共構完整的「發電 + 轉換 + 負載」迷你微電網。建議記錄:PV 陣列數量與容量、PCS 額定功率與效率曲線、充電樁使用時段。
📸 [請放上 Lab126 工商型儲能系統]
建議:電池櫃外觀、PCS 功率轉換器、BMS 控制介面、SOC 歷史曲線
資源 C · Lab126 工商型儲能系統(BESS)
位於電機館 Lab126 的工商級電池儲能系統。建議記錄:額定容量(kWh)/ 額定功率(kW)、C-rate、PCS 廠牌、BMS 通訊協定、典型充放電策略(削峰填谷 / 尖離峰套利 / 緊急支援)。
📐 [校園微電網整體單線圖(SLD, Single Line Diagram)]
第 5 次課口頭發表時用的總覽圖
整合 · 校園微電網單線圖(SLD)
三個資源都接入校內 11.4 kV 饋線;電機館內 Lab126 同時容納資源 B 的 PCS 與資源 C 的儲能,構成本校微電網的「控制中樞」。整個系統併入臺電 22.8 kV 主網。第 5 次課會討論整合後的功率平衡與三資源協同調度。

12.1 特別關注:天橋 PV 的「中午過電壓」現象

為什麼資源 A 值得整整一次課來分析?因為它是台灣配電業最頭痛問題的縮影:PV 併網造成饋線末端中午過電壓(Katiraei & Aguero, IEEE Power & Energy Magazine, 2011)。

① 無 PV(傳統配電):末端是最低壓點 變電所 1.02 pu 潮流方向:壓降累積 末端負載 0.95 pu(最低) ✓ 正常 ② 中午 PV 大量發電:反送把末端推成最高壓點 變電所 1.02 pu 反送電方向:PV > 負載 PV 末端 PV 1.08 pu(違規) ✗ 超過 +5%
💡 為什麼是中午而不是晚上?
  • ☀️ 日照最強的 11:00–13:00,天橋 PV 出力 ≈ 裝置容量的 70–90%
  • 🏫 校園白天負載相對穩定,週末 / 寒暑假最嚴重(負載低、PV 照樣發電)
  • ⚡ 當 PV 發電 > 本地負載,多餘的電反送回饋線,沿線各點電壓都被推高
  • 📐 饋線越長、PV 容量越大、負載越少,過電壓越嚴重

第 3 次課要用 OpenDSS 回答的題目:「如果明志科大 2030 再把天橋 PV 擴增 3 倍,末端電壓會不會違反臺電 ±5% 規範?」

📝 下次課前作業 每位同學選一個資源(A / B / C)作為期末主題,先在腦中規劃一張 3 匯流排手繪單線圖,下週上課帶來討論。不用精美,重點是你對該資源的電氣連接觀察。

13 · 外部資源(想學更多)

13.1 官方與開源社群

資源連結說明
OpenDSS 官方下載SourceForgeWindows 安裝檔、舊版存檔
OpenDSS WikiSourceForge Wiki官方知識庫、範例檔
官方討論區SourceForge ForumEPRI 工程師會回答問題
EPRIepri.com研究報告、白皮書
DSS-Extensions (GitHub)github.com/dss-extensions跨平台 Python / Julia / C++ 綁定
OpenDSSDirect.pyGitHubPython 介面,macOS/Linux 也能跑
PyPI 套件pypi.orgpip 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 · 參考文獻

  1. International Energy Agency, Renewables 2023: Analysis and forecast to 2028. Paris: IEA, 2024. [Online]. Available: https://www.iea.org/reports/renewables-2023
  2. 國家發展委員會,《臺灣 2050 淨零排放路徑及策略總說明》. 臺北:國發會,2022.
  3. U.S. Department of Energy, "DOE Microgrid Workshop Report," Office of Electricity Delivery and Energy Reliability, Aug. 2011.
  4. R. C. Dugan, Reference Guide: The Open Distribution System Simulator (OpenDSS), Electric Power Research Institute (EPRI), Palo Alto, CA, 2020.
  5. 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.
  6. 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.
  7. 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.
  8. IEEE Standard for Interconnection and Interoperability of Distributed Energy Resources with Associated Electric Power Systems Interfaces, IEEE Std 1547-2018, Apr. 2018.
  9. 臺灣電力公司,《再生能源發電設備併聯技術要點》,2021 年修訂版.
  10. W. H. Kersting, Distribution System Modeling and Analysis, 4th ed. Boca Raton, FL: CRC Press, 2017.
  11. T. A. Short, Electric Power Distribution Handbook, 2nd ed. Boca Raton, FL: CRC Press, 2014.
  12. J. A. Martínez-Velasco, Transient Analysis of Power Systems: Solution Techniques, Tools and Applications. Hoboken, NJ: Wiley, 2015.
  13. 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.
  14. 羅慶權,〈以 OpenDSS 建構校園微電網數位分身之教學實踐〉,教育部教學實踐研究計畫 114 年度計畫書,2025.
  15. 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.
📖 引用本教材(建議格式) 羅慶權,《工業配電實務課程:OpenDSS 實作單元與分散式能源模擬(5 次教學介入單元教材)》,明志科技大學 教育部 114 年度教學實踐研究計畫,2026. [Online]. Available: https://luochingchuan.com/114-MOE-TPRP/

15 · 第 1 次到此結束 · 接著看

第 1 次課的內容就到這。下面接著是 5/8、5/15、5/22、5/29 四次課的教材。建議:

📅 第 2 次|5/8 元件建模 🎛 互動模擬器 ⬆ 課程地圖

第 2 次|元件建模(PVSystem / Storage / Monitor / EnergyMeter)

⚡ 為什麼今天叫「補課 + 元件建模」? 4/24 只完成了 OpenDSS 下載安裝,沒有實際操作;今天前 35 分鐘要先把第一個電路(§ 5)跑起來,再進入新元件。缺席 4/24 的 7 位同學,請於 9:00 前到教室 10 分鐘做前測補測。

時間表(3 節 × 50 min + 兩個 10 min 休息 = 150 min)

時段內容
第 1 節 9:00–9:10開場 + 同意書(雙層 + 錄音)22 份發放
9:10–9:30補課:第一個電路(demo_1 逐行解說 + 學生跟打)
9:30–9:50demo_2 修改負載 + 三步口訣強化
9:50–10:00下課 10 分(同意書收齊 + 補測進度 check)
第 2 節 10:00–10:25PVSystem 元件 + demo_3 示範(反送電示意)
10:25–10:50Storage 三狀態 + 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 兩大新元件

☀️ PVSystem
PV 板 + 逆變器整體建模。4 個關鍵參數:kV(接入電壓 L-L)、kVA(逆變器額定容量)、Pmpp(最大功率點)、irradiance(日照比例 0~1,1.0 = STC)。
🔋 Storage
三狀態 idling / charging / discharging。4 關鍵參數:kWrated(瞬間功率)、kWhrated(容量)、%stored(SoC)、state。對應 Lab126 工商型儲能 30 kW / 100 kWh。
📊 Monitor
連續記錄某元件的 V / I / P / Q 時序資料。snap 模式只記一筆,5/22 daily 模式會記 24 筆。
⚖️ EnergyMeter
從某元件向下游累計能量、損耗、過/欠壓時數。一日結束可看「校園這條饋線今天虧了多少 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

🎯 三步口訣

每寫一個 .dss 檔,結尾務必這三行;順序「不能換」
步指令含意
①Set voltagebases=[11.4 0.38]「基準電壓清單是 11.4 kV 和 0.38 kV」
②CalcVoltageBases「OpenDSS 去算各母線屬於哪個基準」
③Solve「開始迭代求解潮流」

口訣:先給清單 → 算基準 → 解題。順序顛倒 → pu 全錯或變 NaN。

☀️ PVSystem 元件拆解

PVSystem 不是「太陽能板」,而是「太陽能板 + 直流轉換 + 逆變器整體模組」。OpenDSS 用一個元件包到底。

☀ 太陽光照 irradiance PV 板 Pmpp = 30 kW DC→AC 逆變器 Inverter kVA = 30 DC AC LoadBus 11.4 kV → 校園饋線 OpenDSS 把這整段包成一個 PVSystem 元件

4 個關鍵參數的物理意義

參數單位意義典型值
kVkV接入電壓(三相填 L-L、單相填 L-N)11.4(高壓)/ 0.38(低壓)
kVAkVA逆變器額定容量(apparent power 上限)≥ Pmpp(通常 1.0–1.2 倍)
PmppkWPV 板最大功率點功率(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 場景模擬:

情境irradiancePV 出力淨負載(負載 − PV)LoadBus pu(預期)
夜間0.00 kW+200 kW(淨吸收)≈ 0.985 略低於 1.0
清晨/傍晚0.39 kW+191 kW≈ 0.986
正午一般0.721 kW+179 kW≈ 0.988
正午滿出力1.030 kW+170 kW≈ 0.989 因 PV 抵了一些

這個簡化案例 PV (30 kW) 還小於負載 (200 kW),所以沒「反送」。但若把 Pmpp 改大到 500(遠超過負載),就會看到反送讓 LoadBus 衝破 1.0 pu — 這是 5/15 Case A 天橋 PV 真實場景的縮影。

🎛️ 想玩互動模擬? 在 §7 互動模擬器把「負載 kW」拉到 100、把「線長」拉到 5 km,可以看到 0.95 pu 的低壓警告。下次 5/15 我們會在天橋 PV 案例上實機算出 1.05+ 的過電壓。

🔋 Storage 元件三狀態

idling 待命 P = 0 kW 不充不放 charging 充電(吸電) P = +30 kW(吸入) SoC ↑ discharging 放電(送電) P = −30 kW(送出) SoC ↓ Edit ... state=charging Edit ... state=discharging

kWrated vs kWhrated 不要搞混

參數單位類比Lab126 規格
kWratedkW(功率)水管粗細(瞬間流速上限)30 kW
kWhratedkWh(能量)水桶大小(總共能裝多少)100 kWh

30 kW × 滿放 1 hr = 30 kWh,所以 100 kWh 大約可以滿放 3.3 小時。實務上會留 %reserve=20(不放到 0),所以實際可用約 80 kWh ≈ 2.7 hr。

📊 Monitor vs EnergyMeter — 兩個不同任務的「儀表」

面向MonitorEnergyMeter
定位「示波器」「電費表」
記錄什麼某元件的瞬間 V / I / P / Q 時序從某元件下游累計能量、損耗、過/欠壓時數
範圍單一元件整個下游饋線
snap mode 用只記 1 筆,意義不大看當前累計損耗
daily mode 用(5/22 用)記 24 筆 → 可匯出 csv 畫曲線看 24 hr 總能量、總損耗
指令New Monitor.M_PV element=PVSystem.PV1 mode=1New 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 個情境練習:

  1. baseline:三個 Bus pu 各是多少?
  2. 夜間:PV irradiance=0,Bus_B 怎麼變?
  3. 儲能充電:Storage state=charging,Bus_C 怎麼變?
  4. 線路加長:L3 length 0.2 → 1.0 km,末端電壓會發生什麼?
📁 起點檔案 OpenDSS範例/demo_5_pv_storage_3bus.dss(隨身碟也會帶到教室)

🧪 作品 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

填表:

Buspu 值
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 上寫一句話總結:

「我們組從這個練習觀察到 ___(例:PV 抬升電壓、儲能充電壓電壓、線長放大壓降),最有趣的發現是 ___。」

📤 上傳

  • 修改後的 .dss 檔,命名 hw01_組X.dss,上傳到 Google Drive 組別資料夾
  • A4 紙拍照上傳(或寫成 .md)
  • 截止:5/8 課後 24 hr 內

📝 5/8 小測驗(8 題 · 即時回饋)

下課前 5 分鐘自我驗收。每題作答後立即看到正解與解析。

📚 完整教案

詳細逐段說明、教師端準備清單、課後分析動作:課程規劃/02_第2次_微電網元件建模_3hr教案.md

下一次|5/15 Case A 天橋 PV →
第 3 次 📅 2026-05-15(五)

Case A · 天橋太陽光電系統建模

第 3 次|Case A 天橋太陽光電系統 + 同儕互評

從實際踏查 → 寫成 OpenDSS → 解出潮流 → 判讀過電壓,並引入同儕互評讓學習從個人作品轉為學習共同體。

時間表(3 節 × 50 min + 兩個 10 min 休息 = 150 min)

時段內容
第 1 節 9:00–9:15各組踏查回報(每組 2 min,含照片)
9:15–9:50PV 中午過電壓深度解說
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:48ARCS 中測 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%;裝越多越誇張
⚠️ 為什麼 cosφ 這條對 PV 特別敏感? PV 預設 PF=1(純實功),所以「方向反轉」幾乎全部反映在 R cosφ 這一項。如果改 PF=0.95 lagging(吸 var),壓升會減少——這就是 IEEE 1547-2018 smart inverter Volt-VAR 控制 [8] 的核心策略:用無功補償壓升。

📋 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` 檔 + 過電壓分析報告

每組從踏查的真實數字出發,跑三個情境:

  1. 平日中午(校園 800 kW、irradiance=1.0)
  2. 週末中午(校園 200 kW、irradiance=1.0)
  3. 寒暑假 + 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 案例」。請每位同學在筆記本記下:

  1. 業師講的一個真實 PV 過電壓案例(地點、容量、解決方法)
  2. 業師提到的一個你沒聽過的工具或標準(IEEE 1547、IEC 61850 等)
  3. 業師回答 Q&A 時,你最有共鳴的一句話
  4. 對你未來求職的啟發(≥ 30 字)

課後請把筆記彙整給老師,整理成班級共同學習成果。

📝 5/15 小測驗(8 題 · 即時回饋)

下課前 5 分鐘自我驗收。

📚 完整教案

課程規劃/03_第3次_CaseA天橋PV_3hr教案.md

下一次|5/22 Case B+C →
第 4 次 📅 2026-05-22(五)

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:25Solve 模式地圖 + 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:505/29 發表抽籤(A / B / C 深度版)+ 預告後測

🗺️ Solve 模式地圖

     你要解的問題是…
           │
     ┌─────┴─────┐
     │           │
  「某一瞬間」  「一段時間的變化」
     │           │
     ▼           ▼
   snap        ┌──────────────┐
  (預設)      │ 時間尺度多長? │
                └──────┬───────┘
                       │
           ┌───────────┼────────────┐
           ▼           ▼            ▼
         幾秒~幾分     24 小時       一整年
            │            │            │
            ▼            ▼            ▼
          duty        daily         yearly
       (衝擊負載)  (校園 PV)    (容量規劃)
案例使用模式原因
Case A 天橋 PVdailyPV 出力隨日照變化
Case B 小型微電網dailyEV 充電 + PV + PCS 協調
Case C Lab126 BESSdaily削峰填谷本質為 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 32ALoad + 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 畫圖
💡 mult 是倍率不是 kW 若 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–14PV 充電−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 元
🎯 投資回收期估算 Lab126 30 kW / 100 kWh BESS 商用價約 250 萬。124,830 元 / 年 → 回收期 ≈ 20 年。電池壽命也大概 10–15 年 → 純經濟上不划算。所以實務 BESS 通常結合電費差 + 備用電源 + 反送電抑制 + 政策補助 才合理。

🎯 作品 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 題 · 即時回饋)

📚 完整教案

課程規劃/04_第4次_CaseBC_3hr教案.md

下一次|5/29 成果發表 →
第 5 次 📅 2026-05-29(五)· 期末

整合比較 · 口頭發表 · 後測

第 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 月延遲後測預告

🎤 口頭發表規格

⏱️ 時間
每組 12 min(10 min 報告 + 2 min Q&A)
📝 結構
問題 → 方法 → 結果 → 侷限 → 建議(IMRaD 迷你版,為未來學術寫作打基礎)
📄 繳交
投影片 + 報告 PDF(≤ 3 頁)+ 最終 .dss 檔
🔍 預審
5/26 23:59 先給老師預審稿(避免發表時出狀況)

抽籤主題(5/22 課末抽)

  • A 深度版(天橋 PV):×3 容量擴展、季節性比較(夏 / 冬)
  • B 深度版(電機館小型微電網):孤島運轉模擬、緊急情境
  • C 深度版(Lab126 BESS):經濟性 + 容量最佳化(30 kWh 換成 60 kWh 比較)

📝 後測與反思寫作

後測題目與前測平行(B 區 18 題 + C 區技能 + D 區 ARCS + E 區 SDT + F 區永續),同 6 碼匿名編號。後測後接 3 題結構化反思寫作:

  1. 從「學了什麼」到「最讓你卡住的地方」——請具體寫一個模擬錯誤與解決歷程(≥ 100 字)
  2. 最讓我有成就感的瞬間(≥ 50 字)
  3. 給下一屆學弟妹的一個最重要建議(≥ 50 字)
📅 延遲後測(2026-07 初) 課程結束 3–4 週後會發放線上 Forms 後續評估,看你學到的東西是否真的留下來、能用在後面的課程或求職時。回答的同學會收到一份小小的感謝。

👥 半結構訪談(自願 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 應對能回答 + 自承不會的部分 + 後續查證能回答多數問題勉強回答無法應對
📈 雙盲評分 為確保評分公允,本實作單元的最終發表會由 2 位老師獨立評分;同分代表結果穩定。

📝 IMRaD 迷你版範本(10 min 投影片建議結構)

把學術論文標準結構濃縮成 5 個 1 分鐘片段:

段落時間內容關鍵句型
Introduction1 min問題背景 + 你回答什麼 RQ「明志校園的 X 案例,問:若 ____ 會怎樣?」
Method2 minOpenDSS 建模、參數來源、情境設計「我們用踏查的 ____ kVA、線長 ____ km 寫成 .dss,跑 ____ 個情境」
Results4 min主圖(電壓 / 功率 / SoC 軌跡) + 主表「結果顯示 ____,最關鍵的數字是 ____」
aDiscussion2 min對應實務 / 規範、侷限、建議「相對 ±5% 規範,____;本研究侷限是 ____;未來可 ____」
Q&A2 min互動「謝謝,____ 是好問題,____」
🎓 為什麼老師這麼在意 IMRaD? 因為這是學術寫作的標準骨架——研究所論文、技術報告、產業白皮書都是這個結構。學會在 10 min 把案例講成 IMRaD,未來不管寫論文、寫提案、做技術簡報都用得上。

💭 反思寫作引導

後測後 10 分鐘,三題結構化反思——這是讓你回顧自己一個月學習旅程的機會。每題給一個好答案範例讓你掌握深度:

Q1(≥ 100 字):從「學了什麼」到「最讓你卡住的地方」——具體寫一個模擬錯誤與解決歷程

好答案範例:「我第一次跑 daily mode 時跑出 NaN,查了半天發現 Loadshape mult 寫成負值(−0.5),OpenDSS 會把它當反向功率而不收斂。改成正值後就 OK 了。學到:mult 是『倍率』不是『方向』,方向要靠 state 屬性指定。」

Q2(≥ 50 字):最讓我有成就感的瞬間

好答案範例:「Lab126 實地走訪那次,看到我電腦裡的 BESS_Lab126 元件,跟眼前的 PCS 機櫃對應起來——OpenDSS 不再只是抽象程式,而是『現實的數位分身』。」

Q3(≥ 50 字):給下一屆學弟妹的一個最重要建議

好答案範例:「三步口訣 Set voltagebases → CalcVoltageBases → Solve 一定要背熟,每個 .dss 結尾都要這三行。錯了 OpenDSS 不會報錯但 pu 會錯——不要花一小時 debug 才發現。」

🏆 課程結束後的續航

  • 表現優異的學生有機會參與後續學術成果擴散(細節將在 5/29 結語時公布)
  • 三件作品(A / B / C)組合成「校園微電網數位分身」,可作為個人作品集
  • 本互動教材永久保留於 GitHub Pages,可作為求職時的作品集連結

📝 期末綜合小測驗(8 題 · 涵蓋 5 次內容)

跨 5 次課的整合題,作為發表前自我檢核:

📚 完整教案

5/22 後依各組進度補定稿,預定路徑:課程規劃/05_第5次_整合發表後測_3hr教案.md

⬆ 單元地圖 回顧第 1 次