罗盘图(`compass`)

罗盘图(compass)

06_极坐标与特殊 5 张 MATLAB R2023b 100 mm 宽 @ 300 dpi

这个方法适合什么

从原点出发的箭头,长度表示幅值、方向表示相角。适合:三相电压电流相量、序分量、方向保护的动作量。

电气场景

1 三相电压相量罗盘图

2 三相电流相量罗盘图

3 并网点功率矢量罗盘图

4 变压器各侧电流相量

5 谐波电流相量罗盘图

代码

脚本 p6_polar_special.m 中对应 compass 的一段,SEL 用于选择只跑某几个方法。

% ---- 4-1 三相电压相量(不平衡) ----
try
    U  = [57.7 58.4 56.6]; a = [0 -2*pi/3 2*pi/3]; M = 58.4;
    f = ml_fig(PP,100,90); ax = ax2(f); hold(ax,'on');
    for k = 1:3
        compass(ax,U(k)*cos(a(k)),U(k)*sin(a(k)),'-');
    end
    axis(ax,'equal'); xlim(ax,[-1.30 1.30]*M); ylim(ax,[-1.30 1.30]*M);
    lgp(ax,PP,{'<i>A</i> 相 57.7 kV','<i>B</i> 相 58.4 kV','<i>C</i> 相 56.6 kV'});
    save_png(f,FIGD,'三相电压相量罗盘图');
catch ME, fprintf('[FAIL] 4-1 %s\n',ME.message); close all; end

% ---- 4-2 三相电流相量(含负序) ----
try
    I1 = [412 405 418]; a1 = [0 -2*pi/3 2*pi/3];
    In = 46; an = pi/3; M = 418;
    f = ml_fig(PP,100,90); ax = ax2(f); hold(ax,'on');
    for k = 1:3
        compass(ax,I1(k)*cos(a1(k)),I1(k)*sin(a1(k)),'-');
    end
    compass(ax,In*cos(an),In*sin(an),'-');
    axis(ax,'equal'); xlim(ax,[-1.30 1.34]*M); ylim(ax,[-1.30 1.30]*M);
    lgp(ax,PP,{'<i>A</i> 相 412 A','<i>B</i> 相 405 A', ...
               '<i>C</i> 相 418 A','负序分量 46 A'});
    save_png(f,FIGD,'三相电流相量罗盘图');
catch ME, fprintf('[FAIL] 4-2 %s\n',ME.message); close all; end

% ---- 4-3 功率矢量(有功 / 无功) ----
try
    P = [8.6 8.6 8.6]; Q = [3.2 -2.4 0.2];
    S = hypot(P,Q); ang = atan2(Q,P); M = max(S);
    f = ml_fig(PP,100,90); ax = ax2(f); hold(ax,'on');
    for k = 1:3
        compass(ax,S(k)*cos(ang(k)),S(k)*sin(ang(k)),'-');
    end
    axis(ax,'equal'); xlim(ax,[-1.25 1.30]*M); ylim(ax,[-1.30 1.30]*M);
    lgp(ax,PP,{'滞后 8.6 MW + j3.2 Mvar','超前 8.6 MW - j2.4 Mvar', ...
               '单位功率因数 8.6 MW'});
    save_png(f,FIGD,'并网点功率矢量罗盘图');
catch ME, fprintf('[FAIL] 4-3 %s\n',ME.message); close all; end

% ---- 4-4 变压器各侧电流相量 ----
try
    Ih = 328; Im = 612; Il = 1720;      % 三侧归算到同一基准的 A 相电流
    f = ml_fig(PP,100,90); ax = ax2(f); hold(ax,'on');
    compass(ax,Ih,0,'-');
    compass(ax,Im*cos(-2*pi/3),Im*sin(-2*pi/3),'-');
    compass(ax,Il*cos(2*pi/3),Il*sin(2*pi/3),'-');
    axis(ax,'equal'); xlim(ax,[-1.30 1.34]*Il); ylim(ax,[-1.30 1.30]*Il);
    lgp(ax,PP,{'高压侧 328 A','中压侧 612 A','低压侧 1720 A'},'northeast');
    save_png(f,FIGD,'变压器各侧电流相量');
catch ME, fprintf('[FAIL] 4-4 %s\n',ME.message); close all; end

% ---- 4-5 谐波电流相量 ----
try
    H  = [5 7 11 13]; Ihm = [86 54 22 14];
    ah = [0.4 -1.1 2.2 -2.6]; M = 86;
    f = ml_fig(PP,100,90); ax = ax2(f); hold(ax,'on');
    for k = 1:4
        compass(ax,Ihm(k)*cos(ah(k)),Ihm(k)*sin(ah(k)),'-');
    end
    axis(ax,'equal'); xlim(ax,[-1.30 1.34]*M); ylim(ax,[-1.30 1.30]*M);
    lgp(ax,PP,{'5 次 86 A','7 次 54 A','11 次 22 A','13 次 14 A'});
    save_png(f,FIGD,'谐波电流相量罗盘图');
catch ME, fprintf('[FAIL] 4-5 %s\n',ME.message); close all; end
posted @ 2026-11-10 08:30  小青蛙电气  阅读(2)  评论(0)    收藏  举报