4、MTPA基本原理:从转矩方程推导MTPA条件,电流矢量角的概念

好,咱们进入MTPA的核心地带了。

前面几章我们把电机模型和坐标变换理清了,现在终于可以聊聊怎么让电机在同样电流下输出最大转矩。说白了,就是让每一安培电流都花在刀刃上。我在做伺服驱动器项目时,有个客户要求电池供电,续航要长,那MTPA就是绕不开的技术。

4.1 转矩方程回顾

先回忆一下永磁同步电机的转矩方程。在dq坐标系下,电磁转矩可以写成:

T_e = 1.5 * p * [ψ_f * i_q + (L_d - L_q) * i_d * i_q]

这里:

  • T_e:电磁转矩
  • p:极对数
  • ψ_f:永磁体磁链
  • i_d、i_q:d轴和q轴电流
  • L_d、L_q:d轴和q轴电感

这个公式看着简单,但内涵很深。它由两部分组成:

  • 永磁转矩:1.5 * p * ψ_f * i_q —— 这部分和i_q成正比,是主转矩
  • 磁阻转矩:1.5 * p * (L_d - L_q) * i_d * i_q —— 这部分利用了凸极效应

对于表贴式永磁同步电机(SPMSM),L_d ≈ L_q,磁阻转矩几乎为零。但对于内置式永磁同步电机(IPMSM),L_q > L_d,磁阻转矩就派上用场了。

关键点:MTPA主要针对IPMSM。SPMSM的MTPA就是让i_d=0,简单粗暴。

4.2 MTPA条件推导

好,现在问题来了:给定一个电流幅值I_s,怎么分配i_d和i_q,让转矩最大?

电流约束条件:

I_s² = i_d² + i_q²

我们要在满足这个圆方程的前提下,最大化T_e。这是个典型的条件极值问题。我个人习惯用拉格朗日乘数法来解。

构造拉格朗日函数:

L = T_e + λ * (I_s² - i_d² - i_q²)

对i_d、i_q、λ分别求偏导,令其为零:

∂L/∂i_d = 1.5 * p * [(L_d - L_q) * i_q] - 2λ * i_d = 0
∂L/∂i_q = 1.5 * p * [ψ_f + (L_d - L_q) * i_d] - 2λ * i_q = 0

两式相除,消去λ,得到:

(L_d - L_q) * i_q² = [ψ_f + (L_d - L_q) * i_d] * i_d

整理一下:

i_d = [ψ_f - √(ψ_f² + 4 * (L_d - L_q)² * i_q²)] / [2 * (L_d - L_q)]

嗯,这个公式看着有点吓人。但别怕,实际工程中我们通常用查表法或者近似公式

我的经验:在项目中,我很少直接在线计算这个公式。因为电感参数会随电流变化,算出来也不准。我更倾向于离线标定,做成二维表,运行时直接查。

4.3 电流矢量角的概念

讲完数学,咱们聊聊更直观的东西——电流矢量角

电流矢量角β定义为:电流矢量与q轴的夹角。或者说,是电流矢量超前q轴的角度。

用公式表示:

i_d = -I_s * sin(β)
i_q = I_s * cos(β)

注意,i_d通常是负值(去磁方向),所以β在0°到90°之间。

把这两个式子代入转矩方程:

T_e = 1.5 * p * I_s * [ψ_f * cos(β) + 0.5 * (L_d - L_q) * I_s * sin(2β)]

你看,转矩变成了β的函数。对于固定的I_s,我们只需要找到使T_e最大的β值。

MTPA的本质:对于每个电流幅值I_s,找到最优的电流矢量角β_opt,使得转矩最大。

4.4 最优电流矢量角的计算

对T_e(β)求导,令导数为零:

dT_e/dβ = 1.5 * p * I_s * [-ψ_f * sin(β) + (L_d - L_q) * I_s * cos(2β)] = 0

整理得到:

ψ_f * sin(β) = (L_d - L_q) * I_s * cos(2β)

利用cos(2β) = 1 - 2sin²(β),可以解出:

sin(β) = [ -ψ_f + √(ψ_f² + 8 * (L_d - L_q)² * I_s²) ] / [4 * (L_d - L_q) * I_s]

然后β_opt = arcsin(...)。

这个公式在工程中怎么用?我建议:

  1. 离线计算:在MATLAB或Python中,针对不同I_s,算出β_opt,做成表格
  2. 在线查表:运行时根据当前I_s,查表得到β_opt
  3. 插值处理:表格点之间用线性插值

注意:我曾经在某个项目中直接在线计算这个公式,结果发现计算量太大,CPU扛不住。后来改成查表,问题就解决了。所以,能查表就别在线算,这是嵌入式开发的铁律。

4.5 MTPA的物理意义

你可能会问:为什么MTPA能提高效率?

原因很简单:

  • 同样的转矩,MTPA需要的电流更小
  • 电流小,铜损(I²R)就小
  • 铜损小了,电机发热就少,效率自然高

对于电池供电的设备,这意味着更长的续航。对于大功率驱动,这意味着更小的散热器。

避坑指南:我曾经遇到一个情况,MTPA算出来的i_d负得太多,导致永磁体退磁。所以,一定要加退磁保护,限制i_d的最大负值。这个我在后面章节会详细讲。

4.6 小结

这一章我们讲了:

  • 转矩方程的两部分:永磁转矩和磁阻转矩
  • MTPA的数学推导:拉格朗日乘数法
  • 电流矢量角β的概念和公式
  • 最优β的计算方法和工程实现

下一章,我会讲讲MTPA在实际工程中的实现细节,包括查表法、拟合公式法,以及弱磁区的MTPA如何处理。到时候见。