ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

下垂控制与虚拟同步机对比:Simulink仿真与构网型控制性能研究

下垂控制与虚拟同步机对比:Simulink仿真与构网型控制性能研究 从“grid-forming”这个概念火起来之后我身边做微电网和储能变流器控制的朋友几乎都在问同一个问题下垂控制和虚拟同步机到底怎么选两者有什么本质区别在Simulink里又该怎么搭、怎么对比这篇文章我就把这一整套研究思路和仿真实现过程掰开揉碎讲清楚。全文围绕着一个完整的Simulink仿真模型展开对比这两种并网型控制策略在频率支撑、功率分配、动态响应这几个关键维度上的表现差异并把模型搭建、参数整定和结果分析的方法完整复现出来适合正在做新能源并网控制、微电网仿真以及储能变流器算法研究的工程师和研究生参考。1. 为什么grid-forming控制突然成了刚需1.1 传统跟网型控制在弱电网下的局限性过去很长一段时间逆变器并网控制几乎被PQ控制和VF控制这两种模式包揽。PQ控制本质上是跟网型grid-following思路通过锁相环去跟踪电网电压的相位和频率然后向电网注入设定好的有功和无功功率。这套思路在强电网、高短路比的环境下没有问题电网就像一个无限大母线逆变器只需要做好“跟随者”就行。但新能源渗透率一旦上去情况就完全不一样了。光伏和风电大量接入后电网里同步发电机的占比越来越低系统的等效惯量和阻尼都在下降。这个时候如果所有逆变器都还是跟网型电网缺少了能够主动建立电压和频率的电源一旦出现负荷突变或者联络线跳闸频率跌落速度会非常快甚至引发连锁脱网事故。跟网型逆变器还有一个致命问题就是它必须依赖锁相环去感知电网相位在弱电网下锁相环的动态特性会和系统的阻抗相互作用容易引发宽频振荡。grid-forming控制策略就是为了解决上述问题被推到台前的。它的核心思想是让逆变器自己去建立并维持电压和频率像同步发电机一样承担起电网“骨架”的角色。当前工程界主流的构网型策略一个是从同步发电机的下垂外特性演变而来的下垂控制一个是直接模拟同步发电机转子运动方程的虚拟同步机控制。两个策略扎根于同一种物理思想但实现路径和动态特征有差异这就是题目里“性能研究”四个字的价值所在。1.2 下垂控制与虚拟同步机的本质差异用一句话概括下垂控制是“外特性等价”虚拟同步机是“机理模拟”。下垂控制直接对逆变器输出电压的频率和幅值进行下垂调节频率随有功功率增大而线性下降电压幅值随无功功率增大而线性下降这在稳态上等效于同步发电机的一次调频和调压特性但它的动态过程中缺乏同步发电机的转子惯量也就是说频率变化率不受限制。虚拟同步机则在控制中显式加入了一个转子运动方程用转动惯量J和阻尼系数Dp去模拟同步发电机的摇摆过程。当系统频率变化时VSG能够像真正的同步机一样在一段时间内吸收或者释放动能对频率变化起到缓冲作用。这个“虚拟惯量”就是两种策略拉开差距的核心。这引出了两个在仿真中非常值得深挖的点第一下垂控制加惯性环节后能否等效为VSG第二VSG在下垂系数、惯量和阻尼参数怎么配合这两点在后面讲模型搭建和参数设计时会详细展开这里先记住一个大概的结论从数学结构上看VSG是有功-频率环的二阶动态模型下垂控制是一阶的静态比例关系前者在暂态过程中多了一个“惯性储能”的维度。2. 下垂控制策略建模与Simulink实现2.1 下垂控制数学模型P-f/Q-V外特性下垂控制的数学基础非常简单工程上常用的表达式是f f0 - m_p * (P - P0)V V0 - n_q * (Q - Q0)其中f0和V0是空载频率和空载电压m_p是有功-频率下垂系数n_q是无功-电压下垂系数P0和Q0是额定工作点的输出功率。机组并网后检测自身的输出功率根据下垂曲线生成频率和电压参考值再通过电压电流双闭环和PWM调制去跟踪这个参考值。这个控制思路其实就是抄同步发电机的一次调频调压外特性。同步发电机带负荷后转速会下降励磁电流不变时端电压会降低下垂控制把这种物理关系直接做成了控制规律。好处是稳态功率分配天然均匀几台容量一致的下垂控制逆变器并联时有功功率按照容量比例精确分配缺点是频率和电压都是带偏差调节负荷增加后系统频率稳定值会低于额定值需要一个二次调频机制把这个偏差拉回来这在微电网孤立运行时要额外配置。2.2 Simulink模型搭建步骤与功率计算下垂控制在Simulink里搭起来不算复杂核心分五步第一步搭主电路。用Three-Phase Voltage Source搭一个理想直流源或者用直流源加三相两电平VSC桥输出端接一个LC滤波器。滤波电感L和电容C要跟开关频率匹配典型值在感值3到5mH、容值20到40uF这个范围具体由纹波要求和谐振频率约束决定。LC谐振频率要避开基波频率和开关频率的几何平均点一般取开关频率的十分之一到五分之一之间。第二步做功率测量。采集逆变器输出侧的三相电压和电流信号用PLL锁定电压相位然后用d-q坐标系下的瞬时功率公式计算有功和无功。这里有一个很关键的细节功率计算后面要接低通滤波器滤除开关频率带来的纹波。低通滤波器的截止频率直接影响下垂控制环的带宽太低了动态响应慢太高了功率波动大一般取基波频率的1/5到1/10也就是10到20Hz左右。第三步生成电压参考值。用测量到的P和Q根据下垂公式计算出f_ref和V_ref。频率参考值合成三相电压角度时要做一个积分环节θ 2π∫f dt这一步在Simulink里用Integrator模块实现注意积分器要设置初始值为0或者直接给定一个初始相位。第四步电压电流双闭环。电压外环采用PI调节器输出作为电流内环的参考值电流内环也是PI调节器输出作为PWM调制的参考波。双闭环的带宽要拉开差距电压环带宽一般取300到500Hz电流环带宽取1到2kHz这样内外环不会互相干扰。第五步PWM调制。电流环输出的d-q轴电压经过反变换得到三相调制波与三角载波比较后生成IGBT的开关脉冲。载波频率可以设成10kHz注意在Discrete模式下要合理设置采样时间避免PWM信号出现毛刺。2.3 关键参数整定方法下垂系数的选取是整个下垂控制模型的灵魂必须根据系统允许的频率和电压偏差范围来设计。设逆变器额定有功容量为P_n要求满载到空载的频率差不超过Δf_max那么有功下垂系数m_p Δf_max / P_n。举个例子10kW的逆变器频率偏差限制为2%即1Hz那么m_p 1 / 10000 1e-4 Hz/W。这里有个容易踩的坑很多人在Simulink里把功率基准值取1W导致下垂系数量级完全对不上最后仿真结果乱七八糟。用同样的方法可以确定无功下垂系数n_q假设额定无功容量为Q_n电压偏差限制为2%即7.6V380V系统那么n_q 7.6 / Q_n。下垂系数太小会导致功率分配不均太大则电压频率偏移过大通常在仿真里要做一次扫参对比找出兼顾功率分配精度和电压质量的下垂系数组合。电压电流环的PI参数如果不想用经验试凑可以直接在Matlab里用pidtune函数对简化后的控制对象进行设计。控制对象一阶惯性加LC滤波pidtune输出来就是一组可以用于仿真的初始参数之后再根据阶跃响应微调。3. 虚拟同步机控制策略建模与Simulink实现3.1 VSG转子运动方程在控制中的映射虚拟同步机的核心在于把同步发电机的二阶转子运动方程引入控制回路。经典形式是J * dω/dt P_ref/ω0 - P_e/ω0 - D_p * (ω - ω0)其中J是虚拟转动惯量ω是同步角速度ω0是额定角速度P_ref是机械功率参考值在逆变器中对应有功功率指令P_e是电磁功率对应逆变器并网输出功率D_p是阻尼系数。把这个方程改写为频率偏差的形式就是等效于在频率-有功轴上加了一个二阶惯性环节这与下垂控制的一阶静态关系形成鲜明对比。在实际控制中这个方程输出的角速度经过积分得到电压相位θ电压幅值另外通过Q-V下垂或者无功-电压调节生成。调速器部分相当于一个有功功率参考跟踪器励磁部分相当于无功功率调压器。整体结构可以理解为转子运动方程提供相位励磁控制提供幅值两者合成出逆变器的电压参考值再送入双闭环跟踪。3.2 虚拟惯量J与阻尼系数D_p的设计准则参数J和D_p是VSG控制的精髓直接决定了VSG的暂态响应特性。从频域上看有功-频率环是一个典型的二阶系统其自然振荡频率ω_n和阻尼比ζ可以表示为ω_n sqrt(D_p / (J * ω0))ζ D_p / 2 * sqrt(1 / (J * D_p * ω0))为了获得不错的动态品质一般希望阻尼比在0.6到1.0之间然后根据系统允许的频率变化率上限来确定J的取值范围。频率变化率dω/dt与J成反比J越大频率变化越平缓对电网越友好但带来的问题是功率响应变慢而且J太大会导致暂态过程中功率超调甚至振荡。工程上常用的一种整定思路是先根据负荷阶跃时的频率最大偏差限制确定J的下限再根据安全稳定性约束和功率超调限制确定J的上限然后在区间内扫参。D_p的选取比较简单它决定了VSG的稳态频率偏差可以和下垂控制的m_p对应起来。D_p越大稳态频率偏差越小但阻尼力矩增大后系统容易过阻尼动态过程变慢。我的经验是先在静态工作点处把D_p设为下垂控制等效系数的两倍左右再和J一起做二维扫参用粒子群或者网格搜索找一组响应又快、振荡又小的组合。3.3 VSG控制器的Simulink模块化搭建VSG的Simulink实现看起来复杂但拆开来看就是几个可以复用的功能函数模块。转子运动方程模块是整个VSG的中枢在Simulink里可以用一个Function模块或者S-Function来实现。输入是P_ref和P_e输出是角频率ω和功角θ。输入信号经过一个增益1/(J·ω0)后减去阻尼项再经过一次积分得到ωω减去ω0后再积分得到θ增量。注意这里有一个很容易搞错的细节如果直接用∫ω dt作为相位θ那么零负荷时θ一直累积一开机相位就飘很大。正确做法是θ ∫(ω - ω0) dt θ0θ0是并网瞬间锁相环测到的电网相位这样VSG并网瞬间就不会有剧烈的相位冲击。调压器模块实现Q-V下垂或者无功-电压PI调节。最简单的做法是V_ref V0 n_q * (Q_ref - Q)这个和下垂控制基本一致。如果要模拟励磁系统的惯性可以加一个一阶惯性环节时间常数取0.05到0.1秒模拟励磁绕组的时间常数。电流参考生成模块把电压参考幅值和相位合成三相电压参考信号在d-q坐标系下生成V_d_ref和V_q_ref再送入与下垂控制相同的电压电流双闭环和PWM调制模块。这意味着两种策略的底层执行器是通用的区别只在于最外层的“功率-电压/频率生成”逻辑。做对比仿真时这套模块化设计非常方便只需要切换最外层的策略模块其他部分完全复用保证了对照实验的一致性。4. 两种策略的性能对比实验设计4.1 对比指标体系与实验场景设置既然要做性能研究就要有一组明确的对比指标。我建议从四个维度出发频率动态响应、功率分配精度、电压支撑能力、以及并网/孤岛切换适应性。每个维度下再细分指标频率动态包括频率最大偏差、频率变化率、恢复时间功率分配看稳态误差和各机组功率比值电压支撑看负荷阶跃后电压跌落深度和恢复时间并网切换看冲击电流和暂态振荡。在Simulink中搭建一个双机组并联微电网系统来做对比实验。两台逆变器容量各10kW额定电压380V额定频率50Hz经LC滤波后接到一条公共母线上母线上带可变负载R-L负载负载可以通过断路器在指定时刻切入切出。两台逆变器分别配置为下垂控制和VSG控制其余参数保持一致。仿真时长设为5秒0到1秒空载运行1秒时刻投入50%额定负载3秒时刻再投入另外50%负载用来观察负荷阶跃下两种策略的响应。4.2 仿真结果对比频率响应与动态过程负载在1秒阶跃后下垂控制机组的频率从50Hz平滑下降最终稳定在49.8Hz附近过程大约持续0.3到0.5秒基本看不到振荡。VSG机组的频率响应则出现明显的二阶系统特征频率开始下降的瞬间变化率较小但中间会出现一个低幅度的频率超调回摆然后再稳定到同一稳态值。这正是虚拟惯量起作用的表现频率变化的“锐度”被显著缓解代价是调节时间略有加长。如果把频率变化率作为纵轴下垂控制的频率变化率几乎在阶跃瞬间就达到最大值而VSG的频率变化率峰值被限制在较低水平峰值出现的时间也推迟了。这在真实电网中意味着VSG并网逆变器对电网频率变化的冲击更小更容易满足并网导则中频率变化率的限值要求。功率响应方面两种策略的稳态功率分配精度几乎一致负荷增加后两台机组各自承担一半这印证了前面对比的理论稳态外特性相同静态精度无大差异。动态上VSG的有功输出在阶跃后先出现一个约5%到10%的功率过冲大约0.5秒后回落而下垂控制则单调上升至稳态值。这个过冲的幅度跟J和D_p的取值直接相关J越大过冲越大D_p越大过冲越小。在做对比分析的时候务必记录参数组合否则会得出“VSG动态响应不如下垂”这种不完整的结论。4.3 并网模式与负荷切换场景下的表现差异进一步测试并网模式下两种策略对电网频率扰动的响应。在t2秒时让电网频率从50Hz突然降到49.8Hz持续0.5秒后恢复。下垂控制的机组跟着频率走输出功率略有小幅波动然后回到原值VSG机组在这个过程中表现出明显的惯性支撑行为频率下跌的一瞬间VSG检测到ω与ω0出现偏差自动向电网输出一个额外的有功功率脉冲这个脉冲的幅度和时间与虚拟惯量J成正比。如果电网侧此时存在缺口这个脉冲就相当于一次短暂的有功支援。这就是VSG相对下垂控制最核心的竞争力和卖点。负荷切换场景下还有一个容易被忽视但很重要的行为就是两台机组之间的功率振荡模式。下垂控制机组之间因为只有纯积分关系动态上功率分配是解耦的负荷阶跃后不会有相互拖拽。VSG机组之间则相当于两台“虚拟同步发电机”通过线路电抗互联存在一个机电振荡模式如果J设置过大、线路电抗偏小两台VSG之间可能会出现功率振荡振荡频率一般在几赫兹到十几赫兹之间。这个现象在孤岛微电网中尤其需要关注。5. Simulink仿真中的常见问题与调试技巧5.1 仿真发散与数值稳定性问题新手做这类仿真最容易遇到的问题是Simulink仿真一步都跑不动报错集中在“singular”或者“zero crossing”这两个地方。第一个原因是主电路和控制电路之间的信号接入方式不对比如把Simulink信号直接当电气信号接到了电气端子上。解决办法是在电源、测量模块和断路器位置加上合适的缓冲电阻用Simscape Electrical的Solver Configuration模块作为参考控制信号通过受控电压源或受控电流源接入主电路不要直接短接。第二个常见问题是连续系统的代数环。功率计算和下垂控制之间如果直接反馈会出现代数环Simulink迭代求解器有时能解但速度极慢而且容易提示“Algebraic loop detected”。解决思路有两个一是用Simulink的memory模块或者Unit Delay模块切成离散模式二是把功率测量后的一阶低通滤波器显式写出来因为低通滤波天然切断了代数环这也是我在2.2中提到低通滤波器不只为了滤纹波还有一个重要作用就是消除代数环。第三个是离散仿真步长的选择问题。如果使用离散求解器固定步长建议设为PWM载波周期的一百分之一到十分之一即载波10kHz时步长取0.2到1微秒。步长太大会出现PWM波形畸变步长太小仿真速度感人。如果你只是在做控制策略验证可以把载波频率降下来比如从10kHz降到5kHz主电路电感电容参数相应调整仿真时间能减少一大半趋势定性结论不变。5.2 参数初值设置与运行状态检查我最想强调的是积分器初值和PLL初这个坑。两种控制策略在外环都含有积分器如果积分器初值设为0而并网瞬间电网电压相位不为0那么逆变器输出电压和电网电压之间会有一个巨大的相位差导致并网瞬间出现冲击电流仿真直接发散。正确做法是并网前先用锁相环锁定电网相位把这个相位作为θ的初始值。具体在Simulink里可以做一个小开关并网之前用外部PLL的相位作为调制波的相位参考并网命令到达后切换到策略算法计算的相位参考。切换瞬间两个相位几乎一致就不会出现冲击。还有积分器限幅问题。PI调节器的输出一定要设置限幅否则在启动瞬间积分器疯狂输出控制器饱和后面一旦误差方向改变需要很长时间才能退饱和仿真曲线会拖出一条长长的“尾巴”看着像振荡实际上只是积分饱和。电流环输出限幅一般设置在直流母线电压的0.8倍以下电压环输出限幅设置为允许的最大电流参考值。运行前用Simulink的Powergui模块选择“Continuous”还是“Discrete”模式并在电气系统中放置必要的电压电流测量模块。建议在每个测量点后加一个To Workspace模块把仿真数据导出到工作区方便后续画图对比。仿真完成后先在命令窗口跑一次线性分析检查系统在稳态工作点附近是否存在明显的极点飘到右半平面如果有优先检查PLL带宽和电流环带宽之间的配合再检查电流环和VSG外环之间的带宽分离是否足够。5.3 提高仿真效率与模型可维护性这个研究涉及多次参数对比模型的可维护性会直接影响工作效率。我习惯把控制器封装成原子子系统外面留出参数对话框通过Matlab脚本批量修改参数并循环仿真。比如用Param.Sw和Param.Sim函数批量跑参数扫描把每次仿真的频率偏差最大值、调节时间等指标自动记录到结构体里最后一次性画对比曲线。这个流程不仅省时间还能避免手动改参数时改错遗漏。另一个技巧是尽量使用基于模型设计MBD的流程把Simulink模型里的核心控制模块封装成独立的子系统配置好注释和数据字典。这套模型在验证完策略之后可以直接用Embedded Coder生成C代码部署到实时仿真平台或者控制器原型上做硬件在环测试。我有一次就是拿着这个模型把VSG算法快速移植到了实时仿真器里整个过程只花了不到一个星期这个通用性就是Simulink建模比手写C代码强的地方。6. 扩展思考从仿真到工程落地仿真跑通只是第一步真正要把构网型控制放到工程里还有几个后面的坎。第一是跟并网导则的对接实际并网系统对频率适应性、电压穿越、故障电流都有明确的指标要求仿真里为了对比方便往往做了很多理想化假设比如直流母线电压恒定、电网等效为理想电压源真实环境中这些因素都会成为扰动源。第二是硬件在环验证控制器的运算延迟、AD采样延迟、PWM死区时间都会改变系统的等效阻尼仿真参数到了实物上大概率需要重新微调尤其是VSG的虚拟惯量和阻尼参数实物上对电网频率波动的响应会有明显的滞后。还有一个方向值得去做就是跟更前沿的构网型控制策略做比较比如匹配控制matching control和基于虚拟振荡器的控制virtual oscillator control以及跟AI结合的自适应参数整定方法。这个研究课题其实不限于电池储能变流器风电变流器、STATCOM、UPFC这些场合都可以用同样的对比框架做性能测试。最后还是说回这篇文章的源头Simulink模型本身只是工具真正有价值的是你对控制策略的理解深度和对比较指标的选择。下垂控制简单可靠、便于工程落地VSG动态性能优越、对弱电网更友好但也需要更精细的参数整定和稳定性分析。没有一种策略是放之四海而皆准的关键是先想明白你的系统最紧缺的是什么——是稳态功率分配精度还是暂态频率支撑能力——然后再根据这个判断去选择方案、设计参数、展开对比这样你的研究成果才真正具备工程参考价值。
返回列表