基于PI+重复控制的三相APF仿真系统:特点与应用
可基于PI重复控制的三相APF仿真系统直流电压700V,采用PI控制。 接LCL滤波器带非线性负载。 特点 1)采用并联型APF有源滤波器 2)谐波检测采用dq方法 3)电压环采用PI控制定性好 (若稳定性较差会影响补偿效果) 4)电流环采用PI重复控制: 5)调制策略采用SVPWM矢量控制: 6)APF消除谐波时可补偿一定的无功和谐波 7)APF消除谐波后输入电流THD小于2%; 8)各个模块分类明确波形完美理解容易。三相APF系统要玩得溜核心就俩字——稳和准。这套仿真系统直流侧直接飙到700V配LCL滤波器对付高频纹波对付非线性负载的谐波就跟快刀切黄油似的。咱们拆开看看里头的门道。谐波检测这块直接上dq坐标系变换这玩意儿在MATLAB里用abctodq0函数就能搞定。实测代码里坐标轴对齐A相电压相位直接把三相电流转换到旋转坐标系function [id,iq] dq_transform(ia, ib, ic, theta) alpha_beta clarke_transform(ia, ib, ic); dq park_transform(alpha_beta(1), alpha_beta(2), theta); id dq(1); iq dq(2); end转换后的直轴电流id就是谐波含量的照妖镜把交流量变直流量处理后面做控制就跟开挂一样简单。可基于PI重复控制的三相APF仿真系统直流电压700V,采用PI控制。 接LCL滤波器带非线性负载。 特点 1)采用并联型APF有源滤波器 2)谐波检测采用dq方法 3)电压环采用PI控制定性好 (若稳定性较差会影响补偿效果) 4)电流环采用PI重复控制: 5)调制策略采用SVPWM矢量控制: 6)APF消除谐波时可补偿一定的无功和谐波 7)APF消除谐波后输入电流THD小于2%; 8)各个模块分类明确波形完美理解容易。电压环PI参数调得好直流侧稳如老狗。仿真时发现Kp超过0.5就开始震荡最后定在0.35配8ms积分时间。关键代码里用了个防积分饱和的骚操作float voltage_loop(float err) { static float integral 0; integral err * Ts; if(integral 500) integral 500; // 钳位防饱和 else if(integral -500) integral -500; return Kp*err Ki*integral; }这招让直流电压在负载突变时波动不超过±5V稳得一批。电流环玩的是PI重复控制的组合拳。重复控制器专门收拾周期性谐波代码实现时搞了个环形缓冲区存误差历史#define REPEAT_WINDOW 200 //对应50Hz基波周期 float rep_buffer[REPEAT_WINDOW]; int buf_index 0; float repeat_control(float err) { float rep_out rep_buffer[buf_index]; rep_buffer[buf_index] err 0.95*rep_out; //加入衰减因子 buf_index (buf_index 1) % REPEAT_WINDOW; return rep_out; }这个0.95的衰减因子是调出来的经验值既保证收敛速度又避免震荡。配合PI控制器7次谐波补偿效果直接翻倍。SVPWM调制部分用查表法提速把60°区间细分成30份预存矢量作用时间。实测代码比实时计算省下40%的运算量% 预生成SVPWM查找表 sector_table zeros(6,30); for sect1:6 for angle0:29 theta deg2rad(angle*2 (sect-1)*60); T1 sin(pi/3 - mod(theta,pi/3)) * Ts; T2 sin(mod(theta,pi/3)) * Ts; sector_table(sect,angle1) round([T1 T2]*1e6); % 量化存储 end end硬件实测开关频率18kHz时THD从纯PI控制的4.7%干到1.8%。波形图里电网电流从毛毛虫变丝绸奇次谐波基本被拍平。这套架构模块边界清晰得很电压环只管直流稳压电流环专注谐波追击重复控制器当特种部队处理残留杂波调参时各玩各的互不干扰。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2434648.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!