一、原理介绍
最小二乘法大约是1795年高斯在其著名的星体运动轨道预报研究工作中提出的。后来,最小二乘法成为了估计理论的基石。最小二乘法由于原理简明、收敛较快、易于编程实现等特点,在系统参数估计中应用相当广泛。
其基本原理为:
改写为递推的形式的最小二乘法估计则如下:
在启动上述递推公式时需要确定初值P(0),θ(0),一般直接令
式中,a为充分大的正实数,ε为零向量或充分小的正实向量
递推最小二乘法算法步骤
(1)设置初始值P(0),θ(0),输入初始数据,
(2)采样当前y(k)和∮(k);
(3)利用递推形式的最小二乘公式依次计算K(k)、P(k)、θ(k);
(4)k→k+1,返回第(2)步,继续循环。
网上有很多具体实现方法,比如
但是这种单用电机d轴电压公式辨识两个电气参数的方法,在实际搭建过程中会出现两个参数无法收敛到实际值的情况,我个人理解中这两个参数任意变化,只要满足这个等式,那么就是对的,那怎么能确定两个值收敛到实际值呢,如果一个增大一个减小,最后应该等式也是成立的。
所以在本仿真中,采用分布辨识的方法,即固定等式中其他参数,辨识一个参数,依次辨识出所有参数,这样意味着在不清楚电机部分电气参数的情况下,无法从零辨识出所有参数,更加适用于已经离线辨识了电气参数,用在线辨识对容易变化的参数进行辨识,毕竟电气参数一般情况下也不会突变,比如电阻随着温度变化而变化,电感随电流饱和等。
那下面分别给出SPMSM辨识电阻、电感、转子磁链,以及IPMSM辨识电阻、dq轴电感、转子磁链的仿真波形。
二、仿真模型
在MATLAB/simulink里面验证所提算法,搭建MRAS辨识SPMSM电阻、电感和转子磁链仿真。采用和实验中一致的控制周期1e-4,电机部分计算周期为1e-6。仿真模型如下所示:
2.1 电阻辨识
2.2 电感辨识
2.3 转子磁链辨识
算法控制步长为1e-4,电阻辨识精度97.6%,电感辨识精度99%,转子磁链辨识精度99.8%
接下来,在MATLAB/simulink里面验证所提算法,搭建MRAS辨识IPMSM电阻、dq轴电感和转子磁链仿真。采用和实验中一致的控制周期1e-4,电机部分计算周期为1e-6。仿真模型如下所示:
2.4 电阻辨识
2.5 dq轴电感辨识
d轴电感
q轴电感
2.6 转子磁链辨识
算法控制步长为1e-4,电阻辨识精度99.8%,d轴电感辨识精度98%,q轴电感辨识精度99.8%,转子磁链辨识精度99.9%
总体来说,RLS参数辨识实现并不复杂,如果不加遗忘因子,基本不需要调试,代入即可运行。个人感觉RLS类似一种开环估计,并且收敛速度较慢。本次仿真并无直接参考文献,更多是验证对RLS的理解。