4. 弱磁控制基本原理:直轴去磁电流的引入、弱磁控制的核心思想、电压反馈型弱磁控制

好,咱们进入正题。弱磁控制,说白了就是让电机在基速以上还能继续往上转。你想想看,电机转速高了,反电动势也跟着涨,涨到直流母线电压都扛不住了,怎么办?这时候就得靠弱磁。

我记得刚入行那会儿,有个项目电机死活跑不到额定转速的两倍。我查了三天,最后发现是弱磁根本没使能。嗯,从那以后,我每次调试都会先确认弱磁策略是不是在线。

4.1 为什么需要弱磁?——电压极限的瓶颈

先看一个基本事实。永磁同步电机的电压方程,在旋转坐标系下是这样的:

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

稳态下,忽略电阻压降和微分项,电压幅值近似为:

us ≈ ωe * sqrt( (Lq * iq)² + (Ld * id + ψf)² )

看到没?转速 ωe 越高,us 越大。但逆变器能输出的最大电压是有限的,受直流母线电压 Udc 限制:

us_max = Udc / sqrt(3)   (SVPWM 线性调制区)

当 us 逼近 us_max 时,电流环就失控了。这时候必须引入弱磁。

核心矛盾:转速升高 → 反电动势升高 → 电压饱和 → 电流环失控。弱磁就是解决这个矛盾的唯一出路。

4.2 直轴去磁电流的引入

弱磁的核心操作,就是往直轴(d轴)注入负的电流,也就是 id < 0。为什么是负的?

你看上面的电压公式,Ld * id + ψf 这一项,如果 id 是正的,它只会让磁链更大,电压更高。但如果 id 是负的,Ld * id 就会抵消一部分永磁体磁链 ψf,等效磁链就变小了。磁链小了,反电动势自然就降下来了。

我在项目中遇到过一种情况:某款内置式永磁电机,Ld 比较小,需要很大的负 id 才能有效弱磁。结果电流全用在去磁上了,转矩输出能力严重下降。这就是所谓的「弱磁深度」问题。

我的习惯:调试弱磁时,先看 id 的响应。如果 id 能快速跟踪到负值,说明电压环还有裕量。如果 id 抖得厉害,大概率是电压饱和了。

4.3 弱磁控制的核心思想

弱磁控制的核心思想,其实就一句话:在电压极限圆内,找到最优的电流工作点。

电机运行时,电流矢量 (id, iq) 必须同时满足两个约束:

  • 电流极限圆: id² + iq² ≤ is_max²
  • 电压极限椭圆: (Ld * id + ψf)² + (Lq * iq)² ≤ (us_max / ωe)²

转速越高,电压极限椭圆越小。当椭圆缩到比电流圆还小时,就必须沿着椭圆边界走,这就是弱磁区。

你想想看,在基速以下,我们追求 MTPA(最大转矩电流比)。到了弱磁区,目标就变了——要在电压极限内,尽可能输出最大的转矩。这叫 MTPV(最大转矩电压比)。

我曾经踩过的坑:弱磁区如果只盯着电压环,忽略了 MTPV 轨迹,电流可能会跑到电压椭圆外面去。结果就是电流环饱和,转速失控。所以弱磁控制一定要有电压限幅保护。

下面这张图,是我每次培训都会画的。它把弱磁控制的整个逻辑串起来了:

弱磁控制核心逻辑框架 弱磁控制核心逻辑框架 转速升高 ωe ↑ 反电动势增大 E = ωe · ψ 电压逼近极限 us → us_max 引入直轴去磁电流 id < 0,抵消永磁磁链 ψf 在电压极限椭圆内寻找最优工作点 MTPV 轨迹:最大转矩电压比 电压反馈型弱磁 闭环调节,鲁棒性强 查表/公式型弱磁 开环前馈,响应快 核心思想:电压不够,电流来凑。用直轴去磁电流换取转速提升空间。 代价:id 增大 → 铜耗增加 → 效率下降。弱磁越深,代价越大。

4.4 电压反馈型弱磁控制

讲完了思想,咱们聊聊具体怎么实现。我个人最常用的,就是电压反馈型弱磁。为什么?因为它鲁棒性强,对电机参数不敏感。

电压反馈型弱磁的基本思路是这样的:

  1. 计算当前电压幅值: us = sqrt(ud² + uq²)
  2. 与电压极限比较: Δu = us - us_max
  3. 通过 PI 调节器输出 id_ref: 当 Δu > 0 时,PI 输出负的 id_ref,且 Δu 越大,id_ref 越负
  4. 限幅处理: id_ref 不能超过电流极限圆

代码实现其实不复杂,我贴一段核心逻辑:

// 电压反馈弱磁 PI 调节器
// 输入:ud, uq, us_max
// 输出:id_weak_ref

float us = sqrtf(ud * ud + uq * uq);
float delta_u = us - us_max;  // 电压误差

// 只有电压超过极限时才启动弱磁
if (delta_u > 0.0f) {
    // PI 调节,输出负的 id
    pi_weak.integral += pi_weak.Ki * delta_u * dt;
    // 积分限幅,防止深度饱和
    if (pi_weak.integral > 0.0f) pi_weak.integral = 0.0f;
    if (pi_weak.integral < -id_max) pi_weak.integral = -id_max;
    
    id_weak_ref = pi_weak.Kp * delta_u + pi_weak.integral;
} else {
    // 电压未饱和,弱磁退出
    id_weak_ref = 0.0f;
    pi_weak.integral = 0.0f;  // 清零积分
}

// 最终 id 参考值 = MTPA 的 id + 弱磁的 id
id_ref = id_mtpa_ref + id_weak_ref;
// 限幅
if (id_ref < -id_max) id_ref = -id_max;

调试经验:PI 参数怎么调?我一般先设 Kp 小一点(比如 0.1),Ki 更小(0.01 量级)。然后让电机空载加速,看电压误差 Δu 能不能收敛到 0。如果 id 震荡,减小 Kp;如果响应太慢,增大 Ki。

4.5 电压反馈型 vs 查表型:怎么选?

两种方法各有优劣。我整理了一个对比表,方便你选型:

对比项 电压反馈型 查表/公式型
参数依赖性 低(只依赖 us_max) 高(依赖 Ld, Lq, ψf)
动态响应 中等(PI 调节有延迟) 快(前馈直接给 id)
鲁棒性 强(参数变化不影响) 弱(参数不准就偏)
实现复杂度 低(一个 PI 搞定) 中(需要标定或公式)
适用场景 参数未知、变参数场合 参数已知、要求高动态

我个人习惯是:量产项目首选电压反馈型。因为电机批量生产时,参数一致性没那么好,查表法容易出偏差。电压反馈型靠闭环自己找平衡,省心很多。

注意:电压反馈型弱磁有一个固有缺陷——它只能在电压饱和后才能起作用。如果负载突变导致电压瞬间冲高,PI 来不及响应,电流环可能先饱和了。所以实际工程中,我通常会加一个前馈项,根据转速和转矩提前给一个负的 id 偏置。

4.6 弱磁控制的几个关键参数

最后,我列几个调试时必须关注的参数:

  • us_max:电压极限值。一般取 Udc/sqrt(3),但要留 5%-10% 的裕量,防止过调制。
  • id_max:直轴电流极限。不能超过电机退磁电流,否则永磁体可能不可逆退磁。
  • 弱磁 PI 的积分限幅:我一般设在 -id_max 到 0 之间,防止积分深度饱和。
  • 退出阈值:当 us 降到 us_max 以下一定值(比如 95%)时,让弱磁逐渐退出,避免频繁切换。