FOC电机控制_理论与实战之坐标变化

大家好,又见面了,上一篇文章我们了解了电机的基本知识,区分了有刷,无刷,永磁同步电机,异步电机等等,也大概知道了电机是怎么转动的。今天我们来聊一聊学习FOC都绕不开的坐标变化。这些变化到底有什么用。

想必大家可能在搜其他博客的时候对FOC那个框图绕来绕去的感到迷惑,如果让你自己闭着眼再画一次可能就没头绪,我整理了一下,将框图调整了一下,我想这样就应该好理解了。
如图1所示:

在这里插入图片描述图1

有没有发现这是很对称的一个结构,左边是关于电流的,右边是关于电压的。这样也方便以后调试可以直接在脑中回忆FOC框图,不用再去看什么笔记了。通过这个框图大家可以看到,要想控制电机最开始我们是不是先需要采集电流,那电流具体怎么采集这不是这篇文章我们需要关注的点,后面我自然会说电流怎么被采集。这里我们主要关注这些坐标变化是怎么通过各种转换来实现电机转动的

根据前文我们知道,电机的三相相差120°,由电机的三相绕组组成三个坐标轴,坐标轴两两相差120°,如下图2:

在这里插入图片描述
图2

首先,我们根据第一篇文章知道,如果我们在不同时刻分别控制这三相,我们是不是就可以让电机进行转动,刚刚说到不同时刻,也就意味着我们需要控制单片机在某时刻发对应的占空比才能让电机转动,具体什么时刻发多少占空比,这就需要用到本节的知识了----坐标变化。

我们现在反推一下,如果电机现在转动起来了,是不是三相会产生电流,然后就能我们捕捉这三相的电流,但是三相分析起来是不是很麻烦呀,如果我们把三相的变化投影到xy坐标系上进行分析,这样是不是就将三相变两相了呀。这样我们是不是就很好分析了,因为对我们来说,只有把复杂的事情简单化,这东西才能更好的被掌握嘛。

如下图3

在这里插入图片描述
图3
现在我们运用小学二年级的知识,sin与cos变化
iα = iacos(0°)-ibcos(60°)-iccos(60°)
iβ = ia
cos(90°) + ib*(cos30°) - iccos(30°)
然后转换后是不是就变成了:
iα = ia - 1/2ib - 1/2
ic
iβ = (ia+2ib)/√(3)
现在我们来验证一下,如果给ia流入-1A电流,ib和ic作为流出则都为0.5A,然后又根据基尔霍夫电流定律:ia+ib+ic=0;
我们代入式子可得:
iα = ia + 1/2(-ib - ic) = ia + 1/2(ia)=3/2ia=-3/2A
iβ = 0A
为了让形式上做到统一以及简化,我们把上面的式子乘以**2/3.**也就是让iα = ia=-1A,这就让输入横坐标的电流幅值在整个变化中没有被改变,因此我们也把这种变化叫等幅值变化。

这个我们叫做Clark变化,这是一个叫Clark的外国人创立的,所以后来就以他的名字来命名以此来纪念他对电机控制做出的伟大贡献。

是不是很简单,这就结束了???,当然没有,如果这样简单,FOC电机控制就不可能难倒这么多人了。刚刚我们分析的是静止的三相,我们还要转子没有分析呢。转子是时刻在转动的, d轴方向与转子内磁场方向重合,称为直轴;q轴方向与转子内磁场方向垂直,称为交轴。简单点就是我们把转子方向定义为D轴,垂直定子的为Q轴,如下图4

在这里插入图片描述
图4

刚刚前面说了,我们只有把复杂的事情简单化才能更好的理解,转动的物体显然不好进行分析,我们能不能把运动的物体变为静止来分析呢,当然可以,前面那个αβ轴两相静止坐标系不是一个很好的参照物吗。所以就有了下面的公式
id = iαcos(角度)+iβsin(角度)
iq = -iαsin(角度)+iβcos(角度)
这个我们叫做Park变化,这是一个叫Park的外国人创立的,所以后来就以他的名字来命名以此来纪念他对电机控制做出的伟大贡献。

至于后面的反Park或者叫Park逆变化,反Clark或者叫做Clark逆变化其实就是把电流变电压,这里就不具体推导了,很简单相信大家一看就懂,我直接放公式
反Park变化:
Vα = Vdcos(角度) - Vqsin(角度)
Vβ = Vdsin(角度) + Vqcos(角度)

反Clark变化:
Va = Vα
Vb = (-Vα + Vβ√(3))/2
Vc = (-Vα - Vβ
√(3)) /2

这些公式变化是FOC中最简单的,因为简单点说就是坐标变化。难点就是公式变化得到的Va,Vb,Vc参与的扇区计算,占空比计算。现在让我们一起来探讨探讨。

由第一章我们知道MOS管的作用,如下图5:

在这里插入图片描述
图5

我们把上管工作定义为”1“,下管工作定义为”0“。我们按照排列组合的方式可以知道,这些”0“和”1“可以组成8种状态。分别为 100,110,010,011,001,101,000,111。打个比方,比如100也就意味着如下图6,黄色代表导通工作。

