2、电机基础与数学模型:永磁同步电机(PMSM)结构、Clark变换与Park变换的数学推导、dq轴坐标系下的电机数学模型

各位同学,欢迎来到FOC核心算法的第二讲。今天我们要啃的这块骨头,是所有FOC算法的根基——电机数学模型。说白了,你如果不懂电机里面是怎么转的,那后面的电流环、速度环全都是空中楼阁。

我个人习惯,在讲任何算法之前,先搞清楚物理对象长什么样。所以咱们先从PMSM的结构聊起。

2.1 永磁同步电机(PMSM)的结构与特点

永磁同步电机,名字里三个关键词:永磁、同步、电机。永磁指的是转子上的磁场由永久磁铁产生,不需要励磁电流;同步指的是转子的转速和定子旋转磁场的转速完全一致,没有转差。

我刚开始做电机控制时,总把PMSM和异步电机搞混。后来拆了几台电机才真正记住:PMSM的转子上有磁钢,异步电机的转子是鼠笼条。你想想看,一个自带磁场,一个靠感应产生磁场,控制逻辑能一样吗?

PMSM按转子结构主要分两类:

类型 转子结构 特点 典型应用
表贴式(SPMSM) 磁钢贴在转子铁芯表面 Ld ≈ Lq,交直轴电感相等,无磁阻转矩 伺服、机器人关节
内置式(IPMSM) 磁钢嵌入转子铁芯内部 Ld < Lq,存在磁阻转矩,可弱磁扩速 电动汽车、高速主轴
我的经验:做伺服驱动时,SPMSM的Id=0控制就够用了。但做电动汽车驱动,必须用IPMSM的MTPA(最大转矩电流比)控制,否则效率上不去。选型时一定要先搞清楚你面对的是哪种PMSM。

2.2 从三相静止到两相旋转:坐标变换的数学推导

好,现在电机结构搞清楚了。问题来了:三相绕组产生的磁场是旋转的,但三相电流是正弦交变的,控制起来非常麻烦。能不能把这三个交流量,变成两个直流量?

答案就是坐标变换。整个过程分两步走:Clark变换(三相→两相静止),Park变换(两相静止→两相旋转)。

2.2.1 Clark变换(3s → 2s)

Clark变换的目标:把三相坐标系(a, b, c)下的物理量,投影到两相静止坐标系(α, β)上。α轴与a轴重合,β轴超前α轴90度。

假设三相电流对称:ia + ib + ic = 0。那么变换公式为:

iα = ia
iβ = (ia + 2*ib) / √3

如果考虑等幅值变换(保持变换前后电流幅值不变),需要乘以系数2/3:

iα = (2/3) * (ia - 0.5*ib - 0.5*ic)
iβ = (2/3) * (√3/2 * ib - √3/2 * ic)

写成矩阵形式:

| iα |   | 1    -1/2   -1/2 | | ia |
|    | = |                   | |    |
| iβ |   | 0    √3/2  -√3/2 | | ib |
                                  | ic |
注意:Clark变换只是坐标投影,不改变信号的频率特性。αβ轴上的电流仍然是交流量,频率和三相电流一致。

我记得第一次在DSP上实现Clark变换时,踩过一个坑:三相电流采样必须同步,不能分时采样。否则变换出来的αβ分量会有相位误差,导致后续的Park变换结果不准。后来我改用三个ADC同时采样,问题就解决了。

2.2.2 Park变换(2s → 2r)

Park变换才是真正的"降维打击"。它把αβ坐标系旋转起来,旋转角速度等于电机电角速度ωe。旋转后的坐标系叫dq坐标系,d轴(直轴)与转子磁极方向对齐,q轴(交轴)超前d轴90度。

变换公式:

id = iα * cos(θe) + iβ * sin(θe)
iq = -iα * sin(θe) + iβ * cos(θe)

其中θe是转子电角度,由编码器或霍尔传感器提供。

你想想看,经过Park变换后,id和iq变成了什么?直流量!id控制励磁分量,iq控制转矩分量。这就是FOC的核心思想——把交流电机控制问题,变成直流电机控制问题。

