简介:这份PPT面向电力系统初学者、电气工程专业学生及电网调度运维人员,系统梳理电力系统基本概念与电网调控核心知识,帮助读者建立从发电、变电、输电、配电到用电全环节的整体认知。资源为单个pptx文件,压缩包约527KB,内容以图文幻灯片形式呈现,便于课堂讲解与自学查阅。目前已有58人学习下载。课件围绕电力网络与动力系统的构成、总装机容量与年发电量等规模指标展开,并重点讲解电能质量标准,包括50Hz额定频率及±0.2Hz至±0.5Hz偏差、电压偏差-3%~+7%、三相不平衡、谐波总畸变率与电压波动闪变限值;同时分析负荷的电压、频率与时间特性,介绍恒定阻抗、恒定功率、恒定电流及感应电动机动态模型等模拟方法,并延伸至年、月、日负荷调整与峰谷负荷曲线分析。楚雄供电局电力调度中心的实践案例进一步说明测量、调节、控制、保护、通信与调度如何协同保障供需平衡,适合作为电网调控入门与知识查漏的参考材料。
1. 从一份 PPT 说起:电力系统基本知识与电网调控到底在讲什么
很多人第一次接触「电力系统基本知识与电网调控」这个题目,是在一份培训 PPT 里。它看起来像科普,实际上是一线调度、运维、新能源场站值班员绕不开的底层知识框架。它要回答的核心问题是:电从哪来、经过哪些环节、谁在什么时候调什么、出了事怎么隔离。电网调控不是坐在屏幕前看曲线,而是对频率、电压、潮流、备用容量做实时平衡决策。这份材料适合三类人:刚入行的调度助理、从设备侧转运行侧的技术员、以及需要和调度打交道的场站运维。把 PPT 里的概念映射到实际系统,你会发现它讲的是「约束条件下的功率平衡」,而不是抽象定义。下面按落地路径拆开讲。
2. 电力系统基本知识:从发电到用电的五个环节与关键参数
2.1 发电、输电、变电、配电、用电的边界怎么划
电力系统的基本结构可以拆成五个环节,但实际工作中边界并不总是清晰的。发电侧包括同步发电机、新能源变流器、厂用电系统;输电侧通常是 220kV 及以上电压等级,承担大容量远距离输送;变电侧是电压变换和电能分配的关键节点;配电侧是 10kV 到 0.4kV 的末端网络;用电侧则是负荷聚合。每个环节的调控目标不同:发电侧关注有功无功出力、爬坡率、一次调频死区;输电侧关注线路载流量、N-1 通过率、稳定极限;变电侧关注主变分接头、母线电压;配电侧关注馈线自动化、三相不平衡;用电侧关注可中断负荷和需求响应。
理解这些边界,是为了在调控时知道「谁归谁管」。比如一条 110kV 线路过载,调度员需要同时看发电出力、变电站负荷和下级配网转供能力。常见做法是先用潮流计算判断过载原因,再决定是调整发电机出力还是切负荷。这里的关键参数包括:额定电压、额定容量、短路容量、阻抗百分比、变比。这些参数在 PPT 里通常以表格形式出现,实际使用时必须和现场铭牌核对。
2.2 频率、电压、功率因数:三个必须盯住的运行参数
频率是全网有功功率平衡的指示器。中国电网额定频率 50Hz,正常运行偏差不超过 ±0.2Hz,故障时不超过 ±0.5Hz。频率下降说明有功缺额,需要增加发电出力或切除负荷;频率上升说明有功过剩,需要降低出力或增加负荷。电压是局部无功平衡的指示器,不同电压等级允许偏差不同:35kV 及以上供电电压正负偏差绝对值之和不超过 10%,10kV 及以下三相供电电压偏差为标称电压的 ±7%。功率因数反映无功补偿是否合理,一般要求 35kV 以上不低于 0.9,10kV 以下不低于 0.85。
这三个参数不是孤立的。频率调整会影响电压,电压调整也会影响无功潮流。实际调控中,一次调频负责秒级响应,二次调频(AGC)负责分钟级恢复,三次调频负责经济分配。电压调整则依赖发电机励磁、变压器分接头、无功补偿装置。常见做法是:先看频率偏差是否超出死区,再判断是调有功还是调无功。如果频率正常但电压偏低,优先检查无功补偿是否投入不足。
2.3 用 Python 算一个简单潮流:最小可复现步骤
要理解电网调控,最好自己算一次潮流。下面用 Python 的 pandapower 库做一个 3 节点系统的最小示例。安装命令:pip install pandapower。代码里创建了三个母线、一台发电机、两个负荷和两条线路,然后运行潮流计算并输出结果。
import pandapower as pp # 创建空网络 net = pp.create_empty_network() # 创建母线:bus1 为平衡节点,bus2、bus3 为 PQ 节点 bus1 = pp.create_bus(net, vn_kv=110, name="bus1") bus2 = pp.create_bus(net, vn_kv=110, name="bus2") bus3 = pp.create_bus(net, vn_kv=110, name="bus3") # 创建发电机:接在 bus1,电压设定值 1.02 p.u. pp.create_gen(net, bus1, p_mw=50, vm_pu=1.02, name="gen1") # 创建负荷:bus2 和 bus3 各 20MW、5Mvar pp.create_load(net, bus2, p_mw=20, q_mvar=5, name="load2") pp.create_load(net, bus3, p_mw=20, q_mvar=5, name="load3") # 创建线路:bus1-bus2、bus2-bus3,参数用典型值 pp.create_line(net, bus1, bus2, length_km=10, std_type="NA2XS2Y 1x185 RM/25 6/10 kV", name="line12") pp.create_line(net, bus2, bus3, length_km=15, std_type="NA2XS2Y 1x185 RM/25 6/10 kV", name="line23") # 运行潮流计算 pp.runpp(net) # 输出结果 print(net.res_bus[['vm_pu', 'va_degree', 'p_mw', 'q_mvar']]) print(net.res_line[['loading_percent']])逻辑说明:create_bus定义节点电压等级,create_gen定义平衡节点和电压设定值,create_load定义有功无功需求,create_line定义线路阻抗和长度。runpp执行牛顿-拉夫逊潮流计算。参数说明:vm_pu是电压标幺值,p_mw是有功功率(兆瓦),q_mvar是无功功率(兆乏),loading_percent是线路负载率。如果负载率超过 100%,说明线路过载,需要调整发电机出力或切负荷。这个例子虽然小,但已经包含了电网调控的核心逻辑:功率平衡和约束校验。
3. 电网调控怎么做:从调度指令到现场执行的完整链路
3.1 调度指令的生成、校核与下发流程
电网调控不是拍脑袋决定,而是有一套严格的流程。第一步是数据采集,从 SCADA 系统获取实时遥测遥信数据,包括发电机出力、线路潮流、母线电压、开关位置。第二步是状态估计,用冗余量测数据修正坏数据,得到全网一致的状态量。第三步是安全分析,包括静态安全分析(N-1 校验)和动态安全分析(暂态稳定、小干扰稳定)。第四步是优化决策,用经济调度或最优潮流计算发电计划和电压设定值。第五步是指令生成,把决策结果转成调度指令。第六步是下发执行,通过调度数据网送到电厂或变电站的 RTU/测控装置。
这个链路里最容易出问题的是状态估计和下发环节。状态估计如果量测冗余度不够,可能收敛到错误解;下发环节如果通道中断,指令可能丢失或延迟。常见做法是:状态估计后人工核对关键断面潮流,下发前用回执机制确认。参数方面,状态估计的收敛阈值一般设为 0.01 p.u.,N-1 校验的过载阈值设为 100% 额定容量。
3.2 AGC 与一次调频的配合:参数怎么设、死区怎么留
AGC(自动发电控制)和一次调频是频率控制的两个层次。一次调频由发电机调速器自动响应,响应时间秒级,死区一般设为 ±0.033Hz 到 ±0.05Hz,调差系数 4% 到 5%。AGC 由调度主站控制,响应时间分钟级,控制模式有定频率、定联络线功率、联络线功率偏差控制等。两者配合的关键是:一次调频先动作,AGC 后恢复。如果 AGC 反调,会导致频率恢复变慢。
参数设置上,AGC 的调节速率一般设为额定容量的 1% 到 2% 每分钟,调节死区设为 ±0.05Hz 到 ±0.1Hz。一次调频的不平衡功率分配系数按机组容量比例分配。实际调试时,先用阶跃试验测出调速器实际死区和调差系数,再和调度主站参数对齐。常见坑是:一次调频死区设得太小,导致机组频繁动作;AGC 死区设得太大,导致频率偏差长期不归零。
3.3 用 SQL 查历史调控记录:定位频率异常的时间窗口
调控复盘离不开历史数据。下面用 SQL 查一段频率异常记录,找出频率低于 49.8Hz 的时间窗口和对应机组出力。假设表结构为freq_data(ts, freq)和gen_data(ts, gen_id, p_mw)。
-- 查询频率低于 49.8Hz 的时间段,并关联机组出力 SELECT f.ts, f.freq, g.gen_id, g.p_mw FROM freq_data f JOIN gen_data g ON f.ts = g.ts WHERE f.freq < 49.8 AND f.ts BETWEEN '2024-01-01 00:00:00' AND '2024-01-01 06:00:00' ORDER BY f.ts;逻辑说明:先过滤频率异常记录,再按时间戳关联机组出力,最后按时间排序。参数说明:freq单位 Hz,p_mw单位 MW,时间范围根据实际故障时段调整。如果查出来某台机组出力在频率下降时反而减少,说明该机组一次调频未动作或反调,需要检查调速器参数。这个查询可以扩展为窗口函数,计算频率变化率和机组响应延迟。
4. 避坑与排查:电网调控里最容易翻车的五个场景
4.1 现象:频率恢复正常但电压持续偏低。原因:无功补偿未投入或分接头卡死。解决:先查无功补偿装置投切记录,再查主变分接头动作次数,必要时手动调整。
4.2 现象:AGC 指令下发后机组出力无变化。原因:通道中断或 RTU 死机。解决:用 ping 和遥测刷新测试通道,重启 RTU,检查 AGC 子站参数是否被误改。
4.3 现象:潮流计算不收敛。原因:节点电压初值不合理或线路参数错误。解决:把平衡节点电压设为 1.0 p.u.,检查线路阻抗是否填错,必要时改用高斯-赛德尔法启动。
4.4 现象:N-1 校验通过但实际故障时线路过载。原因:负荷预测偏差大或发电计划未更新。解决:用超短期负荷预测修正,滚动更新发电计划,缩短 N-1 校验周期。
4.5 现象:一次调频动作后频率振荡。原因:调差系数过小或死区过窄。解决:适当增大调差系数到 5%,死区放宽到 ±0.05Hz,检查调速器 PID 参数是否合理。
5. 进阶技巧:用灵敏度分析快速定位电压薄弱节点
5.1 电压-无功灵敏度矩阵的求法与解读
电压-无功灵敏度矩阵描述的是:某个节点注入无功变化时,其他节点电压变化多少。数学上,它来自潮流方程的雅可比矩阵求逆。实际使用时,不需要自己推导,可以用 pandapower 的pp.runpp后提取雅可比矩阵,或者用net.res_bus做微扰实验。常见做法是:在某个节点增加 1Mvar 无功,观察其他节点电压变化,变化最大的节点就是电压薄弱节点。
import pandapower as pp import numpy as np net = pp.create_empty_network() b1 = pp.create_bus(net, vn_kv=110) b2 = pp.create_bus(net, vn_kv=110) b3 = pp.create_bus(net, vn_kv=110) pp.create_ext_grid(net, b1, vm_pu=1.0) pp.create_line(net, b1, b2, length_km=20, std_type="NA2XS2Y 1x185 RM/25 6/10 kV") pp.create_line(net, b2, b3, length_km=30, std_type="NA2XS2Y 1x185 RM/25 6/10 kV") pp.create_load(net, b3, p_mw=30, q_mvar=10) pp.runpp(net) v_base = net.res_bus.vm_pu.copy() # 在 b3 增加 1Mvar 无功,重新计算 pp.create_load(net, b3, p_mw=0, q_mvar=1, name="perturb") pp.runpp(net) v_pert = net.res_bus.vm_pu.copy() # 计算灵敏度 sensitivity = (v_pert - v_base) / 1.0 print(sensitivity)逻辑说明:先跑一次基准潮流,记录各节点电压;再在目标节点增加 1Mvar 无功,再跑一次潮流;电压变化量除以无功变化量就是灵敏度。参数说明:q_mvar=1是微扰量,实际可用 0.1Mvar 提高精度。灵敏度绝对值越大,说明该节点电压对该点无功注入越敏感。如果某节点灵敏度接近零,说明该节点电压主要由其他节点支撑,属于薄弱节点。
5.2 把灵敏度用于实际调控的注意事项
灵敏度分析结果不能直接当指令用,因为它是局部线性化结果,大扰动下会失效。实际调控中,先用灵敏度排序找出薄弱节点,再结合 N-1 校验和动态稳定分析确认。常见做法是:对灵敏度最高的三个节点,分别检查无功补偿容量、变压器分接头范围和线路载流量。如果补偿容量不足,优先安排电容器组投切;如果分接头已到极限,考虑调整发电机电压设定值。
我自己的习惯是:每次大方式变更后,重新算一遍灵敏度,和上一次对比。如果某个节点灵敏度突然变大,说明该节点附近的无功支撑变弱了,需要提前干预。这个习惯帮我避免过两次电压崩溃事故。希望帮到你。
本文还有配套的精品资源,点击获取