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

一、原理介绍

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

传统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的系数可以使得滤波后的波形更加平滑,如下图所示,代价则是动态性能会一定程度的下降,系数选取需要取舍。

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

相关推荐
MM_MS1 小时前
Halcon变量控制类型、数据类型转换、字符串格式化、元组操作
开发语言·人工智能·深度学习·算法·目标检测·计算机视觉·视觉检测
独自破碎E1 小时前
【二分法】寻找峰值
算法
mit6.8242 小时前
位运算|拆分贪心
算法
ghie90902 小时前
基于MATLAB的TLBO算法优化实现与改进
开发语言·算法·matlab
恋爱绝缘体12 小时前
2020重学C++重构你的C++知识体系
java·开发语言·c++·算法·junit
wuk9982 小时前
VSC优化算法MATLAB实现
开发语言·算法·matlab
Z1Jxxx3 小时前
加密算法加密算法
开发语言·c++·算法
乌萨奇也要立志学C++3 小时前
【洛谷】递归初阶 三道经典递归算法题(汉诺塔 / 占卜 DIY/FBI 树)详解
数据结构·c++·算法
vyuvyucd3 小时前
C++引用:高效编程的别名利器
算法
鱼跃鹰飞4 小时前
Leetcode1891:割绳子
数据结构·算法