三六相PMSM的FOC算法的数字实现(二)

  • 第二章 SVPWM算法
    • 2.1 基本电压矢量的由来
    • 2.2 扇区判断
    • 2.3 非零矢量(基本电压矢量)作用时间计算
    • 2.4 SVPWM的调制原则(开关顺序如何切换)
    • 2.5 七段式PWM驱动电机转动机理分析

第二章 SVPWM算法

以三相FOC为例,阐述SVPWM原理及其具体实现。根据1.2.3,SVPWM主要包括:扇区判断、基本矢量作用计算、Tcomp计算及PWM生成,如下图2-0.1所示。

图2-0.1 SVPWM算法整体框图

NOTE:本次采用的三相PMSM的电机定子绕组为星型"Y"结构。本设计采用的FOC策略不采用iPark变换,直接在dq坐标系进行计算。


2.1 基本电压矢量的由来

问题:1、为什么会有基本电压矢量(开关组合怎么得到基本电压矢量)

如前所述,电机每一相上具有正弦电压,这是控制逆变器开关组合在输出得到的效果。故,逆变器开关管上的控制波形即PWM波是本质,电机的控制转化为对PWM的控制。

图2-1.1,是三相逆变器电路图。

图2-1.1 三相逆变器电路图

设直流母线侧电压为Udc,逆变器输出的三相相电压为UAO(t)、UBO(t)、UCO(t),其分别加在空间上互差120°的三相平面静止坐标系上,再定义三个电压空间矢量uao(t)ubo(t)uco(t),它们的方向始终在各相的轴线上,而大小则随时间按正弦规律做变化,时间相位互差120°。假设为相电压基波峰值Um,f为电源频率,则有:



则,三相电压空间矢量相加得目标电压矢量us(t)(下文也记作Uref) :

us(t) 是一个以不变幅值1.5Um,角速度w逆时针旋转的空间矢量,该矢量在平面三相静止坐标系投影可得到对称的三相正弦相电压。以上推导出了目标空间矢量的表达式,以下按照开关的不同组合,合成该空间矢量。

考虑极限情况:同一桥臂上的开关管全开或者全关。记S=(a,b,c)为开关组合,取S=(1,0,0),则:

图2-1.2 三相逆变器电路图

同理,可以得到其他开关组合的各相电压表达式。

又,当S(a)=1时,UAO(t)=Udc;S(b)=1时,UBO(t) =Udc;S( c)=1时,UCO(t) =Udc,故可以将式2-0定义为:

故而S(a,b,c)便利所有取值组合(2^3=8种),可在空间上得到8个基本电压矢量(U0-U7),零矢量U0、U7在原点,U4-U5按逆时针60°递增均分平面。将各变量罗列值下表2-1:

表2-1 开关状态与相、线电压及基本电压矢量的关系表

各电压矢量在空间内的分布如下图2-1.3所示,

图2-1.3 八矢量空间分布图

