小知识点一:无刷电机
0 前言
该部分只用于自学使用,作为笔记方便后续自查。
资料参考:http://dengfoc.com
1 无刷电机硬件控制原理
实际上就是通过电流通过不同的线圈导致磁场变化,根据右手定则加向量运算就能让转子转动。因此我们通过控制MOS开关就可以控制通电,这样就能够控制电机转动。
而MOS管的开关规律是需要用到单片机程序进行控制的,因此这就引出了我们的FOC控制算法,FOC控制就是一种对电机运动模型进行抽象化和简化,进而有规律控制各个MOS管开关和通断的过程。
2 FOC软件控制原理
那么可以根据我们期望的电机运行情况,通过一个电机运行模型,实现交替开关各个MOS管的算法,这就是FOC算法,它的另一个名称就是磁场定向控制算法,而克拉克变换和帕克变换,就是磁场定向控制算法的两个核心。
2.1 克拉克变换
简单理解可以理解为3维变2维,之前我们说通过控制MOS管控制A、B、C的电流从而控制转子转动。
假设现在我们已知, I A 、 I B 、 I C I_{A}、I_{B}、I_{C} IA、IB、IC,那么根据三角变换我们可以把 I A 、 I B 、 I C I_{A}、I_{B}、I_{C} IA、IB、IC用 α − β \alpha-\beta α−β坐标系表示,我们就知道
I α = I A + I B ∗ c o s ( 120 ) + I C ∗ c o s ( 180 + 60 ) = I A − I B ∗ c o s ( 60 ) − I C ∗ c o s ( 60 ) = I A − 1 2 I B − 1 2 I C I_{\alpha}=I_{A}+I_{B}*cos(120)+I_{C}*cos(180+60)=I_{A}-I_{B}*cos(60)-I_{C}*cos(60)=I_{A}-\frac{1}{2}I_{B}-\frac{1}{2}I_{C} Iα=IA+IB∗cos(120)+IC∗cos(180+60)=IA−IB∗cos(60)−IC∗cos(60)=IA−21IB−21IC
I β = I B ∗ c o s ( 30 ) − I C ∗ c o s ( 30 ) = 3 2 I B − 3 2 I C I_{\beta}=I_{B}*cos(30)-I_{C}*cos(30)=\frac{\sqrt{3}}{2}I_{B}-\frac{\sqrt{3}}{2}I_{C} Iβ=IB∗cos(30)−IC∗cos(30)=23IB−23IC
写成矩阵形式表达为
∣ I α I β ∣ = ∣ 1 − 1 2 − 1 2 0 3 2 − 3 2 ∣ ∣ I A I B I C ∣ \begin{vmatrix} I_{\alpha} \\ I_{\beta} \end{vmatrix}=\begin{vmatrix} 1 & -\frac{1}{2} &-\frac{1}{2} \\ 0 & \frac{\sqrt{3}}{2} & - \frac{\sqrt{3}}{2} \end{vmatrix}\begin{vmatrix} I_{A} \\ I_{B}\\ I_{C} \end{vmatrix} IαIβ = 10−2123−21−23 IAIBIC
等辐值变换形式(实际上就是让 I A = I α I_{A}=I_{\alpha} IA=Iα)
∣ I α I β ∣ = 2 3 ∣ 1 − 1 2 − 1 2 0 3 2 − 3 2 ∣ ∣ I A I B I C ∣ \begin{vmatrix} I_{\alpha} \\ I_{\beta} \end{vmatrix}=\frac{2}{3}\begin{vmatrix} 1 & -\frac{1}{2} &-\frac{1}{2} \\ 0 & \frac{\sqrt{3}}{2} & - \frac{\sqrt{3}}{2} \end{vmatrix}\begin{vmatrix} I_{A} \\ I_{B}\\ I_{C} \end{vmatrix} IαIβ =32 10−2123−21−23 IAIBIC
等功率:
∣ I α I β ∣ = 2 3 ∣ 1 − 1 2 − 1 2 0 3 2 − 3 2 ∣ ∣ I A I B I C ∣ \begin{vmatrix} I_{\alpha} \\ I_{\beta} \end{vmatrix}=\sqrt{\frac{2}{3}}\begin{vmatrix} 1 & -\frac{1}{2} &-\frac{1}{2} \\ 0 & \frac{\sqrt{3}}{2} & - \frac{\sqrt{3}}{2} \end{vmatrix}\begin{vmatrix} I_{A} \\ I_{B}\\ I_{C} \end{vmatrix} IαIβ =32 10−2123−21−23 IAIBIC
以等辐值变换形式为例结合 I A + I B + I C = 0 I_{A}+I_{B}+I_{C}=0 IA+IB+IC=0(基尔霍夫电流定律)有
{ I α = I A I β = 1 3 × ( 2 I B + I A ) \begin{cases}I_{\alpha}=I_{A} \\ I_{\beta}=\frac{1}{\sqrt{3}}\times(2I_{B}+I_{A})\end{cases} {Iα=IAIβ=31×(2IB+IA)
2.2 克拉克逆变换
通过 { I α = I A I β = 1 3 × ( 2 I B + I A ) \begin{cases}I_{\alpha}=I_{A} \\ I_{\beta}=\frac{1}{\sqrt{3}}\times(2I_{B}+I_{A})\end{cases} {Iα=IAIβ=31×(2IB+IA),及 I A + I B + I C = 0 I_{A}+I_{B}+I_{C}=0 IA+IB+IC=0(基尔霍夫电流定律),经过简单的推导就有
{ I A = I α I B = 3 I β − I α 2 I C = − I α − 3 I β 2 \begin{cases}I_{A}=I_{\alpha}\\ I_{B}=\frac{\sqrt{3}I_{\beta}-I_{\alpha}}{2}\\I_{C}=\frac{-I_{\alpha}-\sqrt{3}I_{\beta}}{2}\end{cases} ⎩ ⎨ ⎧IA=IαIB=23Iβ−IαIC=2−Iα−3Iβ
2.3 帕克变换
在上述基础上再建一个坐标系是转子的坐标系 I Q − D I_{Q-D} IQ−D
将两个坐标系重合放到一起
实际上其实不用两个轴,只需要一个矢量( I q I_q Iq和 I d I_d Id可以合成一个矢量)和一个 θ \theta θ就能反向求出 α \alpha α和 β \beta β上的电流,从而再通过克拉克逆变换求出 I A 、 I B 、 I C I_{A} 、I_{B} 、I_{C} IA、IB、IC
I α = I d c o s ( θ ) − I q s i n ( θ ) I_{\alpha}=I_{d}cos(\theta)-I_{q}sin(\theta) Iα=Idcos(θ)−Iqsin(θ)
I β = I q c o s ( θ ) + I d s i n ( θ ) I_{\beta}=I_{q}cos(\theta)+I_{d}sin(\theta) Iβ=Iqcos(θ)+Idsin(θ)