三相有源电力滤器APF仿真 波形从上到下分别是: 电网电流 APF电流 整流性负载电流 APF能够保证电网电流成正弦

最近在搞三相有源电力滤波器(APF)的仿真,发现这货简直就是电网里的Tony老师——专治各种电流造型不服。咱们先看实测效果:电网电流(修完的造型)、APF输出电流(Tony老师的手艺)、整流性负载电流(原始杀马特造型)。

先整段Python代码生成个典型的6脉波整流负载:

import numpy as np
import matplotlib.pyplot as plt

t = np.linspace(0, 0.1, 1000)
fundamental = 20 * np.sin(2*np.pi*50*t)  # 基波50Hz
harmonics = 8*np.sin(6*np.pi*50*t) + 5*np.sin(12*np.pi*50*t)  # 6次、12次谐波
load_current = fundamental + harmonics  # 杀马特造型生成

plt.figure(figsize=(10,4))
plt.plot(t, load_current)
plt.title('整流负载电流-原生态杀马特')
plt.show()

这段代码故意用6次谐波搞事情(整流负载的典型特征),波形看起来就像被门夹过的正弦曲线。这时候APF就得出手了,它的核心技能是:实时捕获谐波成分,然后生成镜像电流对冲。

三相有源电力滤器APF仿真 波形从上到下分别是: 电网电流 APF电流 整流性负载电流 APF能够保证电网电流成正弦

重点来了,看APF的电流生成算法:

def apf_control(load_current):
    h = np.convolve(load_current, [0.2, -0.5, 1, -0.5, 0.2], 'same') 
    # 电流跟踪环节(比例控制演示)
    apf_current = -h * 0.98  # 留2%余量防止过冲
    return apf_current

apf_current = apf_control(load_current)
grid_current = load_current + apf_current  # 电网电流=负载电流+APF输出

虽然真实系统会用瞬时无功功率理论,但这段代码展示了本质——就像给谐波成分加了面镜子。注意那个0.98的系数,调参时稍微留点余地,不然容易引发震荡,跟理发师剪刀太快容易翻车一个道理。

最后上全家福波形:

plt.figure(figsize=(12,9))
plt.subplot(3,1,1)
plt.plot(t, grid_current, 'b')
plt.title('电网电流-离子烫后效果')

plt.subplot(3,1,2)
plt.plot(t, apf_current, 'orange')
plt.title('APF输出电流-造型师的剪刀')

plt.subplot(3,1,3)
plt.plot(t, load_current, 'r')
plt.title('负载电流-进店前状态')
plt.tight_layout()

跑出来的效果绝对是强迫症福利:最上面的电网电流规规矩矩的正弦波,中间的APF电流张牙舞爪专门怼谐波,最下面的负载电流依旧保持杀马特本色。这说明APF深谙美发之道——不改变顾客(负载)本身,只做造型修正(谐波抵消)。

调试时踩过的坑:1. 补偿延迟超过200微秒就会翻车 2. 直流侧电容小了就像染发剂不足会掉色 3. 开关频率选10kHz以上效果更丝滑。总之这玩意儿就是电力系统的实时美颜滤镜,专治各种波形不服。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