13 相角谱 angle_spectrum
13 相角谱 angle_spectrum
用途
以角度表示的相位关系,便于读三相相角差与阻抗角。
示例(5 张)
13-1 谐波电流的相角谱

13-2 三相电压之间的相角谱

13-3 接地阻抗的阻抗角频谱

13-4 输电线路传递函数的相角谱

13-5 负荷功率因数角的频谱分解

代码
以下 5 个函数取自 code/第二批_信号分析261107.py,直接调用即可出图。样式(宋体 + Times、10 磅、刻度朝内四边、留白自检)由 code/公共配置261107.py 的 setup_cn_style() 和 save() 统一提供,本节不再重复。
# 摘自 code/第二批_信号分析261107.py
def ang_01():
"""谐波电流的相角谱。"""
fig, ax = new_fig()
rng = np.random.default_rng(1301)
fs = 6400
t = np.arange(0, 2.0, 1 / fs)
x = (np.sin(2 * np.pi * 50 * t) + 0.3 * np.sin(2 * np.pi * 150 * t + 1.1)
+ 0.22 * np.sin(2 * np.pi * 250 * t + 2.3)
+ 0.14 * np.sin(2 * np.pi * 350 * t + 0.4) + rng.normal(0, 0.02, t.size))
ax.angle_spectrum(x, Fs=fs, color=C1, lw=1.0, marker="o", ms=2.5)
ax.grid(False)
ax.set_xlim(0, 800)
ax.set_xlabel("频率 " + IT["f"] + " / Hz")
ax.set_ylabel("相角 / (°)")
save(fig, "13_相角谱", "13_相角谱_谐波电流相角谱")
def ang_02():
"""三相电压之间的相角谱。"""
fig, ax = new_fig()
fs = 2000
t = np.arange(0, 2.0, 1 / fs)
xa = np.sin(2 * np.pi * 50 * t)
xb = np.sin(2 * np.pi * 50 * t - 2 * np.pi / 3) + 0.03 * np.sin(2 * np.pi * 250 * t)
ax.angle_spectrum(xa + xb, Fs=fs, color=C3, lw=1.0, marker="s", ms=2.5)
ax.grid(False)
ax.set_xlim(0, 400)
ax.set_xlabel("频率 " + IT["f"] + " / Hz")
ax.set_ylabel("相角 / (°)")
save(fig, "13_相角谱", "13_相角谱_三相电压相角")
def ang_03():
"""接地阻抗的阻抗角频谱。"""
fig, ax = new_fig()
rng = np.random.default_rng(1303)
fs = 5000
t = np.arange(0, 2.0, 1 / fs)
x = (np.sin(2 * np.pi * 60 * t) + 0.6 * np.sin(2 * np.pi * 180 * t + 0.9)
+ 0.3 * np.sin(2 * np.pi * 420 * t + 1.8) + rng.normal(0, 0.04, t.size))
ax.angle_spectrum(x, Fs=fs, color=C1, lw=1.0, marker="^", ms=2.5)
ax.grid(False)
ax.set_xlim(0, 1000)
ax.set_xlabel("频率 " + IT["f"] + " / Hz")
ax.set_ylabel("阻抗角 / (°)")
save(fig, "13_相角谱", "13_相角谱_接地阻抗角")
def ang_04():
"""输电线路传递函数的相角谱。"""
fig, ax = new_fig()
rng = np.random.default_rng(1304)
fs = 4000
t = np.arange(0, 2.0, 1 / fs)
x = (np.sin(2 * np.pi * 50 * t) + 0.45 * np.sin(2 * np.pi * 200 * t + 1.5)
+ 0.25 * np.sin(2 * np.pi * 500 * t + 2.8) + rng.normal(0, 0.03, t.size))
ax.angle_spectrum(x, Fs=fs, color=C5, lw=1.0, marker="D", ms=2.5)
ax.grid(False)
ax.set_xlim(0, 1200)
ax.set_xlabel("频率 " + IT["f"] + " / Hz")
ax.set_ylabel("相角 / (°)")
save(fig, "13_相角谱", "13_相角谱_线路传递函数相角")
def ang_05():
"""负荷功率因数角的频谱分解。"""
fig, ax = new_fig()
rng = np.random.default_rng(1305)
fs = 1.0
t = np.arange(0, 512, 1 / fs)
x = (0.12 * np.sin(2 * np.pi * t / 24) + 0.05 * np.sin(2 * np.pi * t / 12)
+ rng.normal(0, 0.02, t.size))
ax.angle_spectrum(x, Fs=fs, color=C3, lw=1.0, marker="o", ms=2.5)
ax.grid(False)
ax.set_xlim(0, 0.15)
ax.set_xlabel("频率 " + IT["f"] + " / (1/h)")
ax.set_ylabel("相角 / (°)")
save(fig, "13_相角谱", "13_相角谱_功率因数角频谱")
说明
- 图片尺寸 1181×944 px(100 mm × 80 mm @ 300 dpi),三维图为 1181×1122 px。
- 图内不放标题,图题由本文件的二级/三级标题承担。
- 数据为贴近广东实际量级的仿真算例,随机种子固定,重跑结果一致。

浙公网安备 33010602011771号