本文的学习教材是这篇文章:

彻底吃透SVPWM如此简单 - 知乎 (zhihu.com)

在看本文前你至少得把这篇文章细读一遍。

一、宏观认识SVPWM

首先需要回到直流无刷电机BLDC的驱动方式,BLDC的驱动可以大致分为两种:梯形波形式的六步换相驱动正弦波驱动

本质上而言,BLDC其实也是永磁同步电机(PMSM)的一种,这里涉及到电机学的基本知识:同步电机的基本结构是永磁转子+绕组定子,给绕组定子按一定顺序通三相电绕组便会产生旋转磁场,只要绕组旋转磁场超前转子的永磁励磁磁场那转子就会被拖着转(其实可以简单的理解为电机这东西就是一个磁场拖着另一个磁场转),如果保持绕组产生的旋转磁场超前转子磁场的相位是固定的话,那两个磁场就是同步同周期运行的(只存在固定相位差),这就是同步电机。

而BLDC与PMSM最大的区别就是:BLDC的转子磁场是设计成方波磁场的,PMSM的转子磁场是设计成正弦波磁场的,一般而言BLDC是用方波/梯形波驱动,PMSM是用正弦波驱动;因此BLDC的缺点就是转矩脉动大,在六步换相驱动模式下,可以想象成一个周期内绕组磁场只有6种状态,电机在6种状态之间是骤变的,缺少平滑性。

所以,BLDC也可以用正弦波控制,这就是SVPWM的作用,SVPWM本质上是把同步及其三相逆变桥驱动视为一个整体考虑,计算何时切换每个半桥的导通状态让输出等效为正弦波,而FOC只是一种帮助SVPWM参数整定的一种控制方式,FOC这个算法本身不是拿来直接驱动电机的。

此外,再提一嘴SPWM,SPWM即正弦脉宽调制,目的是通过输出PWM来模拟正弦波(面积等效原理),因此BLDC理论上也确实可以用SPWM来控制,即分别产生每相的SPWM波,控制他们的相位差,可以达到和SVPWM相同的目的。但实际上在三相逆变桥中独立控制每相的SPWM波是比较困难的,要合成三路波形更是难上加难,并且在电机控制上SVPWM方式比SPWM优点更大(更高的电压利用率),所以几乎没人用SPWM来控制BLDC。还有就是,SPWM和SVPWM实际上是卡巴斯基跟巴基斯坦的关系,两者提出的场景的不一样,只是名字像。

二、理解SVPWM的原理

下面主要从减少数学推导的方向理解SVPWM的原理,详细的数值分析可以看上面的链接。

首先那个链接里有个很形象的图:

这个图实际上就是前面提到的同步电机的运行原理:给三相绕组ABC加上相位差120°的正弦交流电,绕组(在定子上)便会产生合成旋转磁场,即图里的黑向量(暂且称之为Vo1),电机的转子便会随着这个合成旋转磁场转动,并且这个合成的Vdelta大小恒定,是每相正弦交流电幅值的1.5倍(这是电机学的内容,电机学里这东西叫旋转磁动势)。

那SVPWM的目的就很明确了:通过控制三相逆变器使输出的波形能够复现合成向量Vdelta,这也是为什么SVPWM叫空间矢量脉宽调制。

回到三相逆变桥本身,这个东西会有8种工作状态,对应八种不同的每相相电压Ua,Ub,Uc,由于在空间上电机三相绕组是间隔120°放置的,所以把这8个工作状态下的三相电压进行矢量合成,就可以得到8个合成电压矢量,这8个向量中有6个非0向量和2个0向量。因此,到这里我们可以概括为:我们可以通过控制三相逆变桥,使其产生8种电压向量。


所以,接下来的方向就是如何通过控制这8个向量,来复现我们需要的这个Vdelta。在每个开关周期Ts内,我们可以用2个非0向量和1个0向量来实现这个效果,具体就是下面这部分:

