ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

DSOGI-PLL在畸变电网下的锁相原理与APF仿真工程实践

DSOGI-PLL在畸变电网下的锁相原理与APF仿真工程实践 做有源电力滤波器APF仿真时最容易让人心里没底的模块往往不是谐波提取也不是电流环而是锁相环。尤其是电网电压开始不平衡、含有背景谐波时普通锁相环输出的角度会抖APF补偿效果跟着一起恶化。这时候就需要DSOGI-PLL这类结构把“畸变电网下的相位参考”这件事做扎实。DSOGI-PLL 的全称是 Dual Second Order Generalized Integrator PLL中文通常叫“双二阶广义积分器锁相环”。在APF控制链里它不是一个孤立模块而是整个补偿策略的地基。这篇内容重点往下拆原理层为什么这样设计建模时怎么把它从一张结构图变成仿真算例以及真正调试时会遇到哪些比原理更麻烦的问题。我更愿意把 DSOGI-PLL 理解成一句话它不是直接去“锁相”而是先把电网电压加工成一套干净的正序基波分量再交给后面的锁相环去锁。这意味着判断它好不好不能只看锁出来的角度是否稳定还要看前面那条加工链路是否可靠。1. 为什么APF控制必须较真锁相环1.1 APF控制链路中锁相环的位置先看APF的典型控制链路。很多人会先盯谐波提取算法比如瞬时无功功率理论或基于傅里叶的方法再盯电流环PI参数。锁相环看起来只是给坐标变换提供一个codesin/code和codecos/code信号容易被认为“差不多能锁住就行”。但真实调试中问题往往出在这个“差不多”上。APF的谐波补偿电流需要参考电网电压相位把负载电流分解到同步旋转坐标系。相位不准dq轴上的分量就会耦合谐波指令算不准电流环跟踪的参考值本身是错的。后面PI调得再好补偿效果也有限。锁相环输出的角度一旦含有波动补偿电流里会出现对应频率的波动甚至放大某些谐波。所以APF里对锁相环的要求不是“能锁住”而是“在不平衡和畸变电网下依然提供基波正序的稳定相位”。1.2 SRF-PLL 单同步坐标系锁相环的局限传统做法是 SRF-PLL即单同步坐标系锁相环。它把三相电压经Clark变换得到 αβ 分量再经Park变换到dq轴通过控制 q 轴分量为零来锁定相位。这个思路很直观把三相交流量变成一个直流分量然后用PI调节器把 q 轴分量调零。问题是一旦电网电压中带有负序分量和谐波分量Park变换后的 q 轴分量不再是一个干净直流而是叠加了二倍频波动和高频分量。为了压住这些波动只能把PI带宽取得很低结果锁相环动态响应变慢。电网电压发生跌落或相位跳变时锁相环要花很长时间才能重新跟上。换句话说SRF-PLL在理想电网下足够好用但在APF真正需要投入的工业现场——比如电网电压不平衡、背景谐波明显、电压跌落频发——就显得不够用。1.3 DSOGI-PLL 解决什么问题DSOGI-PLL的思路不是把PI带宽拉低去硬扛干扰而是在锁相之前先对电压进行“提纯”。它先用两个SOGI二阶广义积分器分别对 α 轴和 β 轴的电压生成一对正交信号然后通过正负序计算把电压分解成正序分量和负序分量。最终只把基波正序分量送进SRF-PLL。这样一来SRF-PLL前端拿到的输入已经比较接近理想状态它可以用相对适中的带宽完成锁相动态和稳态之间更容易平衡。所以从解决的问题来看DSOGI-PLL真正解决的不是“锁相环这个模块”的问题而是“锁相环之前的信号质量”问题。信号前处理做得好后面简单的PI也能稳定工作。2. DSOGI-PLL的结构是“先分质量再锁相位”2.1 SOGI 正交信号发生器从单相交流到两相静止坐标很多介绍DSOGI-PLL的文章会直接从三相电压讲起但建议先看单个SOGI。因为在 αβ 静止坐标系里SOGI的作用是把一路交流信号变换出两路相位差约90度的正交信号。对三相APF而言Clark变换已经提供了 αβ 两路信号。按道理有了两路信号再送到SRF-PLL的Park变换就够了。问题是这两路信号不平衡时会互相影响超前滞后关系会变形。SOGI做的是让 α 轴和 β 轴分别有一个“正交发生器”即使输入信号有畸变也能生成相对稳定的vα、qvα和vβ、qvβ。这里的重点不是“生成正交信号”本身而是SOGI对输入信号有一定的滤波能力。它本质上是一个谐振频率跟踪在电网基频附近的带通结构。对基波附近的分量通过对远离谐振频率的分量衰减。这带来的直接好处是即使在畸变电网下vα、vβ已经被过滤了一遍不再是原始的、带着大量谐波的母线电压。2.2 正负序分离为什么必须分离三相电网电压不平衡时用对称分量法可以分解成正序、负序、零序三组分量。在APF的三线制系统中零序通常可以忽略但负序不能忽略。负序分量在abc坐标系和αβ坐标系里都存在。如果不去除负序送到SRF-PLL后它会在dq轴上表现为二倍频扰动。这就是传统SRF-PLL在不平衡电网下输出角度波动的根本原因之一。DSOGI-PLL使用“双SOGI”的原因就在这里α轴和β轴各需要一个SOGI生成各自的正交信号后通过简单的代数运算把正序分量提取出来。正负序分离公式在不同资料里写法略有差异但思路一致。常见形式如下vα 0.5 * (vα - qvβ) vβ 0.5 * (vβ qvα)其中vα、vβ是SOGI的同相输出qvα、qvβ是SOGI的正交输出。至于负序分量计算方式类似但符号相反通常用在负序检测或某些不平衡补偿策略中。2.3 SRF-PLL 锁相只锁正序基波正负序分离之后得到的vα、vβ已经去掉了负序同时因为SOGI的滤波作用高次谐波也被明显衰减。这时再进入SRF-PLLq轴分量的波动会小很多PI控制器不必过度压低带宽因此能保持相对更快的动态响应。这里有一个容易被忽略的点不是DSOGI-PLL里的SRF-PLL本身有了什么高级改进而是它输入信号变了。同样的PI调节器前端信号质量不同锁相结果也会完全不同。2.4 为什么不直接用一个高阶滤波器把电压滤干净可能会想到既然电网电压有谐波那把谐波滤掉不就行了比如先加低通滤波器再进SRF-PLL。低通滤波器的问题在于电网基波频率并不是固定不变的。理想电网是50Hz实际可能在49.5Hz到50.5Hz之间变化。低通滤波器的截止频率如果卡得太低会对相位引入明显滞后卡得太高又压不住谐波。SOGI的优势在于它的谐振频率是可以跟着电网频率调整的。如果做频率自适应可以让SOGI的中心频率跟随电网频率变化这样既能保持对基波的通过能力又能对偏离基波的分量形成抑制。这也是它叫“广义积分器”的原因它在谐振点附近的积分特性非常窄。简单说DSOGI-PLL不是“把锁相环做得更高级”而是先做了一个频率选择能力更强的信号前处理再把处理后的正序基波交给锁相环。这个设计思想对APF、SVG、并网逆变器这类电力电子装置都适用。3. 数学建模从传递函数到离散化3.1 SOGI 的传递函数与关键参数把DSOGI-PLL用于建模分析时首先要写出SOGI的传递函数。SOGI的典型结构可以由两个积分器加一个比例增益组成。以输入v为例同相输出v和正交输出qv的传递函数可写成D(s) v / v k * ω * s / (s^2 k * ω * s ω^2) Q(s) qv / v k * ω^2 / (s^2 k * ω * s ω^2)其中ω是SOGI的谐振频率通常取电网基波角频率比如2 * π * 50。k是阻尼系数也叫增益系数它决定了SOGI的带宽和滤波能力。从传递函数可以看出SOGI在谐振频率附近相当于带通滤波器正交输出则更接近一个低通特性。两者配合可以在某一频率附近构造一套正交分量。3.2 阻尼系数和中心频率的选择k值是建模时最需要关注的参数。k越大SOGI的带宽越宽动态响应越快但滤波能力变差输出里的谐波残留更多。k越小滤波效果越好但响应变慢而且中心频率附近的相位滞后会变大。在常见APF控制里k的取值常在0.5到1.5之间。更具体地说如果电网畸变较严重会倾向取小一点比如0.6左右如果更关注动态响应会取接近1或稍大于1。注意具体数值不能脱离你的离散化方式和外部滤波器结构。很多论文给出的参数只是一个起点不能直接抄到所有场景。建模时应该把k做成可调参数通过仿真观察不同取值下的输出波形。另外这里ω的选择也值得注意。如果电网频率波动明显应将ω做成由频率自适应环节输出的实时值而不是固定写死2 * π * 50。3.3 整体结构从三相电压到锁相角度建模时可以把DSOGI-PLL拆成几个明确层级Clark变换将ua、ub、uc变换到 αβ 静止坐标系得到vα和vβ。双SOGI正交生成对vα生成vα和qvα对vβ生成vβ和qvβ。正负序分离用公式提取vα和vβ。Park变换把vα和vβ变换到 dq 旋转坐标系。PI调节器与归一化/限幅控制 q 轴分量为零输出频率信号。积分器由角频率累积得到相位角度 θ再反馈给Park变换。这个结构不是“造一个模型”而是建模时的功能划分。在仿真环境里按这个划分搭模型比把所有环节写成一个函数更容易排查问题。3.4 离散化实现建议SOGI包含积分环节。放到数字控制器里需要离散化。常见选择有前向欧拉、后向欧拉、双线性变换Tustin等。不同离散化方法对采样步长和频率响应的影响差异明显。简单来说双线性变换不会改变稳定性但在高频段会有频率压缩前向欧拉实现简单但采样频率不够高时容易失真。在仿真阶段如果用的是连续模块可以先把原理跑通。但工程移植阶段至少要做一次离散化验证。因为连续域里表现良好的参数离散化后可能会出现过冲、震荡甚至相位误差。一个通用建议是仿真步长或采样周期要足够小保证SOGI谐振频率远小于采样频率的1/10否则离散误差会变得明显。对50Hz基波如果采样频率是10kHz有约200个采样点离散化通常可控如果采样频率降到2kHz只有40个点这时候就需要重新设计参数并认真验证离散化方式。注意一旦确定某一种离散化方法后续SOGI模块、正负序分离模块和SRF-PLL最好在同一控制周期内计算避免引入额外的传输延迟。4. 仿真模型搭建路径4.1 先明确建模目标在动手搭仿真之前先确认这次建模要回答什么问题。如果目标是验证DSOGI-PLL在电压不平衡下的锁相效果那重点应该放在三相电压源、Clark变换、SOGI、正负序分离和SRF-PLL这条链路不需要先把APF主电路和电流环带进来。如果目标是验证APF整体补偿效果那锁相环应该作为子系统先单独验证再接进主电路。一步到位搭完整模型锁相环出问题时很可能会被误判成电流环参数问题。4.2 最小可运行模型搭建步骤一个适合搭仿真的步骤可以是这样第一步生成三相测试电压源。先用理想三相电压源跑通。相位和幅值都设置成标准值比如220V相电压、50Hz。这一阶段DSOGI-PLL的输出应该非常接近传统SRF-PLL。第二步构造不平衡或畸变工况。在abc三相电压上叠加负序分量或某个典型谐波比如5次谐波。逐步增加比例观察锁相环输出角度的变化。建议不要一开始就做极限工况先加入5%到10%的负序分量更容易看到SOGI滤波和正负序分离带来的效果。第三步把Clark变换后的信号引入双SOGI模块。在仿真环境里可以用内置模块也可以自己写代码。我的习惯是先自己用传递函数或差分方程搭一个“代码版”因为后续做离散化验证时代码版和控制器里的实现方式更接近。第四步接正负序分离模块。先不要接SRF-PLL而是直接观察分离出来的正序分量。确认正序电压的幅值、相位满足预期后再接SRF-PLL。第五步接SRF-PLL并观察θ。注意观察两个量一个是稳态角度是否平滑另一个是动态过程中角度是否出现跳变。4.3 如何模拟不平衡和畸变电网仿真里模拟不平衡电网电压最灵活的方式不是直接改三相电源参数而是先构造正序、负序、零序分量再反变换成abc三相电压。假设要模拟含负序的工况可以构造一组正序三相电压加上一组负序三相电压。负序的相序与正序相反。加入5次谐波时注意其相序也很有讲究在abc坐标系下5次谐波是负序性质7次谐波是正序性质但锁相环最关心的是基波负序和偶次、低次谐波的影响。在测试信号里加入阶跃变化也很有用。比如在第0.2秒突然使某相电压幅值下降20%这是模拟电压暂降。DSOGI-PLL对这个扰动的响应速度比稳态滤波效果更能反映真实控制能力。4.4 怎么“看”仿真结果很多新手只盯着锁相环输出的 θ 波形看到平滑就认为正常。这只是第一步。更好的做法是同时观测以下信号vα与原始vα的对比确认SOGI是否有效滤除了谐波。qvα与vα的幅值比和相位差确认正交性能。正序分量vα、vβ的轨迹理想情况下应该是幅值稳定、相位平滑的旋转向量。Park变换后的 q 轴电压观察它的稳态纹波。θ 与电网A相电压过零点的时间关系确认锁相角度没有固定偏置。如果只看 θ很多中间环节的问题会被掩盖。比如SOGI参数不当输出角度可能看起来平滑但相位偏了一个角度这个偏差在小信号仿真里不容易发现一旦加入电流补偿就会出现系统性的坐标变换误差。5. 参数设计、验证和调试方法5.1 参数调整顺序DSOGI-PLL需要设计的参数包括SOGI的比例系数k、谐振频率ω、SRF-PLL中PI调节器的比例系数和积分系数以及可能的外部低通滤波器时间常数。我的建议是先从SOGI开始调再调SRF-PLL不要反过来。如果SOGI参数没整定好输出正序分量里还带着波动后面再怎么调PI也压不住。反过来如果SOGI已经能提供较干净的正序基波SRF-PLL的PI可以按传统同步坐标系锁相环的方法设计不需要为了对抗扰动而把带宽压到极低。5.2 一张可参考的调试表下面这张表不针对特定电压等级只提供一个检查框架。症状可能原因优先检查项锁相角度稳态波动大负序或谐波残留过多增大SOGI的滤波能力、降低k跟踪速度慢SOGI带宽太低或PI带宽太低适当增大k再评估PI两倍频抑制电压跳变后角度震荡SOGI动态响应不够或PI相位裕量不足分两段调先单独整定SOGI再整定SRF-PLL输出角度有固定偏置正负序公式符号与Park变换方向不匹配检查坐标系定义和公式符号频率波动时性能变差ω没有自适应或离散误差大加入频率自适应或减小采样周期仿真能跑但硬件表现差离散化方法不匹配或采样噪声检查离散方式增加滤波保护调度时建议把参数写成变量不要反复在图形界面里改数字。这样便于以后跑参数扫描。5.3 排查链路先现象后模块DSOGI-PLL出问题时可以按下面顺序排查不要直接怀疑PI参数。先看输入三相电压。ua、ub、uc是否已经畸变畸变程度是多少有没有直流偏移再看Clark变换结果。如果Clark变换公式里的系数用错后面所有符号推导都会乱掉。再看SOGI两个输出。vα是否和vα相位一致qvα是否有接近90度的滞后幅值是否接近再看正序分量。正序分离后的vα、vβ是否还有负序残留可以用负序分量观测值来验证。再看SRF-PLL内部状态。q轴电压是否已经收敛到0附近频率输出是否在收敛后保持稳定最后看离散化环节。仿真步长或采样周期是否合适每个模块的计算顺序是否引入额外延迟实际调试时这个顺序能避免大量无效调参。很多人一看到角度波形不好就去改PI结果调了很久都没用因为问题在前面SOGI或者Clark变换符号方向错了。一个常见建议把每个模块的中间量都接到一个多通道示波器或数据记录模块里记录一段故障工况下的波形。没有中间量记录排查基本靠猜。6. 工程落地中比原理更麻烦的几个问题6.1 谐波环境下相位输出为什么还会抖SOGI本身有滤波能力但它不是万能的。如果电网电压里含有很强的低次谐波比如3次、5次、7次SOGI输出中仍会残留一部分高频分量。这些残留进入SRF-PLL后最终体现在角度上的可能不是大范围抖动而是每个工频周期内的小幅起伏。这种小幅起伏在APF补偿中不能忽略。因为锁相角度除了用于坐标变换有时还会用于生成同步信号。角度上的小幅波动到了电流环会被坐标变换环节放大成对应频率的纹波。如果遇到这个问题可以先检查SOGI输出波形是否干净而不是急着重调SOGI参数。因为如果SOGI已经尽力残留谐波仍然偏大说明电网谐波太强可能需要在前端加一个额外的陷波器或低通滤波器为SOGI提供更干净的输入。6.2 直流偏移的影响电网电压采样通道如果存在直流偏移从原理图上很难发现。SOGI的正交输出特性决定了它对直流分量有一定的响应。直流偏移可能让SOGI输出波形出现不对称最终影响锁相角的精度。在APF控制器里采样链路可能经过电压互感器、调理电路和AD转换每一级都可能引入直流偏置。要规避这个问题通常有两种做法在进入DSOGI-PLL之前先对采样信号做一次周期性直流分量滤除或采样校准。在SOGI输出之后检查是否有直流偏置残留。这个环节容易被低级错误影响比如采样标幺化时把基准值弄错看似是直流偏置其实是标幺值转换错误。6.3 频率自适应与电网变动的权衡DSOGI中的 ω 如果固定为50Hz而实际电网频率偏差较大SOGI的中心频率会和真实基波频率不一致。结果就是输出的正序分量幅值下降、相位偏转。把 ω 做成自适应需要先获得电网频率。频率一般可以来自SRF-PLL的频率输出也可以来自专门的正交信号发生器。但一旦把频率输出再反馈给SOGI模型里就多了一条环路稳定性分析和参数设计都比固定频率更复杂。工程中常见的策略是先让锁相环在一个较宽的范围内具备频率跟踪能力再通过限制频率变化速率避免短时干扰导致频率剧烈跳动。不要一上来自适应就全带宽放开否则电网电压稍有一点扰动输出频率就可能来回变化。6.4 从仿真到控制器移植的差异仿真跑得正常的DSOGI-PLL移植到DSP或ARM中时最常见的差异不在算法本身而在采样延迟和控制时序。仿真里的采样是理想化的很多时候信号同步完成。而真实控制器中AD采样需要时间计算需要时间PWM更新也需要时间。如果锁相环的采样时刻和主电路电压过零点相位关系不固定角度会出现一个随功率因数或开关状态变化的小波动。所以从仿真到硬件至少要做两件事把SOGI和SRF-PLL模块改成和控制器一致的离散化格式。记录并补偿从电压采样到输出角度更新之间的固定延时。如果不做延时补偿就相当于锁相环输出的角度对应的并不是“当前这一刻”的电网电压而是一两个控制周期之前的相位。这个误差在50Hz下看似不大但对谐波补偿的高次电流会产生明显影响。7. 回到主线DSOGI-PLL在APF中的边界与沉淀7.1 适用边界它适合谁不适合谁DSOGI-PLL非常适合以下场景APF需要在不平衡电网下工作。电网电压含有较明显背景谐波。系统对相位参考的稳态精度和动态响应都有要求。控制器的采样频率足够高能够支撑SOGI的离散化实现。但它也不是万能模块。如果电网电压畸变极强、谐波含量很高单纯靠DSOGI-PLL的SOGI滤波可能不够需要额外使用陷波器、重复控制或其他滤波前处理。如果三相电压严重不平衡且含零序而系统是三相四线制就要单独考虑零序分量。DSOGI-PLL通常处理的是三线制或已将零序剔除的信号不能把零序问题自动解决。如果电网频率变化非常剧烈比如在微电网或弱电网场景DSOGI-PLL中的频率自适应设计复杂度会明显上升此时还要评估是否有更合适的锁相结构。如果只是为了理想电网下锁相用传统SRF-PLL就够了。DSOGI-PLL增加的双SOGI模块和正负序分离逻辑会占用额外计算资源也带来了额外的整定工作量。没有必要为了“先进”而硬上复杂方案。7.2 怎样把一次建模沉淀成可复用能力这次搭建DSOGI-PLL模型建议不要只为了交一个仿真结果而是把它改成一套可以复用的测试用例。更具体的做法是建立一个独立的标准测试环境三相电压源支持正序、负序、零序和谐波叠加。可以把电压暂降、相位跳变、频率阶跃定义成事件按时间触发。将DSOGI-PLL模块化成独立子模块输入输出标准化。把中间量记录保存下来便于后续做性能对比。这样做的好处是以后做SVG、并网逆变器或其他并网装置时不需要重新搭一遍锁相环测试环境。你可以把同样的不平衡阶跃测试直接跑一遍快速评价新的锁相方案在这个工况下是否可用。回到一开始的判断DSOGI-PLL在APF里的价值不是让锁相环变得更快而是在不理想电网下先把“正序基波”信号提纯让后端的锁相和电流控制都站在一个可靠的地基上。如果最近正在做APF仿真卡在锁相角度不稳建议不要急着调后面电流环的PI。先把SOGI输出和正序分离后的波形记录下来看看前处理是否真正干净。多数时候问题都藏在实际输出波形里。
返回列表