3. FOC控制原理
无刷电机FOC(Field-Oriented Control,磁场定向控制)的核心思想,是将三相交流电流通过坐标变换,等效为两个正交的直流分量,从而将交流电机等效为直流电机进行解耦控制。本章围绕AS5048磁编码器在FOC系统中的角色,系统讲解从三相电流采样到SVPWM输出的完整数学链路,以及电流环、速度环、位置环三级级联的控制架构。理解本章内容,是后续调参、故障排查和性能优化的基础。
上图展示了FOC控制的完整信号链路。从三相电流采样开始,经过Clark变换和Park变换得到旋转坐标系下的Id、Iq,电流环PI调节后输出Vd*、Vq*,再经逆Park变换和SVPWM调制生成6路PWM驱动三相逆变桥。AS5048磁编码器提供转子角度,经极对数换算得到电角度,同时参与Park变换、逆Park变换和速度环反馈。整个系统形成位置环→速度环→电流环的级联结构,内环响应快、外环响应慢,各司其职。
3.1 Clark变换与Park变换:从三相到两相旋转坐标系
核心原理
Clark变换(又称3s/2s变换)将三相静止坐标系(U、V、W)下的电流Iu、Iv、Iw,变换到两相静止坐标系(α、β)下的Iα、Iβ。其数学表达式为:
Iα = (2/3) × (Iu - Iv/2 - Iw/2)
Iβ = (2/3) × (√3/2 × Iv - √3/2 × Iw)
Park变换(又称2s/2r变换)则将Iα、Iβ进一步变换到随转子磁场同步旋转的d-q坐标系下:
Id = Iα × cos(θe) + Iβ × sin(θe)
Iq = -Iα × sin(θe) + Iβ × cos(θe)
其中θe为电角度,由AS5048测得的机械角度乘以电机极对数得到。变换后,Id为励磁电流分量(对应磁场方向),Iq为转矩电流分量(对应力矩方向),两者解耦,可独立控制。
判断方法与操作流程
在实际工程中,判断Clark/Park变换是否正确,通常采用以下验证流程:
- 零电流校验:电机不转时,三相电流均为0,Iα、Iβ、Id、Iq应全部为0。
- 直流注入测试:给定Iq_ref为固定值、Id_ref=0,转子应产生恒定力矩并锁定在某一位置。
- 角度对齐验证:手动旋转转子,观察Iq波形是否随θe呈正弦变化,若波形畸变则说明θe计算有误。
- 极对数确认:AS5048输出机械角度,需乘以极对数p得到电角度。若极对数设置错误,会导致变换角度偏差,电流环无法收敛。
案例拆解:AS5048极对数设置错误导致电机抖动
某四极对(p=4)无刷电机调试中,工程师误将极对数设为2。现象:电机上电后轻微抖动,电流波形杂乱,Iq无法稳定。分析:电角度θe = θm × 2,而实际应为θm × 4,导致Park变换角度偏差90°以上,电流环解耦失效。解决:将极对数修正为4后,重新进行角度对齐,电机运行平稳。复盘:极对数设置是FOC调试的第一步,务必对照电机手册确认。
3.2 逆Park变换与SVPWM调制
核心原理
逆Park变换将d-q坐标系下的电压指令Vd*、Vq*,变换回α-β坐标系:
Vα* = Vd* × cos(θe) - Vq* × sin(θe)
Vβ* = Vd* × sin(θe) + Vq* × cos(θe)
SVPWM(Space Vector Pulse Width Modulation,空间矢量脉宽调制)则根据Vα*、Vβ*判断所在扇区,计算相邻两个基本电压矢量的作用时间,并插入零矢量,最终生成三相互补的PWM波形。SVPWM相比SPWM,直流母线电压利用率提高约15%,且谐波含量更低。
SVPWM实现步骤
| 步骤 | 操作 | 关键公式/判断 |
|---|---|---|
| 1. 扇区判断 | 根据Vα、Vβ符号及大小关系确定扇区 | N = sign(Vβ) + 2×sign(√3Vα/2 - Vβ/2) + 4×sign(-√3Vα/2 - Vβ/2) |
| 2. 计算相邻矢量作用时间 | 基于扇区查表计算T1、T2 | T1、T2与Vα、Vβ和母线电压Udc相关 |
| 3. 过调制处理 | 若T1+T2 > Tpwm,需等比例缩小 | T1' = T1×Tpwm/(T1+T2),T2'同理 |
| 4. 生成PWM比较值 | 计算各相占空比并装载到定时器 | Ta = (Tpwm - T1 - T2)/4,Tb = Ta + T1/2,Tc = Tb + T2/2 |
案例拆解:母线电压波动对SVPWM的影响
某机器人关节模组使用48V母线供电,调试中发现高速运行时转矩波动明显。排查:示波器测量母线电压,发现PWM开关瞬间电压跌落达3V。分析:SVPWM计算中假设Udc恒定,实际母线电压波动导致输出电压误差。解决:在SVPWM计算中引入母线电压实时采样值Udc_actual,替代固定值;同时增大母线电容容值。结果:转矩波动从±8%降至±2%。复盘:SVPWM对母线电压敏感,高动态场景必须实时补偿。
3.3 电流环、速度环、位置环的级联控制结构
核心原理
FOC采用三环级联结构,由内到外依次为:电流环(最快)、速度环(中等)、位置环(最慢)。内环的带宽通常是外环的5~10倍,确保外环指令变化时内环能快速跟踪。电流环控制Id和Iq,Id_ref通常设为0(表贴式电机)或负值(内置式电机弱磁控制),Iq_ref由速度环输出。速度环根据速度误差输出Iq_ref,位置环根据位置误差输出速度指令。
级联结构参数设计要点
- 电流环:PI参数基于电机电感和电阻计算,典型带宽1~2kHz。比例系数Kp = L×BW,积分系数Ki = R×BW。
- 速度环:带宽100~300Hz,需对速度反馈进行低通滤波(截止频率为带宽的5~10倍)。
- 位置环:通常仅用P控制或PD控制,带宽10~50Hz,避免微分噪声放大。
- 限幅:每级输出必须限幅。电流环限幅保护MOSFET,速度环限幅防止过流,位置环限幅限制最大速度。
案例拆解:三环联动调试流程
某AGV驱动轮采用AS5048+无刷电机FOC方案,要求定位精度±1mm(对应电机轴±0.5°)。调试过程:
- 电流环调试:断开速度环和位置环,给定Iq_ref=1A阶跃,观察Iq响应,调整Kp、Ki使超调<5%,调节时间<1ms。
- 速度环调试:闭合速度环,给定ω_ref=100rpm阶跃,观察速度响应,调整速度环PI,使稳态误差为0,超调<10%。
- 位置环调试:闭合位置环,给定θ_ref=90°阶跃,观察位置响应,调整位置环P增益,使定位时间<0.5s且无振荡。
- 联动验证:给定连续轨迹,观察三环协同,检查是否有超调、振荡或跟随误差。
结果:定位精度±0.3°,满足要求。复盘:三环调试必须由内到外逐级进行,内环未调好前禁止闭合外环,否则问题难以定位。
3.4 常见误区与总结复盘
| 误区 | 后果 | 正确做法 |
|---|---|---|
| 忽略极对数设置 | 电角度错误,电流环发散 | 确认电机极对数,θe = θm × p |
| Clark变换系数混淆 | 电流幅值偏差,PI参数失配 | 统一使用等幅值变换(2/3系数) |
| SVPWM未补偿母线电压 | 高速转矩波动 | 实时采样Udc参与计算 |
| 三环同时闭合调试 | 问题无法定位 | 由内到外逐级调试 |
| 速度反馈未滤波 | 速度环噪声大,电机啸叫 | 低通滤波,截止频率为带宽5~10倍 |
| 忽略限幅 | 过流损坏MOSFET | 每级输出设置合理限幅值 |
本章系统梳理了FOC控制的完整数学链路和级联架构。从Clark/Park变换的坐标解耦,到SVPWM的电压矢量合成,再到三环级联的参数配合,每一环节都直接影响最终控制性能。AS5048作为角度反馈器件,其精度和更新速率决定了电角度计算的准确性,进而影响Park变换和速度环的反馈质量。在实际项目中,建议先使用开环强拖验证电机和编码器正常,再逐步闭合电流环、速度环、位置环,最后进行整机联调优化。