打印
[电机应用]

FOC算法中的Clark、Park变换及仿真

[复制链接]
1744|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 RunningX 于 2020-5-9 11:40 编辑

在FOC电机控制中,相电流是正弦波,处于一直变化的状态,不利于电流的控制,所以需要通过一些变换(即Clark、Park变换),使得控制量恒定。可以用仿真画出这三个相电流A,B,C,如下图:

利用Clark变换公式,将三个变量(A,B,C三相电流)转化为两个变量(Alpha,Beta)。Alpha = A;Beta = (2B+A)/(sqrt(3));
转换后Alpha,Beta的图形如下:

虽然变量少了,但Alpha,Beta仍然是正弦波,处于一直变化的状态。所以就需要用到Park变换了,
ParkD = cos(Theta)* Alpha + sin(Theta) * Beta;  ParkQ = -sin(Theta) * Alpha + cos(Theta) * Beta;
可得到ParkD,ParkQ的波形如下:

可以看到现在ParkD,ParkQ都是大小恒定的量了。
这个时候就很方便进行电流的控制了。一般情况下在这里就会进行PID控制了

下面是RePark变换。假设给定的ParkD,ParkQ也是上面那个图的大小;那么经过ReParK变换,
Alpha = cos(Theta) * ParkD - sin(Theta) * ParkQ; Beta = sin(Theta) * ParkD + cos(Theta) * ParkQ;
可以得到Alpha,Beta波形如下:

有了Alpha跟Beta后,一般就利用这两个值进行SVPWM的生成了,过程比较复杂,还在学习中,这里就不多做描述。

当然我们还可试试ReClark变换(据我了解,这个变换一般不直接使用,这里仅做演示用)
A = Alpha;B = -Alpha/2 + Beta * (sqrt(3))/2;C = -Alpha/2 - Beta * (sqrt(3))/2;
可以得到A,B,C三相的电流如下:











使用特权

评论回复

相关帖子

沙发
AutochipsMCU| | 2020-5-9 20:57 | 只看该作者

这幅图,哪个是D轴哪个是Q轴呢,为啥值是0和-1呢

使用特权

评论回复
板凳
RunningX|  楼主 | 2020-5-11 09:01 | 只看该作者
AutochipsMCU 发表于 2020-5-9 20:57
这幅图,哪个是D轴哪个是Q轴呢,为啥值是0和-1呢

0是D轴,-1是Q轴,这里假设的电流幅值是1,如果幅值不同,结果也会不同。这里仅是一个例子

使用特权

评论回复
地板
新好男孩| | 2020-7-29 11:50 | 只看该作者
好,清淅易懂!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

42

主题

223

帖子

4

粉丝