前言
本章节采用扩展卡尔曼滤波进行永磁同步电机的无传感器控制,首先分析了扩展卡尔曼滤波的原理,然后基于扩展卡尔曼滤波对PMSM进行状态估计,最后通过Matlab/Simulink对该方案进行仿真分析。
一、扩展卡尔曼滤波
1.1.扩展卡尔曼滤波的原理
前面章节介绍了什么是状态观测器,并对状态观测器增加反馈,通过反馈来不断的修正状态观测器的输出,使状态观测器尽可能的接近真实电机,如下图所示:
反馈方式与修正方式的不同产生了不同种类的状态观测器。并且详细分析了滑模观测器和龙伯格观测器,本章节将介绍一下基于扩展卡尔曼滤波的状态观测。
扩展卡尔曼滤波首先是一个滤波器自带滤波功能,其次是一个自适应系统,滤波增益能够适应环境进行自动调节,可对系统状态进行在线估计,进而实现对系统的实时控制。而且扩展卡尔曼滤波与其他观测器相比还能对系统噪声和测量噪声进行过滤,提高系统状态的估算精度。扩展卡尔曼滤波是卡尔曼滤波在非线性系统中的扩展应用,因为电机是一个“高阶、非线性、强耦合、多变量”的复杂系统,只能适用于扩展卡尔曼滤波。扩展卡尔曼滤波比卡尔曼滤波只多了一个非线性系统线性化的过程,即多了一个泰勒级数展开的过程。
扩展卡尔曼滤波的思想是利用观测值对预估值进行修正,从而获得最优估计值。扩展卡尔曼滤波是在均方差极小的情况下得到状态变量的最优估计值,实际上是一个递推过程,大体分为两个阶段:预测阶段;修正阶段。
现代控制理论中实际系统的状态空间表达式为:
扩展卡尔曼滤波与龙伯格观测器一样也完全依托于上述状态空间表达式。采用向前差分离散化并考虑系统误差与测量误差可得上述表达式的离散形式为:
1.2.PMSM基于扩展卡尔曼滤波的状态估计
二、Matlab/Simulink仿真分析
上图为PMSM基于扩展卡尔曼滤波的无感控制整体框图,为了后续模型生成代码进行工程实现,本示例将控制算法部分单独建模,通过调用控制算法模型进行PMSM的控制。
2.1.仿真电路分析
为了后续模型生成代码加载到底层进行工程实现,本示例建立了三个不同时间的调度任务。
10ms任务:用于电机控制模式的切换,本示例采用经典的三段式启动方式,即转子预定位、IF开环启动、开环切闭环进行无感控制。
速度环控制:相较于电流环速度环对实时性要求不高,带宽一般为电流环带宽的1/20,本示例将速度环设置为2ms任务。
电流环控制:电流环对实时性要求高,带宽高时间设置为FOC的执行时间50us。
2.1.1 电机控制模式切换10ms任务
设置转子预定位持续时间500ms;500ms后切换为IF开环控制;如果IF开环启动时间大于1s且此时的观测速度大于900RPM,则切换到无感闭环控制。
2.1.2 速度环控制2ms任务
只有在无感闭环控制模式才用到速度环。
2.1.3 电流环控制50us任务
控制模式切换:
扩展卡尔曼滤波状态估计:
FOC电流闭环:
2.1.4 电机主电路
2.2.仿真结果分析
EKF电流估计:
EKF速度估计:
EKF角度估计:
实际角度与EKF估计角度:
电机转速:
0~0.5s执行转子预定位:
0.5s~2.76s为IF开环启动:
2.76s~20s为无感闭环控制
电机定子电流:
电机实际转子位置:
同步旋转坐标系下的定子电流Id、Iq:
同步旋转坐标系下的定子电压:
电磁转矩:
总结
本章节采用扩展卡尔曼滤波进行永磁同步电机的无传感器控制,首先分析了扩展卡尔曼滤波的原理,然后基于扩展卡尔曼滤波对PMSM进行状态估计,最后通过Matlab/Simulink对该方案进行仿真分析。