ARTICLE DETAIL

资讯详情

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

UPQC仿真模型搭建全流程:Matlab/Simulink实现谐波与无功补偿

UPQC仿真模型搭建全流程:Matlab/Simulink实现谐波与无功补偿 做电能质量方向仿真UPQC这个概念迟早都会碰上。统一电能质量变换器一台设备同时处理电压和电流两类电能质量问题听着很高级拆开看就是串联有源电力滤波器加并联有源电力滤波器的组合体。我当年第一次搭这个模型光是把两套控制器同时跑稳就折腾了一个多礼拜。这篇文章我把自己在Matlab/Simulink里搭UPQC仿真模型的全过程写出来包括ip-iq检测的具体做法、电压电流补偿指令怎么生成、参数怎么选、模型跑不动的时候怎么排查。做毕业设计、写论文或者搞电能质量治理项目的朋友这篇文章应该能帮你少走不少弯路。1. 先想清楚UPQC到底在解决什么问题模型该怎么搭1.1 为什么单靠APF或DVR不够非要UPQC先说一个很容易被忽略的事实实际的电能质量问题很少是“只有电压问题”或者“只有电流问题”。工厂里大功率整流设备一开电流谐波出来了无功也上来了配电线路电压被畸变电流拖累再叠加电网侧电压暂降这时候你只装一个有源电力滤波器APF电流问题是解决了但电压跌落、电压谐波还是没人管只装动态电压恢复器DVR电压稳住了电流谐波依然在污染上游电网。UPQC的思路很直白串联变流器串在线路里像门卫一样专门盯电压把电压暂降、暂升、谐波、不对称都挡在负载之前并联变流器并在负载旁边专门处理电流谐波和无功像清洁工一样把负载产生的脏电流吸收掉保证电源侧电流干净又平衡。两个变流器共用一条直流母线能量可以双向流动所以整体效率比两套独立装置高占地也小。这就是UPQC存在的核心逻辑。搭建仿真模型之前脑子里有这张“分工图”非常重要。1.2 仿真模型的顶层架构串联加并联加公共直流母线UPQC仿真模型的总体架构并不复杂但信号流很容易绕晕。三相电源出来后依次经过串联耦合变压器进入负载侧并联逆变器通过并网电感并联在负载端。这里记住几个关键点串联部分通过耦合变压器串入线路对外等效成一个受控电压源用来注入补偿电压。负载侧电压等于电源电压减去串联补偿电压控制方向不要搞反。并联部分并联在负载端对外等效成受控电流源用来吸收负载谐波电流、补偿无功同时还要维持直流母线电压稳定。两个三相全桥逆变器VSI共用一条直流母线母线电容是能量缓冲的关键元件。非线性负载通常用一个三相不可控整流桥带阻感负载来模拟这是最标准的谐波源配置。理解信号流向有个小技巧串联侧用的是电压反馈检测点是负载侧三相电压并联侧用的是电流反馈检测点是负载电流和电源电流。ip-iq检测模块放在并联侧输入负载电流和A相电压相位输出谐波与无功补偿指令。把这些信号关系理清楚Simulink建模就成功了一半。1.3 控制思路的分叉点补偿什么、用什么做参考搭建控制器之前必须回答一个问题补偿的参考量从哪来这直接决定了整套控制算法的结构。串联侧的参考目标很简单让负载侧三相电压始终保持为标准、对称、正弦的额定电压。具体做法是检测负载侧电压提取基波正序分量用理想参考电压减去实际电压差值就是串联逆变器需要注入的补偿电压指令。电压畸变严重、跌落严重补偿指令就大逆变器输出能力要留够裕量。并联侧的参考目标就灵活一些。如果只补偿谐波那参考指令是负载电流中的谐波分量如果要同时做到单位功率因数那还要把基波无功也剔掉让电源侧电流只保留基波有功。ip-iq检测干的就是这件事——把负载电流分解成基波正序有功电流、基波正序无功电流和谐波分量然后按你的目标组合出补偿指令。控制环路的配置也有讲究。串联侧和并联侧都需要电流内环和电压外环的配合但带宽设计完全不同。电压环带宽低主要稳定直流母线和输出电压幅值电流环带宽高负责快速跟踪补偿指令。这些参数后面详细说。2. ip-iq检测谐波和无功指令是怎么算出来的2.1 瞬时无功功率理论与ip-iq法的关系ip-iq检测方法基于日本学者赤木泰文提出的瞬时无功功率理论核心思路是把三相电流从abc静止坐标系变换到dq同步旋转坐标系在旋转坐标系里基波正序有功电流变成了直流分量谐波和无功则表现为交流分量或正交分量。这样一来用低通滤波器把直流分量滤出来就能知道基波有功电流和基波无功电流的大小剩下的就是需要补偿的谐波和不对称分量。数学表达上先做Clark变换把abc三相电流变到αβ两相静止坐标[ \begin{bmatrix} i_\alpha \ i_\beta \end{bmatrix} \sqrt{\frac{2}{3}} \begin{bmatrix} 1 -\frac{1}{2} -\frac{1}{2} \ 0 \frac{\sqrt{3}}{2} -\frac{\sqrt{3}}{2} \end{bmatrix} \begin{bmatrix} i_a \ i_b \ i_c \end{bmatrix} ]再做Park变换把αβ坐标变到与A相电压基波正序同步旋转的dq坐标[ \begin{bmatrix} i_p \ i_q \end{bmatrix}\begin{bmatrix} \sin\omega t -\cos\omega t \ -\cos\omega t -\sin\omega t \end{bmatrix} \begin{bmatrix} i_\alpha \ i_\beta \end{bmatrix} ]这里的ip就是瞬时有功电流iq就是瞬时无功电流。关键在于sinωt和cosωt必须由锁相环PLL从A相电压基波正序分量中提取而不是直接用畸变电压过零检测否则相位不准检测结果会跟着乱。这也是ip-iq法相比p-q法在电压畸变条件下更有优势的原因——它只依赖A相电压的相位信息对电压幅值畸变不敏感。2.2 Simulink里搭ip-iq检测模块的实操步骤搭建ip-iq检测模块时我没有用太多自定义代码直接在Simulink库里组合模块这样调试和改参数都方便。具体步骤采集三相负载电流i_a、i_b、i_c如果有零序分量要先做Clark变换前的去零序处理三相三线制下通常忽略零序。用PLL锁相环锁A相电压一般是负载侧电压或电源侧电压输出sinωt和cosωt。Simulink自带的PLL模块在SimPowerSystems库的Extra Library里使用时要设置好初始频率。把三相电流做Clark变换得到iα、iβ再搭一个2×2矩阵变换得到ip和iq。这里可以用Gain模块把变换矩阵系数直接填进去。ip和iq各接一个低通滤波器LPF提取直流分量。滤波器的输出就是基波正序有功电流和基波正序无功电流对应的直流值。如果目标是只补偿谐波补偿指令就是原始ip减去低通后的ipiq通道则全部保留因为iq的直流对应基波无功也要补偿掉如果目标是谐波加无功全补就把iq整个通道反变换回去。把要补偿的ip分量和iq分量经过反变换得到三相补偿电流指令i_ca、i_cb、i_cc送给电流内环。实际操作中有一个细节如果负载电流三相不对称dq变换后的ip、iq里除了直流分量还会出现2倍频分量低通滤波器要把这部分也滤掉所以滤波器截止频率不能太高否则补偿效果会打折扣。2.3 低通滤波器是检测精度的命门怎么选参数低通滤波器是ip-iq检测里最影响精度的环节。滤波器截止频率选高了滤不干净dq轴上的谐波纹波混进直流分量导致补偿指令里残留大量不需要的分量截止频率选低了动态响应太慢负载突变时补偿跟不上直流母线电压也会跟着波动。我的经验是50Hz工频系统里二阶Butterworth低通截止频率取50到80Hz比较合适。我最终定在75Hz阻尼比0.707兼顾了滤波效果和动态响应。如果用一阶低通建议截止频率放到30到50Hz但相位延迟会大一些。需要动态补偿性能的场景可以考虑用平均值法替代低通滤波器在一个工频周期内对ip、iq求平均动态响应固定为10ms左右效果也不错。滤波器的实现方式也有讲究。Simulink里可以直接用Transfer Fcn模块但连续传递函数在变步长仿真里容易引起数值问题建议用powergui里设置离散仿真传递函数用离散化的形式或者直接用Digital Filter Design模块。我实测下来离散滤波器在固定步长仿真里更稳定波形也干净。3. 电压电流补偿的完整闭环从指令值到PWM波3.1 串联侧电压补偿参考指令怎么生成串联侧的核心任务是把负载电压稳定在额定值。我用的是“参考电压减实际电压”的偏差控制思路。三相参考电压直接由标准正弦信号生成幅值设为系统额定电压的峰值频率50Hz三相互差120度。实际负载侧电压经过测量后与参考电压做差得到误差信号这个误差就是串联补偿电压的指令。问题来了误差信号是正弦量直接送PI控制器会出现稳态误差因为PI对交流信号做不到无差跟踪。这里有两种常用方案。第一种是把三相误差信号变换到dq同步旋转坐标系在dq域里误差变成直流量用PI控制就能实现无差跟踪输出再反变换回abc域。第二种是直接在abc域用PR谐振控制器在基波频率处提供高增益同样能实现无差跟踪。我推荐用前者因为Simulink库自带abc到dq变换模块搭起来快。串联侧还有两个容易踩的坑。一个是补偿电压限幅电源电压跌落幅度超过逆变器能力时指令电压会超过直流母线能支撑的最大值必须加一个饱和限幅模块否则逆变器过调制输出波形严重畸变。另一个是串联变压器的极性接反了补偿电压方向反了不但不补偿还会加重电压偏差检查波形时如果发现负载电压更差了优先怀疑这里。3.2 并联侧电流补偿电流内环和直流母线电压外环怎么配合并联侧承担的任务更重既要输出补偿电流又要维持直流母线电压。母线电压从哪来从电源侧吸收基波有功电流来补充。所以并联侧的控制结构一定是双闭环外环是直流母线电压环内环是补偿电流环。外环的设计思路直流母线电压实测值与参考值比如700V做差经过PI调节器输出一个d轴电流指令。这个指令代表为了维持直流母线电压需要从电源吸收的基波有功电流大小它叠加上ip-iq检测出来的补偿电流指令一起作为内环的电流参考。有一点要记住只有d轴有功电流对直流母线电压有影响q轴无功电流指令完全由补偿需求决定。内环的设计在dq同步旋转坐标系下用PI控制器对补偿电流指令进行跟踪。电流内环的响应速度必须足够快一般带宽设计在500Hz到1000Hz而电压外环带宽只有10到20Hz左右。这么做是为了避免内外环相互作用导致振荡。电流内环输出经过反变换后得到三相调制波送PWM发生器。调试的时候有个很实用的检查方法先把直流母线电压外环断开给一个恒定的d轴电流指令看内环能不能快速跟踪上内环稳了再闭合外环调PI参数。这样一步步来出问题容易定位。3.3 PWM调制方式怎么选滞环还是三角载波电流内环的调制方式直接决定仿真波形和计算量。我用过两种方案说下各自特点。滞环控制把实际补偿电流和指令电流做差差值进入滞环比较器超出环宽就翻转开关管状态。优点是算法极简单动态响应非常快指令跟踪精度高不需要精确知道系统参数缺点是开关频率不固定仿真波形毛刺明显功率器件开关应力大实际工程EMI也难处理。仿真中想快速出效果可以先用滞环验证整个控制思路对不对。三角载波SPWM把电流控制器的输出作为调制波与固定频率三角载波比较生成PWM脉冲开关频率恒定。优点是波形干净谐波频谱集中仿真速度也更快缺点是电流跟踪效果取决于控制器参数参数没整定好会有误差甚至振荡。工程上绝大多数都用这种方案。我的做法是先把模型用滞环跑通验证补偿逻辑没问题之后换成SPWM加PI控制器再把PI参数重新整定一遍。这样既有清晰波形最终仿真速度也快。开关频率我一般设在10kHz到20kHz太高了固定步长仿真会很慢。3.4 仿真模型模块清单我整理了一份UPQC仿真模型的模块清单方便对照搭建模块库位置作用Three-Phase SourceSimPowerSystems / Electrical Sources模拟三相电源可设置谐波和暂降Series TransformerSimPowerSystems / Elements串联耦合变压器注入补偿电压Universal BridgeSimPowerSystems / Power Electronics串联/并联逆变桥选IGBT或MOSFETLC FilterRLC元件组合滤除串联逆变器的高频PWM纹波Parallel InductanceRLC元件组合并联逆变器并网电感抑制电流纹波Three-Phase Rectifier RL Load自定义模拟非线性负载谐波源PLLSimPowerSystems / Extra Library提取A相电压相位sin/cosabc_to_dq0 TransformationSimPowerSystems / Measurements坐标变换模块Transfer Fcn / Digital FilterSimulink / Continuous低通滤波器PI ControllerSimulink / Continuous电压外环和电流内环控制PWM GeneratorSimPowerSystems / Extra Library生成SPWM脉冲powerguiSimPowerSystems仿真求解器设置必须放一个这些模块搭好后信号线的命名我建议一开始就规范化比如电压信号用V_pcc、I_load、I_inv等前缀控制信号用ref、err、pwm等后缀。模型复杂之后命名混乱会非常痛苦。4. 参数选型与系统调试流程4.1 直流母线电压怎么定为什么不能乱设直流母线电压是整套系统的能量基础电压低了逆变器输出电压不够补偿不到位电压高了器件耐压和电容成本都上去。工程上估算直流母线电压有个经验公式考虑到SPWM调制方式下逆变器输出线电压峰值最大为直流母线电压的0.866倍要保证补偿电压和电流的瞬时值不超过这个上限。以一个常见的380V/50Hz系统为例三相相电压峰值约为311V。如果串联侧需要补偿30%的电压暂降补偿电压峰值大约是93V。并联侧要补偿谐波和无功电流补偿电流流经并网电感会产生相应压降。综合考虑这两部分直流母线电压取700V左右比较合适。我最终用750V设计留了10%以上的裕量。直流母线电容的容量决定母线电压纹波大小和动态响应速度。整定经验值如下在额定功率P、直流母线电压Vdc、允许电压纹波ΔV的条件下电容C需要满足[ C \geq \frac{P}{2 \cdot \omega \cdot \Delta V \cdot V_{dc}} ]代入P50kWVdc750VΔV取10Vω314rad/s算出来C大约在1万微法级别。仿真模型里我用的4700μF效果足够好电容再大会拖慢仿真速度。4.2 串联变压器、LC滤波器、并网电感参数如何配合这几个无源元件的参数相互牵连不能一个一个孤立选。我按照经验顺序来串联变压器变比决定逆变器输出补偿电压与注入线路电压的比例。直流母线750V时逆变器相电压输出能力约400V峰值变压器变比1:1就够用了。耦合电感变压器漏感要尽量小否则补偿电压在漏感上损失过大。LC滤波器串联逆变器输出的是高频PWM方波必须经过LC低通滤波变成平滑的正弦补偿电压。LC滤波器的谐振频率要远低于开关频率同时要高于基波频率。经验取谐振频率在开关频率的1/10到1/5之间。开关频率10kHz时谐振频率取1kHz左右比如L5mH、C5μF时谐振频率约1kHz设计中注意L、C串并联位置防止滤波器和系统阻抗发生谐振。并网电感并联逆变器的并网电感既滤波又限流电感太小电流纹波大太大动态响应差。经验估算公式如下电流纹波ΔI与直流母线电压Vdc、开关频率fs、电感L的关系为ΔI约等于Vdc/(6·L·fs)具体取决于调制方式。取ΔI为额定电流的20%额定电流100A时Vdc750Vfs10kHz算出来L在毫亨级别实际取3mH到5mH就可以。仿真里我对50kW系统取了5mH电流纹波控制在可接受范围。4.3 从空载到带负载的调试顺序怎么避免一上来就发散一上来就直接跑全模型发散了根本不知道问题在哪。我吃过这个亏之后总结了一套调试顺序效率高很多第一步单独验证ip-iq检测模块。给检测模块输入一个已知的畸变电流波形比如三相整流桥产生的电流观察ip、iq输出和最终补偿指令。核对基波正序有功电流直流分量是否符合理论值谐波分量是否被成功提取。这一步不过关后面所有控制都是白搭。第二步只投并联补偿。断开串联部分让并联逆变器独立工作验证谐波和无功补偿效果。看电源侧电流THD能不能从畸变状态降到5%以下。如果THD降不下来大概率是检测模块或电流内环的问题。第三步只投串联补偿。在电源侧设置一个20%的电压暂降观察负载侧电压波形是否被拉回额定范围。补偿暂态响应速度也在这里一起调。第四步全系统联合运行。把两部分都投入重点观察直流母线电压波动、启动冲击电流和串并联之间的相互影响。如果出现振荡优先检查直流母线外环带宽是否太低或太低以及串联和并联控制器是否共用了同一个PLL信号导致相位冲突。这套调试顺序的核心思路是把复杂问题拆成独立小问题每一步都有明确的验收指标定位效率高很多。5. 常见问题与排查技巧实录5.1 模型跑不通或者仿真发散的排查这是最磨人的阶段。模型一运行就报错或者变量飞上天优先检查以下几处代数环问题反馈信号直接参与同一时刻前向计算时Simulink会提示代数环警告。解决方法是打断环路在反馈路径里加一个Memory模块或者极短延时的一阶惯性环节。步长设置PWM开关频率10kHz时最大步长建议设为2微秒以下。我常用powergui里设离散仿真步长固定5e-6秒这样波形精度和仿真速度能平衡。纯电感回路仿真模型中不允许存在纯电感回路否则电流无法求解。每段电感都必须串联一个小电阻比如0.01欧姆。直流母线初始电压逆变器启动瞬间如果母线电容初始电压为0会有巨大冲击电流。在powergui里设置电容初始电压为参考值启动过程会平缓很多。5.2 补偿效果差、波形毛刺多的原因与对策补偿效果不好先别急着调PI参数按顺序检查看指令波形对不对用Scope同时观察检测模块输出的补偿电流指令和负载实际畸变电流。如果指令本身就错了控制器调再好也没用。看跟踪误差比较实际逆变器输出电流和指令电流的差值。误差大说明电流内环带宽不够或PI参数不合适。误差波形呈低频振荡多半是PI参数增益过大。看PWM死区仿真里死区时间设置太大会引起输出波形畸变我仿真中直接设死区时间为0只保留器件理想特性实际工程再考虑死区补偿。看LC滤波器串联侧LC谐振频率如果落在谐波频段里会出现异常放大波形毛刺变大。按前面方法重新整定谐振频率。5.3 谐波检测不准先检查这三个点ip-iq检测结果不对十有八九是这几个原因锁相环相位不准或锁错信号。PLL必须锁定A相电压基波正序的相位如果电压畸变严重PLL输出里会带纹波需要在PLL前面加一个带通滤波器或者用SRF-PLL加低通环节。坐标变换符号搞错。Park变换矩阵里的sin和cos位置、正负号各资料写法略有不同坐标轴方向不同会导致dq轴对调或者相位偏移。排查方法先输入一组三相对称正弦电流看dq输出是否为恒定的直流量如果不是说明变换矩阵或者PLL相位有问题。低通滤波器截止频率偏高。dq轴上的纹波滤不干净导致基波分量提取不准。把截止频率往下压或者改用平均值法在一个周期内求平均。5.4 仿真越来越慢几个立竿见影的优化方法模型跑到后期步长小、模块多Simulink会越跑越慢。我常用的优化手段使用离散仿真模型而非连续模型powergui里把Simulation Type改为Discrete数值计算量大幅下降。去掉不必要的示波器采样点Scope模块不要每个信号都接用To Workspace按需记录数据。把开关频率从20kHz降到10kHz肉眼几乎分辨不出波形差异但仿真速度快很多。启用Simulink的Accelerator模式加速运行模型较大的时候效果明显。搭UPQC模型的过程回过头看就是一遍遍和细节死磕。T型PLL锁相不稳、低通滤波器参数不合适、串联变压器极性接反这些问题我全都遇到过。每次解决一个对这个系统的理解就深一层。这套模型的价值不只在论文里出几张漂亮的补偿波形图把检测、控制、调制、参数设计整个链路想明白比单纯跑通一个demo重要得多。做仿真就是这样跑出来的波形越丑你越能学到东西。
返回列表