这里最抽象的就是这个伏秒平衡,学过电力电子应该知道,讲斩波时的伏秒平衡是指稳态的一周期内电感变化量为0(磁链平衡),或者说Von Ton=Voff Toff,但SVPWM这里列的公式跟我所学的电力电子里的伏秒平衡看起来都不是一回事,我觉得这里最好这么理解:

严格来讲:极小时间内(开关周期Ts)输出电压的积分,等于有效作用向量*对应作用时间与0向量*0向量作用时间的累加。

感性认知:如果各种形状的U(t)函数与横坐标轴t围成的面积相同,那作用出来的电流也近似(有点像PWM的面积等效原理)。

提出这个式子的目的就是求出每个有效作用向量的作用时间(这里就是V4 V6 V0的作用时间),于是经过一段数学推导和矢量合成(过程见原文),我们就能得出下面几个式子:

其中Vdc即三相桥的电源,um即我们复现的Vout的幅值,在实际实现算法时,Vdc是固定的,而um是需要我们确定的(即我们想让SVPWM复现的Vout幅值是多少),

即我们需要先确定调制比M,然后才能用上面的公式算出每个开关周期Ts里有效作用向量的作用时间,这个先后顺序一定要搞清楚。


现在最抽象的部分——确定每个Ts里各个电压向量的作用时间——已经解决了,那下面的问题就是每个周期里这些作用时间如何分配,在六个扇区之间又如何连接。原文章里这部分的分析过于细致,感兴趣的可以自己去看,从应用的角度我们可以这么认为:8个电压矢量的使用顺序的安排方法是建立在让开关次数最少的原则上的,否则就会有很多种不同的分配方式。于是就有了下面这两张图的结论:

(有个可以提一句的是,在上面伏秒平衡那个公式里有人可能就会决定,0向量模都是0,在加法里不是完全没用为什么还要写出来,实际上那两个0向量最大的作用就是实现在每个扇区切换之间只用改变一个电压向量,看上面两个图就能发现,每个扇区在电压向量合成结束之后三相的驱动信号都是0,这样可以直接进入下一个扇区中电压向量的合成)

到这里,SVPWM的原理部分已经差不多结束了,再简单总结一下SVPWM为什么要叫这个名字:空间矢量脉宽调制

空间矢量:SVPWM是从如何重现同步电机的三相合成磁场出发的,三相绕组磁动势是由施加的脉冲的电压积分而产生的(旋转磁动势实际上是由电流产生的,所以严格意义来讲不是对电压矢量合成,这个有点绕,不理解先放下就好),同六步换相控制与SPWM不同,SVPWM实际上是在由目的倒推中间方法。

脉宽调制:SVPWM输出的实际上还是PWM波形,只是因为面积等效原理PWM作用在有惯性环节的负载上和正弦波效果是近似的。

