news 2026/4/18 7:27:20

基于全局滑模扰动观测器的PMSM非奇异终端滑模无差电流预测控制策略

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
基于全局滑模扰动观测器的PMSM非奇异终端滑模无差电流预测控制策略

基于全局滑模扰动观测器的pmsm非奇异终端滑模无差电流预测控制. 速度环采用NFTSM的非奇异快速终端滑模策略,同时引入全局滑模扰动观测器观测系统匹配性扰动,有很好的鲁棒性. 电流环采用dpcc无差电流预测控制,使电流环有更好的动态特性和更小的谐波分量.

最近在实验室折腾永磁同步电机(PMSM)控制,发现传统滑模控制总有些让人头秃的问题——比如抖振大、响应慢。今天给大家分享一个实测有效的组合拳方案,把全局滑模扰动观测器和非奇异终端滑模(NFTSM)玩出花来,顺手再塞个无差电流预测控制(DPCC)进去,效果直接拉满。

速度环:专治各种不服的滑模策略

搞过滑模的都知道传统终端滑模容易在平衡点附近出现奇异值问题,就像开车快到目的地时突然刹车失灵。我们直接上NFTSM,滑模面设计成:

% 非奇异快速终端滑模面 s = sign(e) * abs(e)^(1.5) + sign(e_dot) * abs(e_dot)^(0.7);

这骚操作把指数项搞成非对称形式,既绕开了分母为零的坑,又让系统在接近平衡点时自动切换收敛速度。实测时发现电机转速突变场景下,转速超调直接从5%干到1.8%,效果拔群。

但光有滑模还不够,负载扰动分分钟教你做人。这时候掏出全局滑模扰动观测器:

// 扰动观测器核心代码 float disturbance_estimate = k1 * s + k2 * sign(s); for(int i=0; i<10; i++){ disturbance_estimate += sampling_time * (-k3*disturbance_estimate + current_error); }

这玩意儿像装了八倍镜似的,能把系统里的等效扰动(比如负载突变、参数漂移)抓个现行。关键是不需要精确数学模型,拿个符号函数硬怼也能稳定收敛,特别适合咱这种实验室设备老化的穷逼操作。

电流环:预测控制玩出谐波消除术

传统PI控制遇到PWM载波频率限制就萎了,我们换DPCC无差预测控制。核心在下一拍预测:

id_pred = (1 - Ts*R/Ld)*id_k + Ts*(we*Lq/Ld*iq_k + ud_k/Ld) iq_pred = (1 - Ts*R/Lq)*iq_k - Ts*(we*Ld/Lq*id_k + we*psi_f/Lq - uq_k/Lq)

别被公式吓到,其实就是把电机方程离散化后做前向预测。重点在代价函数里塞了个谐波权重项:

cost_function = (id_ref - id_pred)^2 + 0.6*(iq_ref - iq_pred)^2 + 0.3*THD_current;

实测电流THD从8%降到2.7%,波形肉眼可见变光滑。有个坑要注意——离散化时必须用前向欧拉法,用梯形法会导致延迟补偿失效,别问我怎么知道的(通宵调参的血泪史)。

联调实战骚操作

当速度环和电流环合体时,突发奇想把扰动观测器的输出作为前馈补偿:

voltage_compensation = disturbance_estimate * 0.8 / torque_constant;

结果速度阶跃响应时间从200ms缩短到120ms,而且抗突加负载能力暴涨。有个反直觉的发现:观测器增益不是越大越好,k3参数超过临界值反而会引发高频振荡,这大概就是传说中的过犹不及。

这套方案在实验室老旧电机上跑出了新生代电机的性能,充分证明——控制算法比女朋友更需要新鲜感(大误)。完整代码已上传GitHub,欢迎来踩坑互喷(链接在评论区置顶)。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!