1. SVPWM 基础回顾:从三相逆变器拓扑到电压空间矢量
各位工程师朋友,咱们今天聊的这门课叫《SVPWM 电流采样噪声抑制技巧》。但别急着跳进噪声的坑里,第一件事,得先把 SVPWM 的老底摸清楚。
我见过不少做电机控制的同行,上来就调 PI 参数、调采样时序,结果噪声问题怎么都搞不定。回头一看,连 SVPWM 和 SPWM 的本质区别都没吃透。说白了,地基没打牢,楼盖得再高也晃悠。
所以这一章,咱们就踏踏实实地把 SVPWM 的基础再过一遍。我会从三相逆变器拓扑讲起,然后引出电压空间矢量的概念,最后解释清楚——为什么 SVPWM 比 SPWM 更适合电机控制。
1.1 三相逆变器拓扑:八个开关状态
先看最经典的电压型三相全桥逆变器。结构很简单:六个开关管(IGBT 或 MOSFET),上下桥臂各三个,输出接电机三相绕组。
核心要点:同一桥臂的上下管不能同时导通,否则就是直通短路。这是逆变器设计的第一条铁律。
每个桥臂的开关状态可以用一个二进制位表示:上管导通为 1,下管导通为 0。三个桥臂合起来,一共 2³ = 8 种状态。
| 状态编号 | a 相 (Sa) | b 相 (Sb) | c 相 (Sc) | 说明 |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 零矢量 V0 |
| 1 | 1 | 0 | 0 | 有效矢量 V1 |
| 2 | 1 | 1 | 0 | 有效矢量 V2 |
| 3 | 0 | 1 | 0 | 有效矢量 V3 |
| 4 | 0 | 1 | 1 | 有效矢量 V4 |
| 5 | 0 | 0 | 1 | 有效矢量 V5 |
| 6 | 1 | 0 | 1 | 有效矢量 V6 |
| 7 | 1 | 1 | 1 | 零矢量 V7 |
这 8 个状态里,有 6 个是有效矢量,2 个是零矢量。零矢量就是三个上管全通或全断,电机端电压为零。
我的经验:刚开始做逆变器时,我总以为零矢量是浪费时间的。后来才明白,零矢量是调节电压幅值和降低谐波的关键。没有零矢量,SVPWM 的调制比根本提不上去。
1.2 电压空间矢量:从静止坐标到旋转磁场
好,现在有了 8 个开关状态,怎么把它们变成电机能用的旋转磁场呢?
这里要用到 Clark 变换。把三相静止坐标系 (a, b, c) 映射到两相静止坐标系 (α, β)。公式不复杂,但咱们先看结果:
Vα = Vdc × (2/3) × (Sa - 0.5×Sb - 0.5×Sc)
Vβ = Vdc × (2/3) × (√3/2 × Sb - √3/2 × Sc)
把 8 个状态代进去,就能在 α-β 平面上画出 6 个有效矢量和 2 个零矢量。这 6 个有效矢量互差 60°,形成一个正六边形。
看到这个六边形了吗?SVPWM 的核心思想就是:用这 6 个固定方向的矢量,去合成任意方向和大小的目标电压矢量。目标矢量落在哪个扇区,就用哪两个相邻的有效矢量来合成。
1.3 SVPWM vs SPWM:为什么 SVPWM 更适合电机控制?
这个问题,我当年刚入行时也困惑过。SPWM 不是也能调压调频吗?为什么非要用 SVPWM?
咱们直接上对比表:
| 对比项 | SPWM | SVPWM |
|---|---|---|
| 直流电压利用率 | 约 0.866 | 约 1.0(最高可达 1.1547) |
| 谐波特性 | 低次谐波含量较高 | 谐波集中在开关频率附近,易滤波 |
| 电流波形质量 | 一般,存在明显脉动 | 更接近正弦,转矩脉动小 |
| 母线电压利用率 | 低,需要更高母线电压 | 高,同等母线电压下输出更高 |
| 数字化实现 | 简单,查表或计算即可 | 稍复杂,需扇区判断和矢量合成 |
| 过调制能力 | 有限,易饱和 | 强,可平滑过渡到六阶梯波 |
说白了,SVPWM 最大的优势就是直流电压利用率高。SPWM 的相电压峰值最多只能到母线电压的一半,而 SVPWM 可以到母线电压的 0.577 倍。换算成线电压,SVPWM 能输出完整的母线电压,SPWM 只能输出 86.6%。
注意:这个 15% 的电压利用率差距,在高速电机控制中是致命的。我曾经在一个项目中,客户要求电机在 3000rpm 下输出额定转矩,用 SPWM 死活达不到,换成 SVPWM 后轻轻松松。这就是硬差距。
另外,SVPWM 的谐波特性更好。它的谐波主要集中在开关频率及其倍频附近,用低通滤波器很容易滤掉。而 SPWM 会产生较多的低次谐波,这些谐波会直接导致电机发热和转矩脉动。
1.4 SVPWM 的合成原理:伏秒平衡
SVPWM 的数学基础是伏秒平衡原理。简单说就是:在一个 PWM 周期内,用相邻两个有效矢量和零矢量的组合,使得平均电压等于目标矢量。
公式长这样:
T_s × V_ref = T1 × V1 + T2 × V2 + T0 × V0
其中:
T_s = T1 + T2 + T0
V_ref 是目标电压矢量
V1、V2 是相邻有效矢量
T1、T2 是对应的作用时间
T0 是零矢量作用时间
解这个方程,就能算出 T1 和 T2。然后根据 T1、T2 和 T0 来生成 PWM 波形。
我的习惯:实际工程中,我一般用七段式 SVPWM。虽然计算量比五段式大一点,但谐波性能更好,电流采样窗口也更对称。后面讲电流采样噪声时,你会看到这个对称性有多重要。
1.5 为什么 SVPWM 是电机控制的首选?
总结一下,SVPWM 之所以成为电机控制领域的事实标准,原因有三:
- 电压利用率高——同等母线电压下,电机能跑得更快、出力更大。
- 电流波形好——谐波少,转矩脉动小,电机发热低。
- 数字化友好——天然适合 DSP/FPGA 实现,扇区判断和矢量合成都是标准操作。
嗯,说到这里,你可能已经理解了 SVPWM 的基本框架。但别急,这只是开始。后面我们会深入到一个非常实际的问题——电流采样噪声。你会发现,SVPWM 的开关动作本身就是噪声源,而如何在这个噪声环境中准确采样电流,才是真正的工程挑战。