第三节:电压极限圆与电流极限圆

好,咱们今天来聊聊弱磁控制里最核心的两个“圈”——电压极限圆和电流极限圆。说实话,我刚接触这个概念时,觉得不就是两个圆嘛,有什么难的?后来在项目里栽了跟头才明白,这两个“圈”画得好不好,直接决定了你的电机能不能跑得稳、跑得快。

3.1 电流极限圆——先把这个“硬边界”搞清楚

电流极限圆,说白了就是逆变器能给你的最大电流。这个值由硬件决定,比如IGBT或者MOSFET的额定电流。你想想看,电流一旦超过这个值,要么炸管子,要么触发过流保护。

在d-q坐标系下,电流极限圆的方程很简单:

id² + iq² ≤ Is_max²

其中Is_max就是逆变器能输出的最大相电流幅值。这个圆把电流矢量限制在一个固定的范围内,不管你用什么控制策略,电流矢量都不能跑出这个圆。

关键点:电流极限圆是硬约束,不可逾越。我在做第一版弱磁控制时,曾经因为电流环PI参数没调好,导致电流矢量短暂冲出了极限圆,结果IGBT直接炸了——嗯,那次教训挺深刻的。

3.2 电压极限椭圆——这个“软约束”才是难点

电压极限椭圆就有点意思了。它不像电流极限圆那么“死板”,而是随着转速变化的。为什么叫椭圆?因为d轴和q轴的电压方程不一样。

咱们先回顾一下永磁同步电机的电压方程(稳态下忽略电阻):

ud = -ωLqiq
uq = ωLdid + ωψf

其中ud、uq是d-q轴电压,ω是电角速度,Ld、Lq是d-q轴电感,ψf是永磁磁链。

逆变器能输出的最大电压是有限的,记作Umax。那么电压约束就是:

ud² + uq² ≤ Umax²

把电压方程代入,整理一下:

(Lqiq)² + (Ldid + ψf)² ≤ (Umax/ω)²

你看,这个方程在id-iq平面上就是一个椭圆!椭圆中心在(-ψf/Ld, 0),半轴长度分别是Umax/(ωLd)和Umax/(ωLq)。

我个人习惯:在仿真时先把电压极限椭圆画出来,再画电流极限圆,两个圈的交集就是电机能安全运行的区域。这个可视化方法帮我避免了很多调试中的“盲飞”。

3.3 弱磁区域划分——I区、II区、III区

有了这两个“圈”,咱们就可以把电机的运行区域分成三个区。我当年在实验室里对着示波器一点点摸索出来的经验,现在分享给你。

区域 特征 控制策略
I区(恒转矩区) 转速较低,电压极限椭圆很大,电流极限圆是主要约束 MTPA(最大转矩电流比)控制
II区(弱磁I区) 转速升高,电压极限椭圆缩小,开始限制电流 弱磁控制,沿电压极限椭圆边界运行
III区(深度弱磁区) 转速很高,电压极限椭圆很小,电流极限圆和电压极限圆共同约束 深度弱磁,电流矢量沿两个圆的交点运行

I区:恒转矩区

转速低的时候,电压极限椭圆非常大,基本上不会限制电流。这时候主要考虑怎么用最小的电流输出最大的转矩——这就是MTPA控制。说白了,就是在电流极限圆内找一个点,让转矩最大。

我记得有一次做电动汽车的驱动项目,客户要求在低速爬坡时输出最大转矩。我一开始没注意弱磁,直接用了id=0控制,结果电流利用率很低,电机发热严重。后来改成MTPA,同样的电流下转矩提升了15%。

II区:弱磁I区

转速继续升高,电压极限椭圆开始缩小。这时候你会发现,如果不加负的id电流,电压就会超过Umax。怎么办?加负id!这就是弱磁的本质——用d轴去磁电流来抵消永磁磁链,从而降低反电动势。

在II区,电流矢量沿着电压极限椭圆的边界运行。为什么?因为要充分利用电压,同时尽可能输出大转矩。

我曾经踩过的坑:弱磁控制中,id和iq的耦合很强。我刚开始做时,直接用了两个独立的PI调节器,结果系统振荡得一塌糊涂。后来才意识到,必须考虑d-q轴的交叉耦合,用前馈补偿或者解耦控制才行。

III区:深度弱磁区

到了超高转速,电压极限椭圆已经缩得很小了。这时候电流极限圆和电压极限椭圆共同约束,电流矢量只能沿着两个圆的交点运行。

这个区域的控制难度最大。为什么?因为电压余量很小,稍微有点扰动就可能失控。我做过一个高速电主轴的项目,转速要求到30000rpm,在III区运行时,电压利用率必须达到95%以上才能满足要求。那时候我天天盯着示波器看电压波形,生怕出问题。

3.4 一个简单的仿真示例

咱们用MATLAB来画一下这两个“圈”,直观感受一下:

% 电机参数
Ld = 0.0005;    % d轴电感 (H)
Lq = 0.001;     % q轴电感 (H)
psi_f = 0.1;    % 永磁磁链 (Wb)
Umax = 300;     % 最大相电压 (V)
Is_max = 200;   % 最大相电流 (A)

% 转速点
omega = [1000, 3000, 5000];  % 电角速度 (rad/s)

% 绘制电流极限圆
theta = 0:0.01:2*pi;
id_circle = Is_max * cos(theta);
iq_circle = Is_max * sin(theta);
plot(id_circle, iq_circle, 'k--', 'LineWidth', 2);
hold on;

% 绘制不同转速下的电压极限椭圆
for i = 1:length(omega)
    w = omega(i);
    a = Umax/(w*Ld);   % 椭圆长轴
    b = Umax/(w*Lq);   % 椭圆短轴
    id_center = -psi_f/Ld;
    
    id_ellipse = id_center + a*cos(theta);
    iq_ellipse = b*sin(theta);
    plot(id_ellipse, iq_ellipse, 'LineWidth', 1.5);
end

xlabel('id (A)');
ylabel('iq (A)');
legend('电流极限圆', '1000 rad/s', '3000 rad/s', '5000 rad/s');
grid on;
axis equal;

运行这段代码,你会看到:转速低时,电压极限椭圆很大,电流极限圆是主要约束;转速升高,椭圆逐渐缩小,最终和电流极限圆相交。这个交点的轨迹,就是弱磁控制的“黄金路径”。

3.5 小结与避坑指南

好了,咱们总结一下今天的内容:

  • 电流极限圆:硬约束,由硬件决定,不可逾越
  • 电压极限椭圆:软约束,随转速变化,中心在(-ψf/Ld, 0)
  • I区:MTPA控制,追求最大转矩电流比
  • II区:弱磁控制,沿电压极限椭圆边界运行
  • III区:深度弱磁,两个圆共同约束

避坑指南:

  • 我曾经在弱磁控制中忽略了电感饱和效应,结果高速时实际电感比标称值小了很多,导致弱磁深度不够,电机失控。建议你在仿真时加入电感随电流变化的模型。
  • 电压极限椭圆的计算是基于稳态方程的,实际动态过程中电压可能会短暂超出。我一般会在控制器里留5%-10%的电压裕量。
  • 如果你用的是凸极电机(Ld ≠ Lq),电压极限椭圆的长短轴方向要注意,别搞反了。

下一节咱们会讲弱磁控制的具体实现方法,包括查表法和在线计算法。到时候我会分享一个我在项目中实际用过的查表法代码,保证实用。