FOC 算法基础之欧拉公式

FOC中电压矢量合成的推导,对于欧拉公式的几何意义做了一个全面的回顾。

欧拉公式

欧拉是一个天才,欧拉公式甚至被誉为上帝创造的公式,然后在FOC算法中也可以看到欧拉公式的影子,不过因为是最基础的知识,所以基本上的换算都是一笔带过,但是如果这里没有掌握就很难搞清楚实数平面如何换算到复数平面,以至于在SVPWM的求解中存在的都是向量运算,所以这里有必要理解欧拉公式的物理意义,这样可以加深FOC算法的理解。
欧拉公式如下所示;
{eix=cosx+isinxeπi+1=0egin{cases} e^{ix} = cosx + isinx cdots ①\ e^{pi i} + 1 = 0 cdots ② end{cases}
这两个公式都被称之为欧拉公式;

ee 是自然对数的底,ii 是虚数(i=1i=sqrt{-1})。

根据式 ① 可以推导出以下另外两个变式;
推导过程如下;
x=xx = -x,可以得到④式,如下;
{eix=cosx+isinxeix=cosxisinxegin{cases} e^{ix} = cosx + isinx cdots ③\ e^{-ix} = cosx - isinx cdots ④\ end{cases}
所以 ③ 等式左右两端与 ④ 式 相加得到;
cosx=eix+eix2 cosx = cfrac{e^{ix}+e^{-ix}}{2}cdots ⑤
所以 ③ 等式左右两端与 ④ 式 相减得到;
sinx=eixeix2i sinx = cfrac{e^{ix}-e^{-ix}}{2i}cdots ⑥

几何意义

reiθre^{i heta}则表示模长为rr的向量旋转了角度θ heta,下面会进一步介绍。

复数平面

复数平面坐标xx轴作为实数轴,yy轴作为虚数轴。这里可以通过欧拉公式,将实数平面换到复数平面,如下图所示;
在这里插入图片描述
已知这是一个半径为rr,圆心为OO的圆,则存在;
reiθ=r(cosθ+isinθ) re^{i heta} = r(cos heta + isin heta)
上式表示向量 OPoverrightarrow{OP} 逆时针旋转了角度 θ heta , OP=r| overrightarrow{OP}| = r

动态过程

假设向量OCoverrightarrow{OC}逆时针旋转,与xx轴夹角为θ heta,半径r=10r = 10,即 OC=r=10| overrightarrow{OC}| = r =10,具体如下图所示;
在这里插入图片描述
这里分析一下图中的几个关键点;

  • 红色点的坐标为:(θ,10sinθ)( heta, 10sin heta),红色的正弦曲线为红色点的运动轨迹;
  • 绿色点的坐标为;(10cosθ,θ)(10cos heta, heta),绿色的正弦曲线为绿色点的运动轨迹;
  • CGCG为向量OCoverrightarrow{OC}xx轴上的投影,CG=10cosθ|CG| = 10cos heta
  • CHCH为向量OCoverrightarrow{OC}yy轴上的投影,CH=10sinθ|CH| = 10sin heta

可以发现,向量在复平面做圆周运动,其实数域相当于是在做正弦运动。后面再FOC中的三相正弦波形的合成可以做一下分析。

加法

欧拉公式里的相加则比较简单,相当于两个向量的相加;
AE=AC+ADoverrightarrow{AE} = overrightarrow{AC} + overrightarrow{AD}
如下图所示;
在这里插入图片描述
所以存在特殊情况当 θ=0 heta = 0时则有;
AE=AE(ej(θ+2π3)+ej(θ2π3))overrightarrow{AE} = |overrightarrow{AE}|(e^{j( heta+cfrac{2pi}{3})} + e^{j( heta-cfrac{2pi}{3})} )
直接进行符合向量相加;
AE=AEej(θ+π)overrightarrow{AE} = |overrightarrow{AE}|e^{j( heta+pi)}
具体如下所示;
在这里插入图片描述

FOC电压矢量的推导

三相永磁同步电机的驱动电路如下图所示;
在这里插入图片描述
详细的坐标变换可以参考《FOC中的Clarke变换和Park变换详解》,根据图示电路可以发现在三相永磁同步电机的驱动电路中,三相逆变输出的三相电压为UAU_{A}UBU_{B}UCU_{C}将作用于电机,那么在三相平面静止坐标系ABC中,电压方程满足以下公式:

{UA=UmcosθeUB=Umcos(θe2π3)UC=Umcos(θe+2π3) egin{cases} U_{A} = U_{m}cos heta_{e} \ U_{B} = U_{m}cos( heta_{e} - cfrac{2pi}{3}) \ U_{C} = U_{m}cos( heta_{e} + cfrac{2pi}{3}) end{cases}

UmU_m为相电压基波峰值;

因此根据前面式⑤cosx=eix+eix2 cosx = cfrac{e^{ix}+e^{-ix}}{2}cdots ⑤
可以将该方程组转换到复平面可以得到,下式统一使用θ heta 表示θe heta_{e}
{UA=Umcosθe=Um2(eiθ+eiθ)UB=Umcos(θe+2π3)=Um2(e(iθ2π3)+e(iθ2π3))UC=Umcos(θe2π3)=Um2(e(iθ+2π3)+e(iθ+2π3)) egin{cases} U_{A}= U_{m}cos heta_{e} = cfrac{ U_{m}}{2}(e^{i heta} + e^{-i heta})\ U_{B}= U_{m}cos( heta_{e} + cfrac{2pi}{3}) = cfrac{ U_{m}}{2}(e^{(i heta-cfrac{2pi}{3})} + e^{-(i heta-cfrac{2pi}{3})})\ U_{C} = U_{m}cos( heta_{e} - cfrac{2pi}{3}) = cfrac{ U_{m}}{2}(e^{(i heta+cfrac{2pi}{3})} + e^{-(i heta+cfrac{2pi}{3})}) end{cases}
因为需要将三相电压合成矢量 U=UA+UB+UCoverrightarrow{U} = overrightarrow{U_A} + overrightarrow{U_B} + overrightarrow{U_C};下面增加向量的相位差;
{UA=UAej0UB=UBe(j2π3)UC=UCe(j2π3) egin{cases} overrightarrow{U_A} = U_A *e^{j0}\ overrightarrow{U_B} = U_B *e^{-(jcfrac{2pi}{3})} \ overrightarrow{U_C} = U_C *e^{(jcfrac{2pi}{3})}\ end{cases}

中间推导过程暂略,最终推导得到;
U=32Umejθ=32Umejωtoverrightarrow{U} = cfrac{3}{2}U_me^{j heta} = cfrac{3}{2}U_me^{jomega t}

总结

磕磕绊绊写了最后,基础学科的掌握还不够,很多知识回过头来看,总会有新的收获,但是由于笔者能力有限,文中难免出行错误和纰漏,望您能不吝赐教。

参考

https://www.matongxue.com/madocs/8.html

原文地址:https://www.cnblogs.com/unclemac/p/12783345.html