永磁同步电机无速度算法--基于卡尔曼滤波器的滑模观测器

一、原理介绍

传统滑模观测器采用如下结构:

传统SMO中LPF会带来相位延迟和幅值衰减,并且需要额外的相位补偿。

采用扩展卡尔曼滤波器代替常用低通滤波器(LPF),可以去除高次谐波,并且不用相位补偿就可以获得一个误差较小的转子位置角。并且采用饱和函数代替符号函数进一步优化开关抖振。

二、仿真模型

在MATLAB/simulink里面验证所提算法,搭建仿真。采用和实验中一致的控制周期1e-4,电机部分计算周期为1e-6。仿真模型如下所示:

仿真工况:电机空载零速启动,0s阶跃给定转速1000rpm,0.5s施加额定负载

2.1给定转速、实际转速和估计转速

2.2估计转速与实际转速误差

2.3估计转角与实际转角

2.4估计转角与实际转角误差

2.5 滤波前、LPF滤波后和EKF滤波后估计反电动势

可以看出EKF滤出的反电动势还是存在一定的波动的,但是对于转子位置的估计影响不大,因为PLL本身也存在一定的低通作用进行滤波,并且可以看出EKF滤波没有相位滞后。通过调整EKF的系数可以使得滤波后的波形更加平滑,如下图所示,代价则是动态性能会一定程度的下降,系数选取需要取舍。

可以看出该方法较好的克服了反电动势高次谐波的影响。

相关推荐
萧西待水6 小时前
奥赛一本通 1447 靶形数独
算法·深度优先
泯泷8 小时前
那段文字是谁删的?Yjs 14 正式版之前,一套删除归属方案的实现与边界
前端·javascript·算法
hold?fish:palm8 小时前
34 合并K个升序链表
javascript·算法·链表
Navigator_Z10 小时前
LeetCode //C - 1252. Cells with Odd Values in a Matrix
c语言·算法·leetcode
语戚12 小时前
力扣 1621. 大小为K的不重叠线段的数目:动态规划(Java 实现)
java·算法·leetcode·动态规划·力扣·dp
青山木12 小时前
Hot 100 --- 最长有效括号
java·数据结构·算法·leetcode·动态规划
这料鬼有毒13 小时前
二刷hot100-1143.最长公共子序列
算法·leetcode·动态规划
政企项目老覃14 小时前
边缘 AI 推理部署:安防零售场景下的模型裁剪与端侧落地实践
人工智能·程序人生·算法·性能优化·vllm
GreenTea16 小时前
发布 3 天登顶 HN:不生成一个字的模型 Jev,我把它的源码和黑料都扒了一遍
前端·后端·算法
庖丁解牛16 小时前
无穷小不是一个“神秘小数”,而是一场奔向 0 的过程
算法