1. 死区效应概述

大家好,我是做电机驱动多年的老工程师了。今天咱们聊聊死区补偿这个话题。说实话,死区效应是FOC系统里一个绕不开的坎儿。很多刚入行的朋友,调了半天电流环,波形就是不好看,十有八九是死区在捣鬼。

1.1 什么是死区时间

死区时间,说白了就是上下桥臂同时关断的那一小段空白期。你想想看,IGBT或者MOSFET开关速度再快,也不可能瞬间完成导通和关断。如果上管还没完全关断,下管就导通了——嗯,那就炸管子了。

所以我们在PWM信号里故意插入一段延迟。这段延迟就是死区时间。一般设置在几百纳秒到几微秒之间,具体看功率管的开关特性。我在项目中遇到过用1μs死区时间的,也用过3μs的,得看实际工况。

死区时间的典型值:

功率器件类型 典型死区时间 应用场景
低压MOSFET(<100V) 200ns - 500ns 小型伺服、无人机
高压MOSFET(600V+) 500ns - 2μs 工业伺服、变频器
IGBT模块 2μs - 5μs 大功率驱动、电动汽车

1.2 死区产生的原因

为什么会需要死区?原因其实很简单——硬件不是理想的。

  • 开关延迟:驱动芯片有传播延迟,功率管有开通/关断延迟。这些延迟加起来,少说也有几十到几百纳秒。
  • 寄生参数:栅极电容、米勒效应,都会拖慢开关速度。我记得有一次调试一个高压驱动板,死区设了2μs还是炸管,后来发现是栅极电阻选大了,开关速度太慢。
  • 温度漂移:温度升高,开关速度会变慢。所以死区时间得留够余量,不能卡着极限设。

注意:死区时间不是越大越好。死区越大,波形畸变越严重,电流谐波也越大。我曾经见过有人为了保险,死区设到10μs,结果电机嗡嗡响,电流波形跟锯齿似的。

1.3 死区对电流波形的影响

死区对电流波形的影响,说白了就是引入了非线性失真。咱们从时域和频域两个角度看看。

时域上看:

在死区期间,电流通过续流二极管续流。这时候电压不是由PWM决定的,而是由电流方向决定的。电流从电机流向母线,还是从母线流向电机,结果完全不一样。

举个例子。假设A相电流为正(流出桥臂),死区期间下管还没导通,电流就通过下管的续流二极管走。这时候A相电压被钳位到负母线。反过来,如果A相电流为负,死区期间电压就被钳位到正母线。

你看,死区让实际输出电压偏离了理想PWM值。这个偏差就是死区误差电压。它的大小等于死区时间乘以母线电压再除以PWM周期。

死区误差电压公式:

V_err = (T_dead / T_pwm) * V_dc

其中T_dead是死区时间,T_pwm是PWM周期,V_dc是母线电压。

频域上看:

死区误差电压跟电流方向有关,而电流方向每60°电角度变化一次。这就导致误差电压里含有丰富的低次谐波,尤其是5次、7次谐波。我调过一台伺服驱动器,空载电流THD高达15%,补偿后降到3%以下,效果很明显。

1.4 死区对电压矢量的影响

死区对电压矢量的影响,比想象中要复杂。咱们从空间矢量角度来分析。

理想情况下,我们通过SVPWM合成一个旋转的电压矢量。但死区会引入一个误差矢量。这个误差矢量的方向跟电流矢量方向相反。说白了,死区相当于在电流方向上引入了一个等效电阻。

这个等效电阻有多大?我算过,大概等于:

R_dead = (T_dead / T_pwm) * V_dc / I_avg

其中I_avg是平均电流。你看,这个等效电阻跟电流大小成反比。电流越小,等效电阻越大。这就是为什么轻载时死区效应特别明显——电机低速运行时,电流小,死区造成的电压畸变更严重。

我的经验:在低速重载工况下,死区补偿尤其重要。我曾经调试一个AGV小车的驱动,低速时电机一顿一顿的,怎么调PI参数都没用。后来发现是死区补偿没做好,加上补偿后问题就解决了。

死区对电压矢量的影响,总结起来有三点:

  1. 幅值误差:实际电压矢量幅值小于理想值,导致电机出力不足。
  2. 相位误差:电压矢量相位发生偏移,影响电流环的解耦效果。
  3. 谐波注入:误差矢量含有6k±1次谐波,导致电流波形畸变。

嗯,这里要注意一点。死区效应在低速时影响最大,高速时反而小。为什么?因为高速时反电动势大,电流调节器输出大,死区误差占比就小了。所以很多人在高速时感觉不到死区问题,一到低速就露馅了。

好了,这一章咱们把死区效应的基本概念讲清楚了。下一章我会详细讲讲死区补偿的具体方法,包括硬件补偿和软件补偿两种思路。到时候我会分享一些我在项目中踩过的坑,希望对你有帮助。