2、电机基础与数学模型:永磁同步电机(PMSM)结构、Clark变换与Park变换的数学推导、dq轴坐标系下的电机数学模型
各位同学,欢迎来到FOC核心算法的第二讲。今天我们要啃的这块骨头,是所有FOC算法的根基——电机数学模型。说白了,你如果不懂电机里面是怎么转的,那后面的电流环、速度环全都是空中楼阁。
我个人习惯,在讲任何算法之前,先搞清楚物理对象长什么样。所以咱们先从PMSM的结构聊起。
2.1 永磁同步电机(PMSM)的结构与特点
永磁同步电机,名字里三个关键词:永磁、同步、电机。永磁指的是转子上的磁场由永久磁铁产生,不需要励磁电流;同步指的是转子的转速和定子旋转磁场的转速完全一致,没有转差。
我刚开始做电机控制时,总把PMSM和异步电机搞混。后来拆了几台电机才真正记住:PMSM的转子上有磁钢,异步电机的转子是鼠笼条。你想想看,一个自带磁场,一个靠感应产生磁场,控制逻辑能一样吗?
PMSM按转子结构主要分两类:
| 类型 | 转子结构 | 特点 | 典型应用 |
|---|---|---|---|
| 表贴式(SPMSM) | 磁钢贴在转子铁芯表面 | Ld ≈ Lq,交直轴电感相等,无磁阻转矩 | 伺服、机器人关节 |
| 内置式(IPMSM) | 磁钢嵌入转子铁芯内部 | Ld < Lq,存在磁阻转矩,可弱磁扩速 | 电动汽车、高速主轴 |
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 |
我记得第一次在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的核心思想——把交流电机控制问题,变成直流电机控制问题。
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。
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 知识体系总览
说了这么多,我把这一章的核心逻辑画成一张图,方便你整体把握:
2.5 本章小结
这一章的内容,说白了就是三件事:
- 认识PMSM——搞清楚SPMSM和IPMSM的区别,这决定了你后面用什么控制策略。
- 掌握坐标变换——Clark变换把三相变两相,Park变换把静止变旋转。这两个变换的数学公式要烂熟于心,因为代码里要实时计算。
- 理解dq模型——电压方程里的交叉耦合项、转矩方程里的磁阻转矩分量,这些都是后面设计电流环、做前馈补偿的依据。