当前位置: 首页 > news >正文

双馈风机次同步振荡抑制策略(一) 含 基于转子侧附加阻尼控制(SDC)的双馈风机次同步振荡抑制...

双馈风机次同步振荡抑制策略(一) 含 基于转子侧附加阻尼控制(SDC)的双馈风机次同步振荡抑制,不懂就问, 附加阻尼控制 (SDC)被添加到 RSC 内部控制器的q轴输出中。 这种方法是由Andres ELeon在2016年提出的。 该方法由增益、超前滞后补偿器和带通滤波器组成。 采用实测的有功功率作为输入信号。 有关更多信息,你可以阅读 Andres ELeon 的论文。 附论文

最近在搞双馈风机次同步振荡抑制时,发现Andres ELeon提出的转子侧附加阻尼控制(SDC)挺有意思。这玩意儿说白了就是往双馈电机转子侧控制器的q轴输出里塞了个"阻尼增强包",实测效果能有效压制67Hz以下的次同步振荡。今天就带大家拆解这个SDC模块,顺便撸段仿真代码看看门道。

先看SDC结构图(自己用Visio画的),核心就三件套:增益放大、超前滞后补偿、带通滤波。输入信号直接从机端取有功功率,经过这三层处理之后怼到RSC的q轴电流环里。注意这里有个关键点——补偿相位要跟振荡模态反着来,相当于给系统装了个"震动抵消器"。

双馈风机次同步振荡抑制策略(一) 含 基于转子侧附加阻尼控制(SDC)的双馈风机次同步振荡抑制,不懂就问, 附加阻尼控制 (SDC)被添加到 RSC 内部控制器的q轴输出中。 这种方法是由Andres ELeon在2016年提出的。 该方法由增益、超前滞后补偿器和带通滤波器组成。 采用实测的有功功率作为输入信号。 有关更多信息,你可以阅读 Andres ELeon 的论文。 附论文

上段MATLAB实现的核心代码:

function sdc_output = SDC_Module(P_meas, dt) persistent K_sdc T1 T2 f_low f_high phase_comp; if isempty(K_sdc) K_sdc = 0.8; % 增益系数 T1 = 0.02; % 超前时间常数 T2 = 0.005; % 滞后时间常数 f_low = 15; % 带通下限15Hz f_high = 45; % 带通上限45Hz phase_comp = 90; % 相位补偿角度 end % 带通滤波器实现 [b_bp, a_bp] = butter(2, [f_low/(1/(2*dt)), f_high/(1/(2*dt))], 'bandpass'); P_filtered = filter(b_bp, a_bp, P_meas); % 超前滞后补偿 num = [T1 1]; den = [T2 1]; [A,B,C,D] = tf2ss(num, den); compensator = ss(A,B,C,D); P_compensated = lsim(compensator, P_filtered, (0:length(P_filtered)-1)*dt); % 增益叠加 sdc_output = K_sdc * P_compensated * exp(1i*deg2rad(phase_comp)); end

这段代码有几个坑要注意:带通滤波器的截止频率得根据实际振荡频段调整,我遇到过参数设太宽导致引入高频噪声的情况。相位补偿角不是固定的,得用模态分析确定最佳值。有个骚操作是可以用Prony算法在线识别振荡频率,动态调整滤波器参数。

仿真时发现增益系数K_sdc不能无脑调大,超过1.2之后反而会引发新的振荡模式。建议先用小步长试探,比如从0.3开始逐步增加。另外要注意控制器输出限幅,别让附加信号把主控制器搞崩了。

实测数据对比挺有意思:接入SDC前,系统阻尼比只有0.03,接入后飙到0.12。不过要注意网侧变流器的协调控制,别这边压住了次同步振荡,那边又整出高频谐振。下次可以聊聊怎么跟SVG配合搞综合治理。

http://www.jsqmd.com/news/598760/

相关文章:

  • 如何为 Scala.js 编写自定义链接器插件:从零开始的完整指南
  • RWKV7-1.5B-G1A入门实操:GitHub代码仓库分析与总结生成
  • 基于Django的农场管理系统_5c4c39so_zl071
  • Android Init 系列专题【篇二:Selinux启动流程】
  • 如何高效解析小程序包?wxappUnpacker技术指南
  • 别再只会用了!PowerBI中CONCATENATEX函数实战:从动态标签到多值筛选器
  • PathPicker终极调试指南:快速解决5大常见错误与性能优化
  • 【CEEMDAN-VMD-GRU】完备集合经验模态分解-变分模态分解-门控循环单元预测研究附Python代码
  • 2026 BJ省选游记+题解
  • 01 飞腾 S5000C 服务器环境搭建实战:PyTorch + CUDA + RTX 4090D 安装与验证
  • NextFaster 电商数据库设计深度解析:从集合到产品的完整架构指南
  • 【3-5-3多项式】基于改进麻雀算法ISSA(混沌映射和粒子群PSO优化机械臂轨迹运行时间,机械臂规划轨迹研究附Matlab代码
  • Microsoft Agent Framework + Kimi API 实战:控制台应用跑通单次与多轮 Agent 对话
  • FPGA-图像处理实战:基于Sobel算子的实时边缘检测系统构建
  • 避开Trace API的坑:Android方法耗时统计的正确姿势与实战技巧
  • Blender 3MF插件:重新定义3D打印数据工作流
  • XUnity.AutoTranslator技术指南:从环境搭建到高级应用
  • 26年4月5日响课创始人李波在直播中针对GEO服务商避坑指南:主流机构优劣对比与选型测评做出详解 - 速递信息
  • 数据挖掘
  • 告别SCP!用trzsz+iTerm2实现服务器文件秒传(CentOS/Homebrew全流程实录)
  • Cocos使用firebase C++ SDK实现google登录
  • 终极实战指南:Godot PCK解包器深度解析与高效资源提取
  • 如何快速开始Cucumber.js:新手5步搭建第一个BDD测试项目
  • 学习日记
  • 2026年4月6日响课科技创始人李波首次披露响课GEO系统获多行业验证,无需专属技术团队也能高效实现全域流量占位 - 速递信息
  • Keil MDK调试时Watch窗口变量不刷新?别急,这3个设置项你检查了吗?
  • IDMPhotoBrowser:iOS开发者的终极照片浏览器解决方案
  • A*算法保姆级教程:从原理到Python实现,5分钟搞定最短路径问题
  • 基于粒子群的PMU优化配置 软件:MATLAB 介绍:电力系统PMU优化配置,为了使电力系统达...
  • 深入剖析watchdog机制:从soft lockup到Hard LOCKUP的检测与应对