
1. 这套并联拓扑的配置逻辑光伏、储能、超容各自承担什么角色先说结论离并网无缝切换这件事单独靠储能变流器硬扛很难同时兼顾“切换过程无冲击”和“离网后频率稳定”这两个目标。这也是我最初做这个项目时踩过的最深的一个坑——一开始只用了储能电池 VSG控制切换瞬间母线电压还是被拉了一个大坑后来把超级电容并联上去问题才真正解决。所以这篇博文会围绕“光伏储能超级电容并联 VSG控制”这条主线把离并网无缝切换、电压/相位预同步、负荷投切这三块内容串起来讲。这套系统适合谁参考正在做微电网控制、储能变流器研发、多源并联系统调试的工程师或者研究生阶段做光储微网仿真的同学都可以从里面找到可以直接拿去用的思路。我会把切换状态机、预同步算法、参数整定、负荷投切逻辑以及实测中容易踩的坑都写出来。1.1 为什么不是“一台储能PCS走天下”很多同学一开始的想法是离网时储能PCS用VF控制撑起母线并网时切到PQ控制切换瞬间靠快速响应不就完了实际做下来会发现这个方案有几个硬伤。第一储能电池的功率响应速度天然受限。电池的功率密度低毫秒级的大功率冲击会让电池电压骤降BMS还会因为电流变化率过大触发保护。我实测过20kW的负荷投切瞬间电池侧电流变化率超过临界值时BMS直接报警严重时直接把功率通道封锁。第二并网和离网控制模式的切换本质上是控制结构的变化。模式切换瞬间PI调节器状态、PWM调制波相位都会发生跳变即使做了状态保持处理也很难做到真正的“无扰动”。不说别人我自己第一次做模式切换时录波看到切换点电压波形有一个明显畸变持续时间大概3~5ms这个畸变对于普通负荷无所谓但对电压敏感的负载就是事故。第三并网模式下电网频率由大电网决定储能PCS只负责功率离网模式下储能PCS必须自己建立电压和频率。这两个状态对控制器的需求完全不同靠模式切换必然存在过渡过程。所以我的结论是要么在控制算法上做到全程统一结构要么在硬件上增加一个响应速度极快的功率源来兜底。这个项目里两条路都走了——控制上用了VSG统一架构硬件上并联了超级电容。1.2 三源并联的能量分工与母线结构整个系统的交流母线结构我画个文字描述光伏单元、储能单元、超级电容单元分别通过各自的DC/AC变流器并联到同一个交流母线上母线再通过一个并网断路器和电网相连。直流侧光伏接Boost变换器储能接双向Buck-Boost超容也接双向DC/DC然后各自经过逆变器上交流母线。当然实际工程中也可以做成直流母线耦合再用一台大容量储能PCS统一逆变但那样超容对交流侧冲击的补偿速度会打折所以我更推荐交流母线并联。三个源的能量分工我建议按时间尺度划分光伏只负责输出最大功率做MPPT不参与母线电压和频率的调节。它的输出是功率源性质外界决定了多少就发多少。储能电池负责秒级到分钟级的能量平衡承担离网时母线电压和频率的主动支撑是VSG控制的功率来源。超级电容负责毫秒级的瞬态功率补偿。切换瞬间的功率缺额、负荷投切的冲击全部由超容先扛下来给储能电池争取响应时间。一句话总结光伏管“量”储能管“稳”超容管“冲”。这三者缺一个切换性能都会打折扣。1.3 容量配置上的实际考量容量配置直接决定切换瞬间母线电压跌多少。我举一个这个项目里的实际估算例子方便大家套用。假设离网状态下系统已带30kW负载现在突然要投入一台20kW的设备切换瞬间功率缺额就是20kW。要求母线电压跌落到最低0.9pu支持时间200ms也就是说超容需要在200ms内补足这20kW的缺口。20kW乘以0.2秒能量需求是4000焦耳。如果超容模组的电压范围取16V到32V可用能量计算公式是E 0.5 × C × (Vmax² − Vmin²)代入E 4000JVmax 32VVmin 16V得到C 4000 × 2 / (1024 − 256) ≈ 10.4F考虑DC/DC变换效率一般取90%再留30%的裕量实际我选了50F/32V的模组对应最大可用能量远超需求。这个容量的超容在切换瞬间能把电压跌落控制在5%以内效果非常明显。储能电池的容量则按离网运行时长来配一般按1~2小时备电时间算这个不是本文重点不展开。2. VSG控制的核心机制从下垂控制的不足说起既然要做离并网无缝切换必须先回答一个问题为什么选VSG而不是传统的下垂控制或者VF控制。2.1 传统PQ/VF控制方案的天然缺陷下垂控制的基本思路是模拟同步发电机的有功-频率静态特性和无功-电压静态特性公式很简单f f0 − kp × (P − P0) U U0 − kq × (Q − Q0)这个方案的优点是无需通信、天然支持多机并联但它本质上是静态下垂没有惯量。什么意思同步发电机因为有转子系统功率突变时转子动能会缓冲频率变化频率变化率被限制住。下垂控制没有这个缓冲环节功率突变时频率会出现瞬时跳变哪怕稳态能回到允许范围动态过程已经冲击负载了。VF控制更干脆直接定电压定频率相当于把母线变成理想电压源。这听起来很好但并网运行时要和电网切换两个理想电压源并联必然产生巨大的环流所以VF控制只适合纯离网场景做不了无缝切换。VSG控制补的正是这个缺口。它在控制算法里加入了一个虚拟转子用转子运动方程模拟同步发电机的机械惯量和阻尼特性让变流器在动态过程中表现出和真实同步发电机类似的频率响应。这样一来离网时它是有惯量的电压源并网时又能通过调节虚拟机械功率来跟踪电网控制结构不需要做根本性改变这是它能实现无缝切换的基础。2.2 VSG转子运动方程与虚拟惯量参数整定VSG控制的核心是转子运动方程J × dω/dt Pm − Pe − D × (ω − ω0)其中J是虚拟惯量D是阻尼系数Pm是虚拟机械功率由有功给定决定Pe是实际输出电磁功率ω是VSG输出角频率ω0是额定角频率。这个方程怎么理解你可以把VSG想象成一台看不见的同步发电机J就是它的转子重量。J越大转子越重频率变化越慢抗冲击能力越强但响应也越迟钝。D则是阻尼D越大频率振荡衰减越快但稳态频率偏差也越大。实际整定时我习惯先把D设为零只调节J看频率动态响应然后加入D调出合适的阻尼比。工程上常用的做法是把惯性时间常数TJ J × ω0 / Sbase控制在0.5到2秒之间。比如100kW的系统TJ取1秒J Sbase × TJ / ω0 100000 × 1 / 314 ≈ 318 kg·m²。阻尼系数D取多少合适一般通过阻尼比公式反推让系统的阻尼比落在0.6到1.0之间过阻尼频率恢复慢欠阻尼会振荡。这里有个经验J不是越大越好。我试过把TJ加到5秒离网负荷突变时频率变化确实很平缓但超调和恢复时间明显变长下游负荷反而受不了频率长期偏离50Hz。最终沉下来TJ取1秒是最稳的。无功-电压环路相对简单采用无功积分加下垂E E0 kv × (Qref − Q) kr × ∫(Qref − Q)dt这个环路的PI参数也按常规电压环带宽来整定一般带宽取5~10Hz确保电压环动态不会和频率环打架。2.3 统一VSG框架下的离并网模式切换思路传统做法是离网用VF、并网用PQ切换靠模式切换。我的做法是全程只用VSG离并网切换只改变参考值和预同步环节的投退不改变控制结构。并网运行时VSG的Pm由上层调度给定有功下垂特性让VSG的输出功率自动跟随给定值频率被电网钳住。离网运行时Pm依然存在VSG自己建立频率和电压负荷功率由储能和超容共同供给。由于控制结构没有变化切换瞬间控制器内部状态不需要重置这是避免冲击的根本原因。那VSG在并网时会不会和电网频率打架不会因为并网状态锁相环给出的电网频率会作为VSG的ω0参考只要电网频率稳定VSG输出频率就和电网一致。这里需要注意的关键点是离网切换到并网前必须做预同步否则VSG的相位和电网相位不一致合闸瞬间就是一次短路冲击。3. 离并网无缝切换的完整实现路径预同步与状态机这一节是整个项目的核心也是标题里“电压/相位预同步控制”和“离并网无缝切换”真正落地的部分。3.1 由离转并电压/相位预同步控制的原理与算法离网运行时VSG自己建立母线电压相位是自己振荡出来的。电网电压的相位可能和母线的相位差了十万八千里。如果直接合闸合闸瞬间两侧电压源之间的相位差会导致巨大的冲击电流轻则跳闸重则炸断路器。预同步的目的就是让VSG输出电压的幅值、频率、相位逐渐逼近电网电压直到误差小到可以合闸的范围。控制逻辑如下用锁相环实时检测电网电压的幅值Ug、频率fg、相位θg同时检测VSG输出电压的幅值Uvsg、频率fvsg、相位θvsg计算三个差值ΔU Ug − UvsgΔf fg − fvsgΔθ θg − θvsg把这三个差值经过PI调节器分别叠加到VSG的电压幅值给定和角频率给定上当三个差值满足合闸条件我用的阈值是ΔU 2%额定电压Δf 0.02HzΔθ 1°时发出合闸指令。算法流程用伪代码写出来大概长这样while True: Ug, fg, theta_g pll(grid_voltage) Uv, fv, theta_v vsg_output() delta_u Ug - Uv delta_f fg - fv delta_theta theta_g - theta_v omega_adj kp_f * delta_f ki_f * integral(delta_f) theta_adj kp_t * delta_theta ki_t * integral(delta_theta) u_adj kp_u * delta_u ki_u * integral(delta_u) vsg.freq_ref 50 * 2 * pi omega_adj theta_adj vsg.volt_ref U0 u_adj if abs(delta_u) 0.02 * Un and abs(delta_f) 0.02 and abs(delta_theta) 1.0 * pi / 180: close_breaker() break相位预同步和控制频率的预同步其实是耦合的。当VSG的频率高于电网频率时它的相位会不断超前此时如果只调频率不调相位相位差会一直累积。所以我在频率校正通道上同时叠加了相位偏差的比例项相当于用相位差来反向修正频率形成一个比例环节让相位差能收敛到零。这个PI参数怎么整定相位环的带宽要远小于锁相环带宽一般取锁相环带宽的1/10左右。我用的锁相环带宽是50Hz相位环PI带宽取5Hz比例系数40积分系数80实测预同步收敛时间大约200ms这个速度对常规断路器操作来说足够宽裕。3.2 由并转离功率预置与母线建立由并转离的难点和离转并完全不一样。并网运行时母线电压和频率由电网支撑VSG输出的功率只是给定的一小部分负荷功率和VSG输出功率之间没有任何直接关系。一旦断开断路器VSG必须瞬间接替电网承担全部本地负荷。如果VSG当前输出功率远小于负荷功率断开的瞬间频率就会急剧跌落电压也会被拉低。解决思路是在断开前做功率预置。控制策略是并网状态下检测本地负荷的总功率P_load通过并网电流和母线电压计算断开断路器前先把VSG的有功给定Pm调整到P_load的水平甚至可以稍微高一点让少量功率流向电网形成“往外顶”的趋势等VSG的实际输出功率稳定到P_load附近后再执行断开操作断开瞬间VSG自然接替电网向负荷供电冲击极小。这个功率预置过程需要多长时间取决于负荷检测的滤波时间常数和VSG功率环的响应速度。我实测大约需要100ms到200ms如果现场对切换时间要求苛刻可以加快功率环的PI参数但要注意不要引入振荡。这里有个细节容易忽略功率预置时超容也要提前进入待命状态。具体做法是在断路器断开前100ms超容的DC/DC变换器从待机模式切换到恒压模式让超容电压和母线电压保持一致一旦母线频率出现跌落趋势超容立即输出瞬态功率。3.3 切换状态机与时间指标整个离并网无缝切换要管理起来不能靠散乱的逻辑判断需要一套清晰的状态机。我设计的切换状态机包含五个状态并网运行、并转离准备、离网运行、离转并准备、并网运行再次回并。并转离流程收到离网指令后进入并转离准备状态执行功率预置等待VSG输出功率达到负荷功率超容进入待命状态确认条件满足后发出断路器断开指令断路器断开信号反馈确认后VSG由并网模式进入离网模式内部参考值切换进入离网运行状态。离转并流程收到并网指令后进入离转并准备状态启动预同步控制等待幅值、频率、相位偏差进入阈值范围持续监测合闸条件稳定保持一定时间后我设的是持续40ms不超阈值发出合闸指令断路器合闸成功后VSG平滑过渡到并网模式功率给定切换为调度值进入并网运行状态。时间指标上我这个项目的实测数据是并转离全过程从指令发出到断路器反馈大约80ms含断路器固有动作时间母线电压暂降小于8%恢复时间小于100ms离转并从预同步启动到合闸完成视初始相位差而定一般不超过500ms合闸冲击电流小于额定电流的10%。4. 切换过程中的负荷投切策略让超容在毫秒级兜底标题里专门强调“离并网期间负荷投切”这确实是实际项目里最棘手的一部分。切换过程本身已经够复杂了如果此时负荷还突然变化系统控制难度直接翻倍。4.1 负荷投切为什么会摧毁“无缝”离网运行状态下系统是一个容量有限的独立电网。此时负荷突增VSG的转子运动方程决定了频率会瞬时跌落跌落幅度取决于负荷突增量和系统虚拟惯量。但如果负荷突增发生在离并网切换的瞬间比如断路器刚断开VSG还在建立母线此时再叠加负荷冲击会造成频率二次跌落严重时可能触发低频减载保护导致整个系统崩溃。我在调试时遇到过这样的场景并转离刚完成一台大功率电机启动启动电流是额定电流的5倍持续时间200ms。如果没有超容兜底储能电池的电压直接被打到欠压保护点VSG频率跌到48Hz以下系统保护动作整个离网母线失电。那次事故之后我彻底明白了负荷投切和切换控制必须联动。4.2 超容SOC管理与功率预分配超容的SOC对应的是它的端电压。2.7V单体串联到16串模组额定电压43.2V充放电电压范围一般控制在16V到43.2V之间。为了防止在切换瞬间超容被充坏或放空我把SOC工作区间维持在50%到70%之间对应的电压区间大约是32V到38V。为什么维持这个区间因为超容的可用能量和电压的平方成正比。电压越高同样容量下可用能量越少电压越低同样容量下可用能量越多。50%到70%的SOC区间上下都有足够的能量裕量既能吸收盈余功率又能释放缺额功率是平衡点。功率预分配的逻辑是这样的正常情况下超容DC/DC处于恒压模式输出电压比母线电压略高一点点保证它不输出功率但随时准备输出。一旦检测到母线电压频率发生突变超容DC/DC立即切换到功率控制模式按照预设的功率上限输出或吸收瞬态功率。超容的最大输出功率由DC/DC变换器的设计容量决定我的这套系统里超容支路设计容量是30kW持续能力250ms足够覆盖大部分负荷投切场景。4.3 负荷优先级策略与实测波形要点负荷投切不能一刀切。离网运行时如果总负荷超过系统供电能力必须按优先级甩负荷。我用的策略是一级负荷不允许断电全程由VSG和储能兜底这部分负荷功率控制在系统总容量的60%以内二级负荷允许短时中断当系统频率低于49.5Hz持续200ms时甩除三级负荷非重要负荷当系统频率低于49.8Hz持续100ms时优先甩除。甩负荷的执行机构是负荷开关动作时间大约10ms。但要注意甩负荷本身也会带来功率冲击——甩掉20kW的负荷相当于系统突减20kW功率频率会上升。所以甩负荷指令要和超容的功率吸收联动超容先吸收盈余功率等储能响应后再慢慢过渡。说到实测波形切换瞬间重点看三个信号断路器状态、母线频率、输出电流。好的切换波形应该是频率波动小于±0.3Hz电流波形无畸变切换点前后电压相位连续。如果切换时看到电流尖峰十有八九是预同步没做好或者功率预置不到位需要回头查控制逻辑。5. 调试现场踩过的坑从预同步误判到环流振荡最后这部分我把这个项目调试过程中的典型问题整理出来每个都是我自己实实在在踩过的能帮大家省至少一个月的调试时间。5.1 锁相环抖动导致预同步失效预同步控制的精度完全取决于锁相环的检测精度。并网运行状态下电网电压相对干净锁相环输出稳定。但在离转并过程中VSG输出的电压叠加了部分电网感应分量锁相环检测到的相位会叠加纹波。如果锁相环带宽过高相位输出抖动超过合闸阈值预同步就会一直无法收敛合闸指令永远发不出去。我的解决办法是在锁相环输出端加一个低通滤波器把带宽压到20Hz同时把预同步的合闸判定改为“持续40ms内相位差不超过1°”再发指令。这样既避免了锁相环抖动带来的误判又保证了合闸瞬间的相位精度。另外还有一个坑电网跌落或畸变时锁相环输出会明显失真。此时如果强行预同步并合闸就等于在错误相位上并网。我的做法是增加畸变检测连续10个电网周期内电压THD超过5%时封锁合闸指令并报警。这样可以避免电网异常状态下误并网。5.2 断路器合闸时间带来的相位误差断路器从收到合闸指令到触点真正闭合机械动作时间大约是10到20ms。这个时间虽然短但对于50Hz系统来说20ms就是360°的36°相位已经走了很远。如果不处理合闸瞬间的相位差可能远大于预同步的1°阈值。解决思路有两条。一是提前预测检测到相位差持续接近0的过程是动态的根据变化率外推断路器闭合时刻的相位差在最佳时刻提前发出合闸指令。二是使用同步合闸控制器让断路器真正闭合的瞬间恰好是相位差为零的时刻。工程上我采用的是第二种方案用一台同步合闸控制器通过检测断路器辅助触点延迟自动校准合闸提前量。校准一次之后合闸相位误差可以控制在3°以内。5.3 并联单元之间的环流抑制多源并联时由于各单元控制参数、PWM载波、电压幅值微小的不一致会产生环流。环流的存在会带来两个问题一是增加损耗二是可能导致某个单元过流跳闸。在离网状态下环流的危害更大因为系统的频率和电压由VSG决定环流会引起频率和电压的微小振荡。环流抑制的关键在于VSG的无功-电压下垂系数kp和有功-频率下垂系数kq。下垂系数越大各单元之间的均流能力越强但稳态电压和频率偏差也越大。我现场调的时候把kq设成2%即无功从0到额定电压偏差2%kp设成0.5%有功从0到额定频率偏差0.5%均流效果和电压偏差都满足要求。另外两个逆变器之间的PWM载波相位差也会引起高频环流这个可以在硬件层面通过载波同步信号线解决。如果现场没有同步线就通过各单元的锁相环来同步载波相位效果略差但也能用。还有一点超容支路的DC/DC变换器在恒压模式下的电压外环带宽要低于母线的电压环带宽否则超容支路会和储能支路形成低频振荡。我调试时遇到过母线电压在100Hz左右持续振荡的情况排查到最后就是超容DC/DC的电压环带宽太宽导致的把带宽从100Hz压到20Hz后振荡消失。5.4 离并网切换的验证方法最后分享一个现场验证切换性能的方法。切换性能好不好不能只靠眼睛看需要量化测试。我的测试流程分三步第一步是并网预同步测试用可编程交流源模拟电网的各种状态正常、电压跌落、频率偏移测试预同步控制在不同工况下的收敛时间和精度记录从启动预同步到合闸完成的时间以及合闸瞬间的冲击电流峰值。第二步是并转离冲击测试手动设定不同负荷水平从轻载到满载逐步测试切换过程记录母线频率的最大跌落值、恢复时间、电压暂降深度看是否满足设计指标。第三步是负荷投切测试在离网状态下投入和切除不同功率级别的负荷重点测试超容的响应速度、储能的功率跟随是否平滑、频率波动是否在允许范围内。这三步都通过了这套系统才算真正具备离并网无缝切换的能力。我个人的体会是离并网切换永远是“控制算法20%系统联调80%”单独调任何一环都很漂亮但组合起来就会暴露出各种阻抗匹配、带宽冲突、时序协调的问题。遇到问题不要慌用录波器把每个关键节点的波形抓下来逐段对比基本都能定位到根因。