在这里插入图片描述
图6
那这八种状态的排列顺序是怎么样的呢,首先我们要知道,000和111这两种状态我们先不参与讨论,为什么?因为000和111就是下管全工作和上管全工作两种状态。这两种状态不会产生电流。那么还有六种状态,这些管子在开关和导通过程中会有热量产生,也就是损耗。为了最大限度的降低损耗,每个扇区的开关切换,都需要保证只改动一个桥臂的动作,这样发热量最小,功率密度才能做更高。于是乎,我们先从A管开始,只开A管就是100,又由于每次开关一个MOS管,于是就可以排列为100–110–010—011—001—101—100,既然已经定义好了扇区,那U4,U6,U2,U3,U1,U5这些是什么东西,和扇区有什么联系? 大家看一下,100的十进制是不是4,110的十进制是不是6,也就是U4与U6组成了扇区1,也就是100和110组成了扇区1。图7为扇区分布图。

![在这里插入图片描述](https://img-blog.csdnimg.cn/acef8ab4a4b447c98a94e49b26819e3a.png
图7

通常电机控制中,我们把按照我们约定的方向在圆内依次运行的矢量叫做Uref。在每个扇区内Uref都由两个相邻的矢量根据不同的时间合成矢量,因此第一步我们需要知道Uref在哪个扇区。拿第一扇区为例,如图8

在这里插入图片描述
图8

根据图7我们可知,360°分为6个扇区,每个扇区60°,依据arctan函数,在第一扇区,是不是可以得出 一扇区0<arctan(Uβ/Uα)<60°,
二扇区60<arctan(Uβ/Uα)<120°,
三扇区120<arctan(Uβ/Uα)<180°,
四扇区180<arctan(Uβ/Uα)<240°,
五扇区240<arctan(Uβ/Uα)<270°,
六扇区270<arctan(Uβ/Uα)<360°,
然后我们再转换一下,是不是就变为了
一扇区0<Uβ/Uα<√(3)
二扇区|Uβ/Uα|>√(3)
三扇区-√(3)<Uβ/Uα<0
四扇区0<Uβ/Uα<√(3)
五扇区|Uβ/Uα|>√(3)
六扇区-√(3)<Uβ/Uα<0

根据上面是不是我们可得出以下结论:
在第一扇区(0<Uβ/Uα<√(3)),即Uβ>0,Uα>0,Uβ/Uα<√(3)
在第二扇区(|Uβ/Uα|>√(3),即Uβ>0,(Uβ/|Uα|)>√(3)
在第三扇区 -√(3)<Uβ/Uα<0,即Uβ>0,Uα<0,(Uβ/(-Uα))<√(3)
在第四扇区 0<Uβ/Uα<√(3),即Uβ<0,Uα<0,(Uβ/Uα)<√(3)
在第五扇区 Uβ/Uα|>√(3),即Uβ<0,(Uβ/|Uα|)>√(3)
在第六扇区 -√(3)<Uβ/Uα<0,即Uβ<0,Uα>0,(-Uβ/Uα)<√(3)

然后我们再想一想如果我们把公式稍微转换一下,比如第一扇区,Uβ/Uα<√(3)==》√(3)Uα-Uβ>0,至于第二后面的扇区我就不在这里推导了,大家可以自己写一下。写完我们会得到如下公式

在这里插入图片描述
图9

根据上图,要想判定具体扇区,我们只需要Uβ,-√(3)/2Uα-1/2Uβ,√(3)/2Uα-1/2Uβ这三个就可以了。比如我们令W = Uβ,Y = √(3)/2Uα-1/2Uβ,Z=-√(3)/2Uα-1/2
当W>0,令A =1,否则A=0;
当Y>0, 令B =1,否则B=0;
当Z>0, 令C =1,否则C=0;则可以推出
(N)= 4C + 2B + A
比如当A=1时,如果B=1,C=0,N=3,则位于第一扇区
比如当A=1时,如果B=0,C=0,N=1,则位于第二扇区
比如当A=1时,如果B=0,C=1,N=5,则位于第三扇区
比如当A=0时,如果B=0,C=1,N=4,则位于第四扇区
比如当A=0时,如果B=1,C=1,N=6,则位于第五扇区
比如当A=0时,如果B=1,C=0,N=2,则位于第六扇区

现在我们来计算一下矢量作用时间
我们以第一扇区为例:

在这里插入图片描述
图10

可以得出:

在这里插入图片描述
然后我们将Uref投影到相邻两个矢量U4与U6上面:
|Uref|cos(角度) = |U4|(T4/T) + |U6|*(T6/T)
|Uref|sIin(角度) = |U6|(T6/T) + |U6|*sin(60°)

请添加图片描述
图11

至于其他几个扇区我这里就不一个一个推算了。感兴趣的可以推导一下。

在这里插入图片描述
图12

然后我们以七段式SVPWM为例,至于上面是七段式,七段式就是在100与110之间插入0矢量和1矢量,如下图所示:

在这里插入图片描述
图13

最后我们结合图12的结果和图13,就可以算出作用时长了。其实也不是很难是吧。至于代码中是怎么实现的我们下篇文章讲解。今天我们就先了解到这里吧,下篇文章见。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值