前段时间学FOC学到最后的时候有点泄气了, 以为SVPWM挺难的就放下没继续学, 实属不应该. 今天结合TI白皮书与B站上找的老外的视频教程, 很轻松就理解了.
为什么需要SVPWM?
- 在FOC控制的正向过程(参考dq电流->三相电流), 最后一步是通过SVPWM将Vα和Vβ转换为三相电压, 本质上是要确定一个采样周期内, 三个桥要开多久.
- SVPWM能让三个桥以特定的模式开关, 使一个周期内变化的三相电压积分得到一个电压矢量, 当这个电压矢量是Vα和Vβ合成的电压矢量时, 意味着这个周期内输出的三相电压满足控制的需要.
- SVPWM瞬态下有六个方向的电压矢量, 能够在一个采样周期内合成为任意方向和幅度(在最大幅度以内)的电压矢量, 满足控制的需要.
SVPWM执行过程
扇区的概念
- 三个电桥在工作中不是上臂导通(1)就是下臂导通(0), 所以共有八种开关方式, 其中上臂全开和下臂全开的状态使每个相电压为0, 另外六种状态对应α-β平面上指向0°, 60°, 120°, 180°, -120°, -60°的六个矢量. 六个矢量将平面分为六个扇区, 每个扇区中的电压矢量, 只需要使用扇区分界处的电压矢量来合成, 而不需要使用其它电压矢量.
(白皮书内的导通逻辑编码与视频教程的相反, 但是不影响)
六个矢量可以用三个桥的开关情况来表示, 例如上图的(011)或下图的(100), 表示A相上臂导通, BC相下臂导通, 矢量指向0°并且此时电压矢量幅度是理论最大值.
(110)状态的电压矢量如下, (100)与(110)构成了一个扇区, 该扇区内的任意矢量由这两个矢量合成.
一个采样周期内的循环
- SVPWM在合成一个扇区内的矢量时, 采取的是从000状态出发, 循环回到000状态的方法. 这样做可以保证每个采样周期开始和结束时的状态一致, 无论中间是什么样.
- 在一个周期内的矢量合成方式, 除了000->000以外, 可以有多种合成方法, 以100和110内的扇区为例, 根据伏秒平衡原理, 要想合成某个电压矢量, 我们需要一段时间的100, 一段时间的110, 以及一段时间的零矢量(111和000)来合成(零矢量的引入可以调节幅度). 矢量作用的顺序可以是这样: 000->100->110->000, 也可以将100和110倒过来; 或者换来换去, 000->100->110->100->110->…->000.
- 但是SVPWM选择的是这样的顺序: 000->100->110->111->110->100->000. 当我们计算好所需的100, 110, 零矢量的时间之后, 将它们均匀地分布到一个采样周期内, 如下图
这样可以保证合成所需的矢量, 从000到000, 而且每次变化只改变一个桥的状态
为什么每次变化只改变一个桥?
- mos管有开关损耗, 每次只改变一个桥, 相比一次变动多个, 更节省开关寿命;
- 关于电磁干扰和死区时间的概念, 还需学习.
伏秒平衡
- 类似于基电压矢量积分得到目标电压矢量的思想
所有扇区的循环顺序
- 如下图
三个桥按照导通的顺序排列组合, 最终得到六种组合, 对应六个扇区内的电压矢量. - 也就是说, 我们需要任意电压矢量, 先搞清楚矢量在哪个扇区, 然后根据伏秒平衡计算每个矢量作用时间, 最后按照该扇区固定的模式开关桥就可以.
SVPWM对比传统PWM
- SVPWM对母线电压利用率接近理论极限, 而传统利用PWM模拟正弦波进行调制的方法, 实际利用率只有50%左右.
- 电压利用率: 输出到每个相的最大电压(线电压)与直流输入电压(母线电压)的比值.