刘晓东,邴冰天,李 伟,王学高,裴昕莹
(国网辽宁省电力有限公司葫芦岛供电公司,辽宁 葫芦岛 125000)
永磁同步电机的无传感器控制技术[1]不仅能提高永磁同步电机控制系统的可靠性,同时也降低了对运行环境的要求和制造电机的成本。该技术是通过检测相关电信号,采用特定的控制算法估算出转子位置和速度,从而实现对永磁同步电机的双闭环控制。
目前,针对无传感器永磁同步电机控制系统,其实现方法有定子磁链估计法、反电动势法、状态观测器法、模型观测法、模型参考自适应法等。文献[2]是通过检测定子绕组的电压和电流计算转子的位置。文献[3]是通过计算定子绕组的反电动势来估算转子的位置。但在低速或零速时由于定子绕组的反电势极小,导致估计转子的位置误差较大甚至估计失败。文献[4]通过假设转子在某个位置,计算出在该位置时定子的电压或电流,然后与传感器检测的电压或电流作差,通过自适应率的调节来减小差值。这种方法受电机参数的变化以及系统噪声的影响较大。文献[5]是将系统的输出量和输入量都作为其输入信号,通过内部系统对其进行重构对误差进行补偿,从而得到正确的结果。以上这些方法需要进行大量的计算,对于控制芯片性能要求极高,在低速下估计的转子位置精度低,仅仅适用于中、高速。
高频注入法[6]是利用永磁同步电机的凸极性,通过计算得到转子的位置。该方法不仅在低速下能够准确的得到转子的位置,而且算法简单对控制芯片性能要求低。本文首先分析了高频注入法的原理,通过基于锁相环(PLL)的转子位置估计器从高频响应电流中提取出转子位置信息。然后,在Simulink环境下搭建基于DSP28335的控制算法模型和逻辑控制模型。最后,应用Simulink代码生成技术[7]成功生成了嵌入式C代码,并在电机实验平台进行了实验
高频注入法的原理是向电机的旋转坐标轴中注入高频电压或者电流信号,利用永磁同步电机具有非线性饱和特性,使得电机励磁磁路的改变,使得电机具有凸极性,最后通过特定的算法获得转子的位置。其关系如图1所示。
图1 估计dr轴和实际d轴的关系
内嵌式永磁同步电机在dr系下定子电压方程为
(1)
由于注入高频信号的频率远远高于电机正常运行时的频率(注:实验中,电机正常运行时的基波频率为33.33 Hz),因此可以把永磁同步电机看作R-L电路,式(1)简化为
(2)
将式(2) 变换到旋转坐标系drqr,得到
(3)
由于注入的电流的频率远高于电机的基波频率,因此相比高频电抗来说,电阻可以忽略,故
(4)
定义Zavg为dr、qr轴平均高频阻抗;Zdiff为dr、qr轴半差高频阻抗。
(5)
将式(2)、式(4)、式(5)带入式(3),可以得到
(6)
设在dr轴注入高频电压信号,其表达式
(7)
式中,vh为幅值,ωh为频率。
将式(7)带入式(6)得到qr轴高频电流响应为
(8)
其中,Rdiff=(Rdh-Rqh)/2,Ldiff=(Ldh+Lqh)/2
由于在高频信号作用下电感产生的高频阻抗要远大于高频电阻,因此式(8)可以简化为
(9)
由式(9)可以看出,Δθ近似为零时,sin2Δθ也趋于零。因此,通过带通滤波器对基波进行滤除,得到包含转子误差的高频信号,然后对高频电流信号进行解调,最后通过转子位置估计器计算出转子的位置。其过程如图2所示(BPF为带通滤波器;LPF为低通滤波器)。
图2 转子误差信息的处理过程
位置估计器对解调后的信号处理过程如下
(10)
当Δθ足够小时,sin2Δθ=2Δθ,式(10)可简化为
(11)
由式(11)可知,通过调节作用使得iΔθ为零,此时转子位置误差Δθ也为零,那么估计的转子位置就是实际位置。
图3 永磁同步电机无传感器控制系统的整体框图
在传统的电机控制软件开发过程中,软件设计分为系统控制流程设计和软件子模块设计。软件设计完成后,需要对算法进行测试和验证,但在实际控制系统中进行实验可能会出现因算法问题引起的控制器损坏、电机驱动电路损坏等故障。同时,传统电机控制软件的开发效率低、周期长和可靠性差。而自动代码生成技术,根据用户的需求建模而自动生成嵌入式代码,实现了计算机仿真与硬件处理器的结合,提高了电机算法的可靠性和准确性。同时,自动代码生成技术能够提供接口来与算法模型进行连接,避免了手写代码造成的算法和驱动底层代码接口的不匹配,大大加速了软件的开发进程。
Matlab/Simulink软件将用于电机控制系统的C2000系列DSP的底层驱动封装在Embedded coder工具箱中,包括中断、ePWM、ADC等模块。此外,该工具箱也增加了针对电机控制的函数库,包括Clarke变换、Park变换、SVPWM等模块。
图4为无传感器控制系统的模型,包括Mode Scheduler、Motor Control、ADC、ePWM等。
Mode Scheduler使用Stateflow建立的模型(如图6所示)。用户可以根据需要设定转速、转矩、电机的起停等。
图4 永磁同步电机无传感器控制系统
图5 电机控制系统模型
图6 Mode Scheduler模型
Motor Control(如图7所示)由转速环、电流环、转子位置估计器以及SVPWM等模块组成。
注入的高频信号采用正弦信号,若采用在线直接求解的方法,会占用大量的芯片资源。因此,实验采用离线查表的方式得到正余弦的函数值。
图7 Motor Control模型
图8 dq轴电流环
图9 速度环
图10 转子位置估计器
整个控制系统需要用到带通滤波器、低通滤波对信号进行过滤,本文采用Matlab提供的FATool工具设计数字滤波器。
图11 FATool波器设计工具
为了生成与控制芯片相匹配的嵌入式代码,需要对Simulink软件进行设定。其中,控制算法模型需采用固定步长的离散求解器,步长设置为100 μm(与控制软件的计算周期相同)。将生成的嵌入式C代码导入CCS5.0工程中(如图12所示)进行编译、链接,最后将生成的.out文件并将其下载到在电机控制器的芯片中进行试验。
图12 CCS环境下进行编译、链接、下载
本实验平台以一台30 kW的内置式永磁同步电机为控制对象。电机控制器的控制芯片为DSP 28335。在整个控制系统中,功率器件的开关频率为10 kHz,ADC采样周期为100 μs,注入高频电流的频率为1000 Hz。注:转子的实际位置由旋转变压器来检测。
图13 实验平台系统结构
图14 永磁同步电机控制系统实验平台
为了验证基于代码生成技术的无传感器控制系统的准确性和有效性,设计了空载启动和突加负载的实验。
给定转速为500 r/min时,实验结果如图15所示。图15(a)~图15(c)分别为转子估计位置、实际位置和位置误差。电机刚启动时转子位置误差较大,待系统稳定后估计的转子位置能够实时地跟踪实际位置,误差约为0.03±0.02 rad。图15(d)为定子的相电流(x轴:50 ms/格;y轴:10 A/格);图15(e)、图17(f)分别为包含转子误差信号的高频电流带通滤波器滤波前后的FFT分析图。
图15 给定转速为500 r/min时电机的实验波形
图16当电机转速稳定在500 r/min时,加载的实验结果。从图16(a)中可以看出,加载后转子位置误差发生小幅波动,误差值约为0.03±0.03 rad。
图16(b)为定子相电流图(x轴:50 ms/格;y轴:10 A/格)。
图16 突然加载时的实验波形
本文首先对高频注入法获得永磁同步电机转子位置的方法进行研究,然后通过Simulink代码生成技术得到嵌入式C代码。最后,通过实验证明了高频注入法在低速下能够准确得到转子的位置,也验证了Simulink代码生成技术准确性。