【理论分析】理解SVPWM技术相关推荐

  1. 深入理解分布式技术 - BASE 理论

    文章目录 Pre Base 理论概述 三要素解读 基本可用 软状态(允许存在中间状态) 最终一致性 全局时钟和逻辑时钟 不同数据一致性模型 强一致性 弱一致性 最终一致性 CAP VS BASE Pr ...

  2. 抖音SEO优化源码,企业号搜索排名系统,技术理论分析搭建。

    前言:抖音SEO优化源码,企业号搜索排名系统,技术理论分析搭建. 抖音seo源码如何搭建?抖音seo排名优化系统软件部分源码分析,代码打包中... 场景:在 python 中,你可以使用 list[1 ...

  3. 一个很重要但很多人不理解的技术,P2P丨网络穿透与NAT原理分析

    一个很重要但很多人不理解的技术,p2p 1. NAT原理 2. Nat类型 2. 网络穿透原理 视频讲解如下,点击观看: 一个很重要但很多人不理解的技术,P2P丨网络穿透与NAT原理分析丨零声学院官方 ...

  4. 抖音SEO优化源码,搜索排名系统,技术理论分析,抖音矩阵,抖音seo系统。

    前言:抖音SEO优化源码,搜索排名系统,技术理论分析,抖音矩阵,抖音seo系统.抖音seo矩阵系统底层框架上支持了ai视频混剪,视频产出,视频AI制作,多账号多平台矩阵,视频一键内部分发,站内实现搜索 ...

  5. 深入浅出讲解FOC控制与SVPWM技术

    深入浅出讲解FOC控制与SVPWM技术 0.前言 0.1 什么是FOC 0.2 FOC驱动器和无刷电调的区别 1.从电机原理说起 1.1 一些基础知识 1.2 无刷电机原理 1.3 关于BLDC和PM ...

  6. 海洋工作室——网站建设专家:【原】2009.NET年技术大会总结,有图片,说说我理解的技术大会【上】...

    阅读建议:一定要好好看完,然后做出你的评价,同时建议您留意高亮部分. 本来打算好好总结一下2009.NET年技术大会的.刚刚看到同事[LanceZhang]的博客,总结的挺快,挺酷的!而且总结的全面的 ...

  7. 转稚晖军大佬 --【自制FOC驱动器】深入浅出讲解FOC算法与SVPWM技术

    转稚晖军大佬 --[自制FOC驱动器]深入浅出讲解FOC算法与SVPWM技术 [自制FOC驱动器]深入浅出讲解FOC算法与SVPWM技术 0.前言 最近想做一个机器人项目,设计中需要用到高性能超小体积 ...

  8. FOC算法与SVPWM技术

    最近看到了FOC这个东西,感觉很有意思,想着以后用这个算法做个东西,目前的想法是用开源的ODrive方案,自己做一个有感单电机驱动的板子,并且加入一点自己的东西,但是这不是目前工作的重点,所以就先学习 ...

  9. 如何深刻理解高光谱技术的机理?如何高效处理好高光谱数据?如何针对具体领域建立切实可行的高光谱技术应用解决方案?

    光谱和图像是人们观察世界的两种方式,高光谱遥感通过"图谱合一"的技术创新将两者结合起来,大大提高了人们对客观世界的认知能力,本来在宽波段遥感中不可探测的物质,在高光谱遥感中能被探测 ...

最新文章

  1. java 静态数据_Java 静态数据初始化的示例代码
  2. ECCV 2020 Spotlight | 图像定位上的细粒化区域相似性自监督
  3. linux内核printk调试手段,[Mini2440] 内核调试手段之 printk
  4. python面试常见题目
  5. PHP简单功能的实现
  6. python的print
  7. 自定义控件(视图)2期笔记13:View的滑动冲突之 内部拦截法
  8. 机器学习 —— 概率图模型(Homework: CRF Learning)
  9. localdatetime 获取天_LocalDateTime的一些用法
  10. 不得不爱开源 Wijmo jQuery 插件集(13)-【Tooltip】(附页面展示和源码)
  11. linux mysql 卸载,安装,测试全过程
  12. Oracle下sqlplus无法使用命令退格删除和历史记录的解决方法--使用rlwrap
  13. Android 使用View绘制文字(DrawText)技术总结
  14. 边缘计算,又一个轮回
  15. 小米路由pro php,完全拆解小米路由器Pro:无接口,预加硬盘无望
  16. threejs 模型添加文字的几种方式
  17. 硬科技驱动西咸新区发展新引擎
  18. 谈谈人们常说的“一时糊涂,鬼迷心窍”!
  19. 修真院教学模式四大体系之学习方法篇
  20. Ms Sql Server 2000 个人绿色版 5.62

热门文章

  1. 问题解决:execjs._exceptions.ProgramError: TypeError: 缺少对象
  2. 登录时,jsp显示缺少对象
  3. Canvas 2D详解
  4. Linux fdisk与sfdisk区别
  5. ML算法(一)——KNN聚类的原理和实现
  6. Oracle Spacial(空间数据库)空间聚集函数
  7. Hadoop分布式集群的安装(图解)
  8. 初识TDD(原理+实例)
  9. 四维图新亮相上汽大众合作伙伴技术展示日智能驾驶专题活动
  10. [Unity]SqlCilent.SqlException(0x80131904):对象名‘dbo. ‘无效