永磁同步电机控制系列课程:

第一篇 永磁同步电机控制-认识电机

第二篇 永磁同步电机控制-电机的分类

第三篇 永磁同步电机控制-硬件基础知识

第四篇 永磁同步电机控制-软件基础知识

第五篇 永磁同步电机控制-数学模型

第六篇 永磁同步电机控制-控制方式

第七篇 永磁同步电机控制-磁场定向控制FOC

第八篇 永磁同步电机控制-MTPA、MTPV

第九篇 永磁同步电机控制-弱磁控制

第十篇 永磁同步电机控制-SVPWM

第十一篇 永磁同步电机控制-位置环、转速环、电流环PI控制

第十二篇 永磁同步电机控制-PI整定

第十三篇 永磁同步电机控制-死区补偿

第十四篇 永磁同步电机控制-大总结
——————————————————————————————————————————

一、什么是死区效应?

        根本原因:在电压源型逆变器(VSI)中,为PMSM供电的IGBT或MOSFET等功率开关管存在固有的开通和关断时间。如果上下桥臂的两个开关管同时导通,会导致直流母线直接短路,造成桥臂直通而烧毁器件。

死区时间(Dead Time):为了防止直通,在控制中会故意设置一个时间间隔,即“死区时间”。在该时间内,上下桥臂的开关管都被强制关断。这个时间通常很短,例如几微秒。

死区效应的产生:死区时间本身是必要的保护措施,但它会带来非预期的副作用:
实际电压损失:在死区时间内,电机绕组电流通过反并联二极管续流,导致施加到电机上的平均电压低于理论期望的PWM电压。
电压波形畸变:理想的正弦波电压基波会发生畸变,引入了低次谐波。
电流畸变与转矩脉动:电压的畸变直接导致相电流波形失真(尤其是在过零点附近),从而引起电磁转矩脉动,使电机运行不平稳。
控制性能下降:导致转速波动,特别是在低速运行时,因为此时死区时间占整个PWM周期的比例更大,影响更为显著。
简单来说,你命令逆变器输出一个电压V_cmd,但由于死区的存在,电机实际得到的电压V_actual < V_cmd,并且这个误差与与电流方向密切相关。

二、死区补偿的基本原理

核心思想:估算出由于死区效应而“损失”掉的那部分电压,然后在控制器输出的指令电压上将其补偿回来。
补偿电压(V_comp)可以表示为:
V_cmd_final = V_cmd + V_comp
其中,V_comp 的符号与相电流的方向有关。

三、常见的死区补偿方法

方式一:基于电流方向的前馈补偿(最经典和常用)
这是最直接和广泛采用的方法。
检测相电流方向(Sign(Ia), Sign(Ib), Sign(Ic)): 经过电流传感器获取三相电流,并判断其方向(正或负)。这是补偿的关键。
计算误差电压: 死区时间造成的平均电压误差能够近似计算为:
V_err = (T_dead / T_pwm) * V_dc * sign(I)
T_dead: 设定的死区时间
T_pwm: PWM周期
V_dc: 直流母线电压
sign(I): 当前相电流的方向(+1或-1)
(注:此外,功率器件的开通压降也会产生误差电压,有时需要一并考虑。)
注入补偿电压: 在SVPWM或SPWM调制环节之前,将计算出的三相误差电压 V_err_a, V_err_b, V_err_c 分别叠加到对应的三相电压指令 U_a*, U_b*, U_c* 上。
        优缺点:
优点: 原理简便,易于建立,计算量小,对改善低速性能效果明显。
缺点: 补偿效果严重依赖于电流方向检测的准确性。在电流过零点附近,电流很小,检测容易受到噪声干扰而出现误判,导致过补偿或欠补偿,反而会引起电流震荡。

方法二:基于时间的补偿法


方法三:基于电压的补偿法


四、补偿流程总结

一个典型的在矢量控制(FOC)中嵌入死区补偿的流程如下:

基于电压的实时补偿是永磁同步电机(PMSM)SVPWM控制中应对死区效应的主流且高效的策略。其核心思想是将死区效应等效为电压误差矢量,直接在参考电压指令上进行修正。以下是该方法的深度解析与达成要点:

代码实现伪代码(以C语言为例)

// 输入:三相电流 ia, ib, ic,参考电压 V_ref_abc,母线电压 V_dc
// 输出:补偿后的 PWM 占空比
void DeadTimeCompensation(float ia, float ib, float ic, float* V_ref_abc, float V_dc) {
// 1. 电流方向检测(带滞环)
static float dir_a_prev = 0, dir_b_prev = 0, dir_c_prev = 0;
float dir_a = (ia > I_TH) ? 1 : ((ia  I_TH) ? 1 : ((ib  I_TH) ? 1 : ((ic < -I_TH) ? -1 : dir_c_prev);
dir_a_prev = dir_a; // 更新历史方向
// 2. 计算每相误差电压
float V_dead = (T_DEAD / T_PWM) * V_dc;
float V_drop = 0.5 * (V_CE_SAT + V_DIODE); // 假设 k=0.5
float deltaV_a = dir_a * (V_dead + V_drop);
float deltaV_b = dir_b * (V_dead + V_drop);
float deltaV_c = dir_c * (V_dead + V_drop);
// 3. 电压补偿
V_ref_abc[0] += deltaV_a; // Phase A
V_ref_abc[1] += deltaV_b; // Phase B
V_ref_abc[2] += deltaV_c; // Phase C
// 4. 执行 SVPWM(输入补偿后的 V_ref_abc)
SVPMW_Generate(V_ref_abc);
}

五、实践中的注意事项

电流检测精度: 这是基于电流方向补偿方法成败的关键。必须使用高质量的电流传感器和良好的硬件滤波,软件上也可以采用迟滞比较或低通滤波来平滑过零点附近的方向判断。

补偿量调节:理论计算公式中的参数(如管压降)可能不精确,实际补偿量通常需要根据实验效果进行微调。可以先从理论值开始,慢慢增加补偿增益,观察电流波形,直到过零点平滑为止。补偿不足或过度补偿都会导致电流波形变差。

低速重点补偿:高速时,死区时间占PWM周期的比例小,影响也小。补偿策略可以设计成在低速区启用,在高速区减小或关闭。

管压降补偿:除了死区时间,功率器件和二极管的导通压降也会产生类似误差,可以考虑一并补偿。公式会更复杂一些:V_err = [ (T_dead/T_pwm) * V_dc + V_ce - V_d ] * sign(I) (其中V_ce是开关管压降,V_d是二极管压降)。

posted on 2025-09-22 22:40  ycfenxi  阅读(9)  评论(0)    收藏  举报