为什么要写这篇
我是做永磁同步电机(PMSM)台架标定出身的,4 年里调电流环、标 MTPA、验证弱磁,对 FOC 有很强的”手感”。但说实话,以前更多是”会调”而不是”能推”。转向机器人运动控制后,我意识到面试官要的不是”你调过几个环”,而是”你能不能把每个环节从方程推出来”——能推一遍和能调一遍,是完全不同的层次。
这篇笔记是我的完整推导主线,面向控制方向的面试官:三相 → 两相 → 旋转坐标系 → IPMSM 磁链/电压/转矩方程 → MTPA → SVPWM → 三环整定。配套 作品 1:Simulink FOC 双闭环仿真(内嵌式 IPMSM 模型),本文的每个公式都会在仿真里落地。
0. 符号约定(约定速查)
| 符号 | 含义 | 符号 | 含义 |
|---|
| vd,vq | dq 轴电压(V) | ψf | 永磁体磁链(Wb) |
| id,iq | dq 轴电流(A) | ωe | 电角速度(rad/s),ωe=pnωm |
| Rs | 定子电阻(Ω) | pn | 极对数 |
| Ld,Lq | dq 轴电感(H),内嵌式 Ld<Lq | Te | 电磁转矩(N·m) |
| θe | 转子电角度(rad) | Vdc | 直流母线电压(V) |
1. 第一步:三相 → 两相静止(Clarke 变换)
1.1 从物理直觉出发
三相绕组在空间互差 120∘,三相电流 ia,ib,ic 各自在空间产生磁动势分量,合成一个空间旋转磁场。我们关心的是合成效果,而不是三个分量的细节——所以先投影到两个正交轴 αβ 上(α 轴与 a 相绕组轴线重合)。
投影关系(等幅值约定,系数 32 保证变换前后电流幅值不变;等功率约定则用 32,幅值会变,工程上 FOC 常用等幅值):
[iαiβ]=32[10−2123−21−23]iaibic
利用星形连接 ia+ib+ic=0,可以消去 ic:
iα=ia,iβ=31(ia+2ib)
这是工程实现里最常见的化简形式——只用两个电流传感器就够了。
1.2 为什么要先 Clarke 再 Park?
不能直接从三相变到 dq。因为 dq 坐标系是旋转的,必须先固定一个静止坐标系做投影(Clarke),再让坐标系跟着转子转起来(Park)。两步变换合起来才是”跟着转子磁场看电流”。
2. 第二步:两相静止 → 两相旋转(Park 变换)
Park 变换把 αβ 里的交流量变成 dq 里的直流量:
[idiq]=[cosθe−sinθesinθecosθe][iαiβ]
其中 θe 是转子电角度(d 轴与 α 轴夹角),由编码器/旋变或观测器实时获得。这一步是整个 FOC 的”定向”所在:坐标系对准了转子磁场,id 才是真正的”励磁分量”、iq 才是真正的”转矩分量”。
坐标变换的关系可以画成下面这张图(后续我会在仿真笔记里补动画版):
3. IPMSM 的 dq 模型:从磁链方程推到电压方程
3.1 磁链方程
在 dq 坐标系下,定子磁链由两部分组成:电枢电流产生的磁链 + 永磁体贡献的磁链:
ψd=Ldid+ψf,ψq=Lqiq
注意:永磁体磁链只出现在 d 轴(d 轴定义就是永磁体磁场方向)。
3.2 电压方程
由法拉第定律 v=Rsi+dtdψ,在旋转坐标系里展开时,磁链的时间导数要加上坐标系旋转引起的交叉项(这是 dq 变换后出现耦合项的来源):
vd=Rsid+Lddtdid−ωeLqiq
vq=Rsiq+Lqdtdiq+ωe(Ldid+ψf)
三项物理意义:
- Rsid:电阻压降;
- Lddtdid:电感(变压器电动势);
- −ωeLqiq:交叉耦合项——q 轴电流在旋转坐标系里会在 d 轴感生电动势;
- ωeψf:反电动势(运动电动势),速度越高越大,高速时占主导。
这两个耦合项/反电动势项,就是我在前馈开发里要补偿的对象——见《前馈控制为什么能提升响应速度》。补偿方式:vdff=−ωeLqiq,vqff=ωe(Ldid+ψf)。
3.3 转矩方程:磁阻转矩从哪来
用磁共能法推导电磁转矩。对 IPMSM,转矩有两项:
Te=23pn[ψfiq+(Ld−Lq)idiq]
- 第一项 23pnψfiq:永磁转矩,与 iq 成正比,表贴式电机(Ld≈Lq)只有这一项,所以 id=0 控制最优;
- 第二项 23pn(Ld−Lq)idiq:磁阻转矩,来自 Ld=Lq(内嵌式电机 Ld<Lq,凸极效应)。因为 Ld−Lq<0,要得到正的磁阻转矩,id 必须为负。
这就是 IPMSM 需要用 MTPA(最大转矩电流比) 的根本原因:通过注入负 id 换取磁阻转矩,让同样的电流幅值产生更大的转矩。
4. MTPA:怎么求最优的 id
4.1 数学表述
在电流幅值约束 is2=id2+iq2 下,最大化转矩 Te(id,iq)。用拉格朗日乘子法:
L=Te+λ(id2+iq2−is2)
对 id,iq 求偏导并令其为零,得到 MTPA 轨迹:
id=2(Ld−Lq)ψf−ψf2+4(Ld−Lq)2iq2
4.2 工程实现:查表 vs 公式
理论上可以直接用上式在线计算 id∗(Te∗),但实际工程里更常用查表:
- 台架扫点:在不同 Te∗(或 iq∗)下实测最优 id,得到 MTPA 表;
- 控制时:id∗=interp(MTPA表,Te∗),查表插值。
我在前馈开发中主导过一次改进:把 MTPA 前馈从公式拟合改为查表插值,精度明显提升(量化数据脱敏,面试可详聊)——公式拟合在模型失配(磁链饱和、温度漂移)时误差累积,而查表直接来自台架实测,天然包含了饱和与非线性。这也是标定工程师思维在算法里的体现。
4.3 弱磁控制:高速区的另一个”必须懂”
MTPA 解决”低速怎么给电流”,弱磁解决”高速电压不够用”——两者是一对,我在台架上都标定过(也是我自动化标定平台的核心场景之一,见《从 INCA flow 到 Python》)。
电压约束:SVPWM 线性区最大相电压 Vmax=Vdc/3,dq 电压必须满足:
vd2+vq2≤Vmax2
把稳态电压方程代入,得到电压极限椭圆(外圆是电流极限圆):
(Ldid+ψf)2+(Lqiq)2≤(ωeVmax)2,id2+iq2≤Imax2
物理过程:转速升高 → 反电动势 ωeψf 增大 → 电压裕度减小。当 vq 顶到电压上限时,需要注入负向 id:它一方面削弱气隙磁链(ψd=Ldid+ψf 变小,等效”减弱磁场”),另一方面产生负的交叉耦合项 −ωeLqiq 帮助 d 轴,从而把电压”腾出来”给 iq——代价是转矩/电流比下降,进入恒功率区。
工程要点:
- 弱磁工作点落在电压极限椭圆与电流极限圆的交点上,高速时 id 越来越负、iq 越来越小;
- 实现方式:查弱磁表(台架扫点生成,我的自动化平台自动成表)或电压环(弱磁调节器,检测电压裕度输出 id 增量);
- 安全红线:负向 id 过大有永磁体退磁风险,标定与策略都要设下限保护;
- 弱磁区动态差、对参数敏感,是我在台架上问题闭环最多的区域之一。
5. SVPWM:把电压指令变成开关序列
5.1 八个基本矢量
两电平三相逆变器有 8 个开关状态:6 个有效矢量(V1∼V6,空间互差 60°)和 2 个零矢量(V0,V7,三相全上/全下):
5.2 伏秒平衡合成(第一扇区)
一个开关周期 Ts 内,让 V1 作用 T1、V2 作用 T2、零矢量作用 T0=Ts−T1−T2,使平均电压等于参考矢量:
Vref=TsT1V1+TsT2V2
由几何关系解得作用时间:
T1=3Vdc∣Vref∣Tssin(3π−θ),T2=3Vdc∣Vref∣Tssinθ
5.3 为什么 SVPWM 优于 SPWM
- SPWM 线性区最大相电压幅值 Vdc/2;
- SVPWM 线性区最大相电压幅值 Vdc/3;
- 电压利用率比 Vdc/2Vdc/3=32≈1.155。
多出的 15.5% 意味着相同母线电压下输出能力更强(或相同输出下母线电压要求更低)——这是量产项目里很实在的成本项。
6. 三环控制结构:为什么先内环后外环
6.1 整定顺序的工程逻辑
- 先电流环:电流环带宽最高,受 PWM 频率约束(经验取开关频率的 1/10∼1/20,过高会引入采样/延时不稳定)。只有电流环收敛,外环看到的才是”干净的转矩源”;
- 再速度环:把电流环等效为惯性环节后,速度环面对的是近似一阶对象,整定手感好;
- 最后位置环:位置环带宽最低,负责”轨迹跟踪”而不是”快速响应”,通常配合位置前馈使用(见《前馈》一文)。
6.2 电流环整定的参数化方法
以 q 轴为例,忽略耦合项(由前馈补偿),电流环对象近似一阶:
Gi(s)=Lqs+Rs1
采用 PI + 零极点对消:令 Kp=Lqωcc、Ki=Rsωcc(ωcc 为目标电流环带宽),开环传函变为 sωcc,闭环带宽恰好约等于 ωcc——调一个参数 ωcc 就完成整定,这是工程上最常用的电流环整定方法(工程实现还叠加反电动势前馈与一拍延时补偿)。
面试时把”我用 4 年调出来的经验”翻译成”零极点对消 + 带宽参数化”,说服力完全不同。
7. 仿真实现计划(作品 1)
- 模型:Simulink 内嵌式 IPMSM(Ld<Lq,参数采用公开的电机数据或台架对标值,后续补参数表);
- 环节:手写 Clarke/Park/反 Park + SVPWM + MTPA 表 + 三环 PI(含解耦与反电动势前馈),与 Simulink 自带模块交叉验证;
- 验证波形:速度阶跃(看超调/调节时间)、突加负载(看转速跌落与恢复)、id=0 vs MTPA 转矩对比(体现磁阻转矩收益);
- 产出:模型文件 + 波形图 + 本文作为配套技术笔记,全部进 GitHub。
8. 踩坑清单(台架 + 仿真都会遇到)
- 离散化:连续域整定参数搬到离散域要重新验证;采样步长直接限制可达带宽;
- 一拍延时:从采样到 PWM 更新至少一拍,电流环相位裕度损失 ωccTs,高速大带宽时不可忽略;
- 积分饱和:电压饱和后 PI 积分器 windup,必须 anti-windup(条件积分/反算);
- MTPA 表边界:查表插值在低转矩区和高饱和区误差大,需要边界处理;
- 弱磁区:vq 达上限后要切弱磁控制(id 负向增大),这是 IPMSM 高速区的必修课,先仿真后台架。
相关项目