上述分析只考虑了开关管极限开关情况,是定性分析,得到了8个具有界定作用的空间基本电压矢量。若加以时序控制(开关的时间长短控制)进行定量分析,可想能够得到空间的任意电压矢量(即目标电压矢量us(t))。[在得到边界基本电压矢量后,假设us(t)在I扇区,就可以控制U4、U6的开关时间,使两者的合成矢量等于us(t)。

以上讨论,通过目标矢量和开关控制的假设分析,探讨了提出基本电压矢量概念的原由。以下继续探讨SVPWM算法的推导过程。


2.2 扇区判断

扇区判据是Uref所在的空间位置,因为采用的FOC算法不包含iPark变换,经过Park变换得到Id、Iq经过PI调节得到Ud、Uq,最后送入SVPWM模块。故扇区判断在dq、αβ混合坐标系中判断,如下图2-2.1。

图2-2.1 dq坐标系和αβ坐标系Uref位置关系

其中,θ为电角度,由电机转子机械角度乘以极对数得到,ε为目标矢量和d轴的夹角,ε=arctan(Uq/Ud),λ=ε+θ为目标矢量与轴的夹角,作为扇区判据。目标电压矢量所在空间位置以60°均分为6个扇区,记作I、II、III、IV、V、VI。

其中,目标矢量所在扇区号与角度值(角度制)对应关系如下表2-2.1。

表2-2.1 扇区号 的对应关系


2.3 非零矢量(基本电压矢量)作用时间计算

续2.1节,对于某个扇区内任意的,需要确定相邻的两个基本电压矢量的作用时间,即开关管开通关闭的时间。如图2-3.1,以第一扇区为例,计算基本非零矢量的作用时间。

图2-3.1 第I扇区基本矢量与Uref的关系

其中为目标矢量与扇区起始边界的夹角(与作用时间计算相关),根据图2-3.1中各矢量关系,在所围成三角形并运用正弦定理:

上式中,(经过等幅值坐标变换,乘以系数2/3),从而得到第一扇区两非零矢量作用时间:

式中,m为调制系数,

Ts为PWM波的周期。由伏秒平衡原理知,每个扇区内,都有
其中,T0和T7对应零矢量U0、U7的作用时间,Tfir和Tsec为逆时针的两个非零矢量作用时间。当零矢量作用时间为0时,此时幅值最大为2/3Udc,如图2-3.2,合成的目标电压矢量的幅值最大不能超过由基本电压矢量组成的的正六边形边界(图中虚线正六边形)。若超出将会发生过调制现象,逆变器输出电压波形将会失真。所以在SVPWM 调制模式中,最大不失真电压矢量将被限制在下图所示正六边形的内切圆中,此时目标电压矢量幅值的大小为2/3Udc(即最大正弦相电压幅值)。当采用SPWM 调制模式时,在不失真的情况下,逆变器能输出的最大正弦相电压幅值大小为1/2Udc。比较可知,采用SVPWM 调制模式可使母线直流电压的利用率更高,而它们的母线直流利用率之比为1.1547,即采用SVPWM 调制模式比SPWM 调制模式的母线直流电压利用率提高了约15.47%。

图2-3.2 SVPWM调制模式目标电压矢量幅值边界


2.4 SVPWM的调制原则(开关顺序如何切换)

SVPWM算法,通过调制得到目标PWM,制定以下两条准则:

(1)对非零矢量:基本电压矢量作用顺序分配需满足,每次开关动作时只改变其中一相的开关状态,以减小大电流时开关损耗;

(2)对零矢量:在整个周期内进行平均分配,以产生对称的PWM波,能够有效降低PWM波的谐波分量。

基于上述两个原则,采用7段式PWM方式,需要将Ufir和Usec以及U0和U7充满Ts。以第I扇区为例,得到的开关波形如下图2-4.1:

图2-4.1 第I扇区的开关切换波形

由上图可知,开关组合共有7段:0-4-6-7-6-4-0,纵向看0段对应S(a,b,c)=(0,0,0),4段对应S=(1,0,0),其他各段依次类推,则高端a、b、c三个开关管的控制波形呈现上图变化趋势。下表2-4.1,给出了各个扇区的开关切换组合形式。

表2-4.1 位置与开关切换顺序关系

上图得到对称的PWM控制波形,在算法上是很好实现的。如下图2-4.2,黑色线和红色三角波相交,在交点处发生翻转,只需将交点处对应的时间值送入三角波比较器中,即可得到目标PWM,如下式,记:

其中,Ts为PWM周期,Tx为第一个非零矢量作用时间,Ty为第二个非零矢量作用时间。Taon、Tbon、Tcon即a、b、c三个开关管的PWM的时间翻转值。

图2-4.2 扇区I的3路PWM波形


2.5 七段式PWM驱动电机转动机理分析

上节分析,最终得到了每个扇区的7段式PWM波形,现提出问题,上述波形是如何让电机在360°空间旋转的。

由前所述,目标电压矢量Uref以2πf角速度逆时针旋转,f为电源频率,当在空间旋转一圈时(2π),当三角载波频率为fs时,记频率比R=fs/f即包含PWM波的周期个数,则每次旋转的角度增量为。2.4节分析到,每个扇区内,两个边界非零矢量通过恰当的开关比例(作用时间长短)可以合成该扇区内的任意目标电压矢量,所以从I扇区旋转到II扇区时,PWM的波形趋势是按照图2-4.1中变化的,但其占空比是按照一个方向变化的,如下图2-5.1为II扇区开关切换波形,对比I扇区波形知a管占空比按缩小趋势过渡到II扇区,b管占空比按增大趋势过渡到II扇区,c管基本不变。

图2-5.1 第II扇区的开关切换波形

所以,生成Uref在空间实际上是数字化离散的,在时域体现为磁链并非是标准的圆形,而是一系列弦截线相连而成。所以,理论上只要R足够大即载波频率(PWM频率)越大,就可以得到无限接近标准圆形的磁链。当fs足够大时(1KHz),采用上述控制策略的实测效果,电机就可以十分平滑的运行,也根本看不到电机转动时有停顿感(因为电机的PWM控制不是连续的,所以觉得电机转动会不流畅,但实际并非如此)。以上,详细阐述了SVPWM算法,解释了基本电压矢量(非零矢量)存在的意义,给出了扇区判据,得到了非零矢量各个扇区的作用时间表达式,并得到PWM切换点的时间值,最后分析了PWM波控制电机转动的机理。

综合第一、二章分析,将整个PMSM的FOC控制划分成以下三条路线:

(1)电机和逆变器角度:PWM波的开关组合=>三相正弦电压=>空间目标电压矢量=>圆形磁链=>电机转动;

(2)反馈环路角度(电流环+速度环+坐标变换):电机转动=>转速=>磁力=>转矩=>磁场=>电流;

(3)SVPWM算法角度:电流(Ud、Uq无量纲体现)=>扇区判断+基本电压矢量作用时间+PWM切换节点时间Txon=>PWM;

清楚看到,上述三条线将整个PMSM的FOC控制串接起来,各个环节缺一不可,以下着重介绍FOC的数字实现。

三六相PMSM的FOC算法的数字实现(二)相关推荐

  1. 程序员面试题精选100题(63)-数组中三个只出现一次的数字[算法]

    题目:一个数组中有三个数字a.b.c只出现一次,其他数字都出现了两次.请找出三个只出现一次的数字. 分析:在博客http://zhedahht.blog.163.com/blog/static/254 ...

  2. 有感FOC算法学习与实现总结(转)

    原文:https://blog.csdn.net/u010632165/article/details/103656254 文章目录 基于STM32的有感FOC算法学习与实现总结 1 前言 2 FOC ...

  3. 关于PMSM电机FOC驱动的一些问题

    关于PMSM电机FOC驱动的一些问题 引用的文章,为尊重原作者,这里放链接: 1.控制框图 2.基本坐标系变换 2.1 clarke变换 2.1 park变换 2.2 ipark变换 3.逆变原理(S ...

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

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

  5. FOC算法与SVPWM技术

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

  6. STM32 电机教程 22 - 基于ST MCLIB无感FOC算法变有感(HALL)FOC算法

    前言 磁场定向控制又称矢量控制(FOC), 本质上为控制定子电流的幅度和相位,使之产生的磁场和转子的磁场正交,以产生最大的扭矩. PMSM的磁场定向控制框图如下图所示: 第21讲对比分析了基于ST M ...

  7. 天池竞赛-津南数字制造算法挑战赛【赛场二】解决方案分享

    天池竞赛-津南数字制造算法挑战赛[赛场二]解决方案分享 一.前言 竞赛页面 团队名BugFlow,最终排名35/2157 虽然成绩一般,但是作为一支目标检测领域的新手队伍,仅仅有一块1070显卡,从零 ...

  8. 【OpenCV/C++】KNN算法识别数字的实现原理与代码详解

    KNN算法识别数字 一.KNN原理 1.1 KNN原理介绍 1.2 KNN的关键参数 二.KNN算法识别手写数字 2.1 训练过程代码详解 2.2 预测分类的实现过程 三.KNN算法识别印刷数字 2. ...

  9. 小猫爪:PMSM之FOC控制07-有传感器的速度环

    小猫爪:PMSM之FOC控制07-有传感器的速度环 1 前言 2 加入速度环 3 传感器获取转子位置的思路 3.1 编码器 3.2 霍尔位置传感器 4 移植 END 1 前言   前面已经实现了电流闭 ...

最新文章

  1. Python使用matplotlib函数subplot可视化多个不同颜色的折线图、自定义数据点的形状、自定义折线图的颜色
  2. 杨兴平离职完全是意料之中
  3. ICCV 2017 《Towards End-to-End Text Spotting with Convolutional Recurrent Neural Network》论文笔记
  4. mysql 1066解决方法_MySQL查询语法帮助:错误#1066-表格/别名不唯...
  5. VC++多线程工作笔记0004---线程相关操作
  6. python调用c++深度学习模型生成的dll(传入图片,返回多个结果)
  7. 国际科学数据服务平台 - csdb_拔剑-浆糊的传说_新浪博客
  8. python excel 饼图_通过python xlsxwriter模块生成EXCEL柱状图、饼图
  9. 制作u盘winpe启动盘_如何制作U盘启动盘
  10. 不积跬步无以至千里008
  11. Ardunio开发:esp32—cam摄像头
  12. 二十一世纪大学英语读写教程(第二册)学习笔记(原文)——1 - Winston Churchill—His Other Life(丘吉尔与绘画)
  13. 【一文读懂】python 中的 numpy.reshape(a, newshape, order=‘C‘) 详细说明及实例讲解
  14. poj 1845 Sumdiv (等比求和+逆元)
  15. 数据库错误代码:1055(Error Number: 1055) 解决方法
  16. zk-snark之R1CS-QAP
  17. 解决0xc000012f 损坏的映像rasman.dll没有被指定在windows运行问题
  18. linux账号与群组
  19. 艾司博讯:拼多多企业店铺和个人店的区别在哪里?
  20. 每日一道 LeetCode (36):相交链表

热门文章

  1. 精通正则表达式笔记二---正则表达式基础概念?,+,*,{ },\,“ “,时间,小结
  2. java jetty的classpath_java游戏服引入jetty
  3. 希捷 sshd 微型计算机,8GB SSD模块 希捷1TB SSHD简介_希捷 Laptop 1TB 5400转 8GB混合硬盘_内存硬盘评测-中关村在线...
  4. 整理经济学人词频表(词频分割过程)
  5. Linux命令手册-通过文件名查找文件(find、which、locate)(详解)
  6. 推荐黑莓实用软件 bbChecklist [下]
  7. 目前最新《智能社石川 Nodejs+WebSocket+Html5》
  8. 服务器操作系统2018,SOLIDWORKS2017、2018、2019对电脑配置和操作系统的要求!
  9. MySQL规范及优化
  10. 移植TP-LINK TL-WN721N 驱动到micro2440(by liukun321咕唧咕唧)