我曾经踩过的坑:Park变换用的角度θe必须是电角度,不是机械角度。PMSM的极对数p决定了电角度 = p * 机械角度。如果极对数是4,编码器转一圈,电角度转了4圈。搞混了的话,电流环会直接发散。

2.3 dq轴坐标系下的电机数学模型

有了坐标变换这个工具,我们就可以在dq坐标系下建立PMSM的数学模型了。这个模型是FOC算法所有公式的源头。

2.3.1 电压方程

在dq旋转坐标系下,PMSM的定子电压方程为:

ud = Rs * id + Ld * (did/dt) - ωe * Lq * iq
uq = Rs * iq + Lq * (diq/dt) + ωe * (Ld * id + ψf)

其中:

  • Rs:定子电阻
  • Ld、Lq:直轴、交轴电感
  • ωe:电角速度
  • ψf:永磁体磁链

这个方程里有两个关键项:-ωe * Lq * iq 和 ωe * (Ld * id + ψf)。它们叫反电动势项或交叉耦合项。正是这两项,让dq轴之间产生了耦合。你调id的时候会影响iq,调iq的时候会影响id。

我的习惯:在实际代码中,我会把这两项作为前馈补偿加进去。比如计算uq时,主动加上ωe * (Ld * id + ψf)。这样电流环的PI控制器只需要处理纯积分项,响应速度会快很多。

2.3.2 转矩方程

PMSM的电磁转矩由两部分组成:

Te = (3/2) * p * [ψf * iq + (Ld - Lq) * id * iq]

第一项ψf * iq是永磁转矩,由永磁体和q轴电流相互作用产生。第二项(Ld - Lq) * id * iq是磁阻转矩,由d轴和q轴电感差异产生。

对于SPMSM,Ld = Lq,磁阻转矩为零,转矩只和iq成正比。对于IPMSM,Ld < Lq,磁阻转矩为负值,可以通过注入负的id来增加总转矩——这就是MTPA控制的理论基础。

电机类型 转矩公式简化 控制策略
SPMSM Te = (3/2) * p * ψf * iq Id = 0 控制
IPMSM Te = (3/2) * p * [ψf * iq + (Ld-Lq)*id*iq] MTPA / 弱磁控制

2.3.3 运动方程

最后是机械层面的运动方程:

Te - TL = J * (dωm/dt) + B * ωm

其中TL是负载转矩,J是转动惯量,B是阻尼系数,ωm是机械角速度。这个方程把电磁转矩和机械运动联系起来了,是速度环和位置环设计的基础。

2.4 知识体系总览

说了这么多,我把这一章的核心逻辑画成一张图,方便你整体把握:

PMSM 数学模型与坐标变换知识体系 永磁同步电机(PMSM) 表贴式 SPMSM(Ld ≈ Lq) 内置式 IPMSM(Ld < Lq) Clark 变换 三相静止 abc → 两相静止 αβ Park 变换 两相静止 αβ → 两相旋转 dq dq 轴坐标系下的数学模型 电压方程:ud, uq 含交叉耦合项 转矩方程:Te = (3/2)·p·[ψf·iq + (Ld-Lq)·id·iq] Id = 0 控制(SPMSM) MTPA / 弱磁(IPMSM) 核心思想:通过坐标变换,将交流量变为直流量,实现解耦控制

2.5 本章小结

这一章的内容,说白了就是三件事:

  1. 认识PMSM——搞清楚SPMSM和IPMSM的区别,这决定了你后面用什么控制策略。
  2. 掌握坐标变换——Clark变换把三相变两相,Park变换把静止变旋转。这两个变换的数学公式要烂熟于心,因为代码里要实时计算。
  3. 理解dq模型——电压方程里的交叉耦合项、转矩方程里的磁阻转矩分量,这些都是后面设计电流环、做前馈补偿的依据。
一句话记住:FOC的本质,就是在dq坐标系下,把PMSM当成一个直流电机来控制。id控制励磁,iq控制转矩,各司其职。