作者简介:张永博(1968-),男,讲师,博士研究生.研究方向:增程式电动车.E-mail:ybzhang@scau.edu.cn
在电动汽车永磁同步电机的无传感器控制中,转子磁链值的参数摄动对转子速度和角度的辨识效果影响较大。为此,可以把转子磁链作为变量加入到扩展卡尔曼滤波器中进行辨识,但这会增加运算矩阵的阶数,造成实际系统运算量偏大。为解决这一问题,通过坐标变换的方法将高阶的扩展卡尔曼滤波器分解成为两个并行的低阶卡尔曼滤波器,提出一种用于永磁电机无传感器控制的非线性两段扩展卡尔曼滤波器,并在理论上分析了滤波器所需的乘法加法运算次数。仿真及实验结果表明:与原有传统卡尔曼滤波器相比,该算法减少了一定的运算量并保持了良好的辨识效果。
The conventional sensorless algorithm for electric vehicle based on Extended Kalman Filter (EKF) can be influenced by the error of the rotor flux and shows considerable steady-state speed and position deviations. To take rotor flux as a variable in the EKF may increase the order of the operational matrix and the computation load of the real system. To solve this problem and still keep the advantage of the original algorithm, a novel Kalman control strategy using Nonlinear Two-stage EKF (NTSEKF) is proposed. The main idea is to decouple the Kalman filter into two parallel low order filters using coordinate transformation. In theory, the total number of multiplication and addition operations for EKF and NTSEKF is calculated respectively. Simulation and experimental results show that the novel strategy can reduce the number of arithmetic operations compared to EKF meanwhile still keep good identification performance.
目前, 交流电机已成为电动汽车的主要动力核心, 其中, 永磁同步电机因功率因数大、功率密度高以及过载能力强等优点而得到广泛应用[1, 2]。传统的永磁同步电机(Permanent magnet synchronous motor, PMSM)检测方法多采用光电编码盘和旋转变压器等设备来测量转子的角度, 这类设备不仅增加了安装及维护成本, 且在高温、潮湿及其他恶劣条件下工作时将降低传感器的可靠性。为了克服机械式传感器带来的缺陷, 使用无传感器技术[3, 4]替代传感器来检测转子磁极的位置, 这种方法也是目前研究的热点之一。
卡尔曼滤波算法[5, 6, 7]是目前常见的无传感器控制方法, 它的实质是对系统的状态向量进行重构, 它以“ 预测-实测-修正” 的顺序递推, 可以从上一采样时刻状态的估计值以及当前状态的测量值消除系统随机干扰, 计算出当前状态的估计量信息, 但为了克服误差扰动的影响, 需要经过大量实验才能确定合适的随机参数。在实际控制中, 转子磁链和定子电感等参数的摄动都对转子速度和角度观测值的准确性有较大的影响, 造成转子参数的观测存在一定误差, 为此国外有学者将这些电机参数作为方程变量加入到卡尔曼滤波器中进行辨识[8, 9], 以此来提高观测的准确性。但高阶的扩展卡尔曼滤波算法计算量大, 需要较高的硬件配置, 高昂的成本让它无法在工业现场推广使用。为解决这类问题, Hsieh等[10]提出一种应用于线性系统上的最优两段卡尔曼滤波器(Optimal two-stage Kalman estimator, OTSKE), 该滤波器在本质上是对卡尔曼滤波器(Kalman filter, KF)进行了算法优化, 通过坐标变换的方法将卡尔曼滤波器的计算过程进行了分解, 降低了运算矩阵的阶数, 可以在一定程度上减轻卡尔曼滤波器的计算负担。OTSKE与KF在数学上是完全等价的。进一步深入的研究[11, 12, 13, 14]将这种算法推广使用到非线性系统上, 可以适用于更为普遍的实际情况中。
本文依照OTSKE算法的思路, 提出一种基于非线性两段扩展卡尔曼滤波器(Nonlinear two-stage extended Kalman filter, NTSEKF)的永磁同步电机无传感器算法, 在该算法中, 将一个传统的五阶扩展卡尔曼滤波器分解成四阶卡尔曼滤波器和一阶增广卡尔曼滤波器, 通过两个滤波器的并行协同工作减少了运算量。理论分析和实验结果均显示, 该算法可以有效降低运算量, 从而能够节省系统硬件资源, 降低系统成本。
假设磁路不饱和, 空间磁场呈正弦分布, 不计磁滞和涡流损耗影响, 永磁同步电机在两相旋转dq坐标系下的离散状态方程如下[14]:
式中:uα 、uβ 为在静止两相坐标系(α β )下的定子电压; id、iq为在旋转两相坐标系(dq)下的定子电流; Rs为定子电阻; Rd为定子d轴电阻; Ld为定子d轴电感; Lq为定子q电感; ψ r为转子磁链; θ r为电机的电角度值; ω r为电机的电角速度值; Ts为采样周期。
将转子磁链作为状态变量加入到方程(1)中, 可以写出增广状态方程和输出方程:
式中:
W
基于上述增广状态方程的传统扩展卡尔曼滤波算法如下:
式中:
K
F
Bu
F
E
Bu
E
G
D
H1
By
H1
H2
By
H2
P
为了实现NTSEKF算法, 将引入坐标变换矩阵T
通过相应的坐标变换后, 将方差-协方差矩阵P
基于T
利用这两个矩阵可以进行如下变换:
通过进行矩阵变换, 并将其代入到扩展卡尔曼滤波方程(5)~(9)中, 根据一一对应关系[12], 就可以得到NTSEKF算法的第一阶段状态参数预测方程组如下:
NTSEKF算法第二阶段的状态参数更新方程如下:
式中:N
非线性NTSEKF的初始条件需使用传统EKF的初始状态(
为了体现出算法的优势, 对两组滤波器的运算量进行了理论分析, 由于滤波器的运算是通过加法和乘法来实现的, 所以用加法和乘法的运算次数来衡量算法的运算量。例如, 对传统的扩展卡尔曼滤波器方程P[k
基于经典扩展卡尔曼滤波器方程组, 可以得出理论上的运算量, 如表1所示。其中, n=5, 为状态量维数; m=2, 为输出维数; q=2, 为输入维数。
根据NTSEKF算法, 可得理论上的运算量如表2所示, 其中q=2, 为观测量维数; n=4, m=2, p=1。
为了验证基于NTSEKF无传感器算法的有效性, 采用MATLAB/Simulink软件对系统进行了仿真研究。永磁同步电机的仿真参数如下:额定功率PN=1.2 kW, 额定线电压UN=300 V, 额定频率fN=50 Hz, 定子电阻Rs=0.525 Ω , d轴电感Ld=1.65 mH, q轴电感Lq=1.65 mH, 转子磁链值ψ r=0.08627 Wb, 极对数P=4, 额定转速nN=3000 r/min。设定负载为2 N· m, 速度变化设定为600 r/min, 同时, 为了检验NTSEKF算法的和传统的扩展卡尔曼滤波器在算法上的等价性, 将两组滤波器加入到同一仿真模型中。其中, 传统的两段滤波器辨识出的电机参数参与电机的无传感器闭环控制, 扩展卡尔曼滤波器只根据电机的电流电压参数进行辨识, 所得结果不参与控制。图1、图2和图3分别是NTSEKF对转子磁链、转速以及转子电角度值的观测值、观测误差以及与EKF观测值之差。从仿真图上可以看出:NTSEKF参数辨识效果良好, 在初始阶段, 误差快速增大, 在达到最大值后, 误差逐渐减小, 在转速到达额定值后, 各项观测值都收敛到真实值。而NTSEKF与EKF的观测值之差极小, 这是由于NTSEKF的计算步骤多于EKF, 在计算过程中造成的精度损失完全可以忽略不计。
实验中采用Myway公司生产的Expert3系统进行实验, Expert3系统控制器的核心为TI公司的TMS320C6713高性能DSP控制芯片和Xilinx公司型号为SPARTAN-XC3S1500的FPGA, C6713负责核心算法计算, FPGA负责采样信号、产生脉宽调制(PWM)信号等。实验系统中采用一台表面贴式永磁同步电机, 电机参数与仿真所用参数一致。电机负载采用磁粉制动器, 制动器能提供恒定力矩, 且力矩与励磁电流呈线性关系。综合考虑运算精度和DSP的运算能力, 本实验中将逆变器开关频率设为10 kHz, 死区时间设为4 μ s。电机采用多摩川2500线的增量编码器来读取转子的真实位置, 作为估算转子位置的参考。在实际实验中, 负载值设为2 Nm, 速度设定为600 r/min。图4和图5分别是实验中NTSEKF对转速、转子角度值的观测值以及与真实参数之间的误差值。可以看出, NTSEKF对实际参数跟踪效果良好, 稳态误差很小。图6中的转子磁链观测值在经过短暂的超调后迅速稳定。由于转子磁链对电角度的辨识的影响较大, 电角度良好的辨识效果保证了该结果的准确性。图7、图8和图9是两组滤波器输出的转速、转子角度值及转子磁链值之差, 实验结果表明它们的输出相差极小, 与理论推导及仿真结果保持了很好的一致性。这就验证了两组滤波器在数学上是完全等价的。
为了在运算量方面有一个直观的比较, 利用DSP自带定时器分别计算传统EKF模块和NTSEKF模块的实际运行时间。定时器计算出传统卡尔曼滤波器的运行时间为71.5438 μ s, 两段卡尔曼滤波器的运行时间为62.7046 μ s, 比传统卡尔曼算法节省了12.355%的运算时间, 与理论的推导基本符合。
为克服无传感器算法中电机参数摄动对辨识结果的影响, 本文在两相旋转坐标系数学模型基础上将转子磁链值加入到辨识变量中, 利用OTSKE算法提出一种新的无传感器NTSEKF算法, 该算法能有效节省运算量并保持良好的辨识结果。仿真及实验结果验证了理论分析的准确性。NTSEKF滤波器的降阶及算法简化对卡尔曼滤波器在电机无传感器控制领域的应用有着积极的意义。
The authors have declared that no competing interests exist.
[1] |
|
[2] |
|
[3] |
|
[4] |
|
[5] |
|
[6] |
|
[7] |
|
[8] |
|
[9] |
|
[10] |
|
[11] |
|
[12] |
|
[13] |
|
[14] |
|