关键词:空间矢量脉宽调制; 逆变器; 死区补偿
SUN Jie , LUAN Zhong-quan
Abstract : Introduce the SVPWM, design the software and hardware scheme of current loop in servo motor, study the control strategy, analyze the current sampling, and do some research to keep the force ripple of load motor and compensate death-time in motor inverter. At last, the software realization plan about current loop interruption was focused on.
Key words : space vector pulse width modulation (SVPWM) ; inverter ; dead-time compensation
0 引言
近十几年来,DSP控制器广泛应用于电机控制中。TI公司的TMS320F2812 DSP具有更完备的外围控制接口和更丰富的电机控制外设电路。它的事件管理器(EV)含有硬件SVPWM产生电路。产生SVPWM具有硬件结构简单, 控制精度高, 实时性强, 软件编程容易等优点。电机控制策略主要采用三闭环控制,位置环、速度环和电流环。他们的主要的作用是使误差越来越少,使控制精度更高更准确更迅速并实现自动控制。其中电流控制环是一个内环, SVPWM控制算法的实现主要集中在电流环上。在一个电流环周期内需完成反馈电流的采样、电压死区补偿和输出电压等运算。它的性能指标好坏, 特别是动态特性, 将全面影响速度环和位置环, 从而影响整个伺服系统。
1 SVPWM与电机的电流环控制
在电机变频调速中,脉宽调制技术已经得到了广泛的应用。而空间矢量脉宽调制(SVPWM)方法与经典的脉宽调制方法相比,具有直流电压利用率高、控制简单、损耗较小、便于数字化方案实现等优点,广泛应用在电机控制中。
1.1 SVPWM机理
空间矢量PWM 指的是三相功率逆变器中的六个功率管的一种特殊的开关方式。空间矢量PWM 方法的实质就是利用六个功率管
的八种开关组合方式给出电机的供电电压向量。通过α -β坐标变换,把8种状态组合对应的相电压映射到α-β坐标平面,即将( a, b, c) 3个向量垂直映射到一个二维坐标(α-β坐标) , 这样就可以得到6个非零向量和2个零向量. 6个非零向量构成一个六边形, 相邻向量之间的夹角为60°, 2个零向量处于原点,如图1所示.
图1 α、β坐标系中基本电压空间矢量图
通过检测电机相电流的方向和大小,可以计算得到Uout的两个分量。根据这两个分量的大小和所处的扇形区间,得到Ux作用的时间,写入DSP2812的事件管理器(EV)的比较寄存器中,通过EV来实现PWM波的生成。
1.2 DSP2812电流环控制结构
电流环结构如下图所示:
Ia+Ib+Ic=0,因此,只要检测其中的两路电流即可。电机相电流值由霍尔传感器检测,检测信号Iu经过运算放大器进行I-U转换后输出。SVPWM硬件结构图如图3所示:
图2电流环控制结构图
电流环的控制算法采用PI,SVPWM(Space Vector PWM)。PI为经典的比例积分控制,SVPWM控制技术可明显减少逆变器输出电流的谐波成分,减小脉动转矩,特别易于数字化实现,在电机控制领域得到广泛应用。电流环控制结构图如图2所示,经过clarke变换、pake变换、逆Clarke 变换,作用于逆变器产生正弦波形。
2 电流采样
对于数字化伺服电机控制系统来说,电流采样的精度和实时性在很大程度上决定了系统的动、静态性能。因此,精确的电流检测是提高系统控制精度、稳定性和快速性的重要条件,也是实现高性能闭环控制系统的关键。
因为本文研究的是三相平衡系统,即
图3 SVPWM硬件结构图
为减少电流信号高次谐实现高性能闭环控制,除了要设计合适的电流环控制器,还要尽量减少电流反馈值中的高次谐波成分,电流采样传感器可以在安装在每组IGBT桥臂的底部。在一个PWM周期中,对电流进行采样的时间选在PWM波各开关周期的起点或中点时刻,能够获得谐波成分相对较少的基波电流值,有利于实现高精度的电流闭环控制。
3 DSP2812的死区补偿
在电压型脉宽调制( PWM)逆变电路中,为避免同一桥臂上的开关器件的直通,必须插入死区时间。然而,死区效应是影响逆变器电压和电流输出的重要非线性因素。对于电机驱动系统而言,死区效应会使得电机低速时的电压及电流发生严重畸变,引起转矩脉动和谐波,因此对逆变器的死区必须进行补偿。
常用死区补偿法方法有两种: 硬件补偿和软件补偿。硬件补偿法需要增加额外的硬件电路,通过输出实际电压和电压参考值的比较得到所需要的补偿电压信号。软件补偿法是采用纯软件的方法,在电机的控制程序中加入死区补偿的算法。这类补偿算法也可以称之为死区时间补偿法。在TMS320LF 2812中,死区补偿脉宽可以通过修改事件管理器EV中的CMPR1、CMPR2来实现。
4 软件实现
带有死区补偿的电流环控制程序流程图4所示
图4带死区补偿的电流环软件流程图
从主程序中进入电流环定时中断的语句:PieVectTable.T1PINT = &EvaTimer1P_ISR;
系统初始化函数void InitEv (void),设置T1周期定为500us,T1的控制寄存器,比较使能,定时器使能,连续增减计数模式,设置pwm输出135为高有效,246为低有效。
void InitEv(void)
{……
EvaRegs.T1PR=0x0BEBB;
EvaRegs.T1CON.all=0x0842;
EvaRegs.T1CMPR = 0x3c00;
EvaRegs.ACTRA.all = 0x666; EvaRegs.T1CNT = 0x0000;
EvaRegs.DBTCONA.all=0x088f;
EvaRegs.COMCONA = 0xA600;
……}
clarke变换、pake变换、PI算法以及逆Clarke 变换以函数的形式出现,函数定义如下:
void clarke_calc(CLARKE* g_Ci);
void park_calc(PARK* g_Pi);
double PID_calc1(PID *g_pid, double ProcessPoint);
double PID_calc2(PID *g_pid, double ProcessPoint);
void ipark_calc(IPARK* g_Iv);
void CALC_SECTOR();
void CALC_T1T2();
定时器1计数到设定的周期值,比较寄存器根据计算的时间值自动重新装载,使输出的PWM 波形占空比发生变化。装载语句如下:
EvaRegs.CMPR1=T1+Td1;
EvaRegs.CMPR2=T1+T2+Td2;
EvaRegs.ACTRA.all&=0x0fff;
EvaRegs.ACTRA.all|=(SVDIR << 15) + (vector << 12);
5 结束语
本文详细介绍了SVPWM 的软件实现方法,以TI 的DSP 芯片对SVPWM 实现了全数字控制, 并通过对电流采样和死区补偿算法的改进, 有效减少了电机死区时间的影响,消除了谐波, 同时提升了电流输出能力。所设计的电流环具有更高的控制效率。动态性能得到改善, 为交流伺服系统中速度控制和位置环控制, 打下了良好的基础。
参考文献
[1] 陈荣,严仰光.交流永磁伺服系统控制策略研究[J].电机与控制学报,2004,(3): 205- 208.
[2] 张希明,陈立铭,倪光正.一种基于TMS320F2812的电动汽车电驱动系统. 机 电工程,2008,25(3):61-63.
[3] 刘亮,邓名高,欧阳红林,等.基于预测电流控制的PWM逆变器死区补偿方法研究[J].电工技术学报,2005,8(20):78-98.
[4] 许嘉晻, 徐国卿, 康劲松. 基于永磁同步电机的SVPWM死区分析与补偿.电气传动,2007 ,37 (02 ): 29-31
[5]王成元,夏加宽,杨俊友,孙宜标.电机现代控制技术[M].北京:机械工业出版社,2006.
作者简介:
第一作者孙洁,性别,女,1983年生,2006年毕业于石油大学自动化系,获得学士学位,技术职称与职务(/现为北京信息科技大学 学校 机械设计及理论 专业在读硕士研究生);主要从事电机控制、机器人技术的研究。