资讯中心

联系我们

深圳市维立信电子科技有限公司
地址:深圳市福田区红荔路第一世界广场A座8D-E
咨询电话:0755-83766766
E-mail:info@welissom.com

如何通过SCPI命令查询Keysight双向直流电源输出电压过冲次数与负载阻抗的关系?

2026-05-18 09:37:41  点击:

  SCPI 实现:Keysight 双向电源 电压过冲次数 ↔ 负载阻抗 关系测试

  核心结论

  无原生 SCPI 指令直接读过冲次数、无阻抗联动查询指令

  实现逻辑:SCPI 程控切换负载阻抗 → 高速采集电压波形 → 上位机判读过冲并统计次数 → 拟合二者对应关系

  适用机型:N6781A、B2902A、N6705B 等四象限双向直流电源

  一、基础定义

  负载阻抗双向电源 CV 模式下,负载阻抗 RL=IoutVout,通过设定输出电流精准等效切换不同负载阻抗。

  电压过冲判定设定稳态电压Vset,超出阈值 Vset×(1+X%) 判定为一次电压过冲。

  对应关系负载阻抗越小(重载)→ 电流突变越大 → 过冲频次越高;阻抗越大(轻载)→ 过冲次数越少。

  二、全套 SCPI 标准命令

  1. 仪器初始化(固定输出基准)

  scpi

  *RST

  *CLS

  SYST:ERR:CLE

  OUTP ON

  VOLT 24.0 ; 设定稳态输出电压

  CURR MAX ; 开放电流量程

  SENS:AUTO OFF ; 关闭自动量程,稳定采样

  CAL:AUTO OFF ; 关闭自动校准,避免波形畸变

  2. 程控设置负载阻抗(核心)

  通过修改输出电流等效改变负载阻抗

  scpi

  CURR 0.5 ; 小电流 = 大负载阻抗

  CURR 2.0 ; 中电流 = 中负载阻抗

  CURR 5.0 ; 大电流 = 小负载阻抗

  *WAI ; 等待电源输出稳定

  3. 高速电压采样(捕获瞬态过冲)

  scpi

  SENS:VOLT:SAMP 3000 ; 设置采样点数

  SENS:VOLT:SRAT 500000 ; 500kS/s高速采样

  TRIG:SOUR IMM ; 立即触发采样

  INIT ; 启动波形采集

  FETC:VOLT:ARR? ; 读取完整电压波形数组

  4. 辅助查询指令

  scpi

  MEAS:VOLT? ; 读取稳态输出电压

  MEAS:CURR? ; 读取实际输出电流(计算负载阻抗)

  MEAS:TEMP? ; 读取模块温度,排除温漂干扰

  三、测试流程(建立二者关系)

  固定输出电压,依次设置多组不同输出电流,换算对应负载阻抗

  每组阻抗下,触发负载阶跃 / 电压切换,启动 SCPI 高速采样

  上位机解析波形,统计单位时间内电压过冲发生次数

  汇总数据:负载阻抗为横轴,过冲次数为纵轴,生成对应关系

  阻抗计算公式

  RL=IoutVset例:Vset=24V

  I=0.5A → RL=48Ω

  I=2.0A → RL=12Ω

  I=5.0A → RL=4.8Ω

  过冲判定规则

  自定义过冲阈值(常用 5%):电压>24×1.05=25.2V,记为 1 次有效过冲。

  四、Python+SCPI 自动化测试代码

  python

  运行

  import pyvisa

  import numpy as np

  rm = pyvisa.ResourceManager()

  inst = rm.open_resource("TCPIP0::192.168.1.100::inst0::INSTR")

  inst.timeout = 20000

  # 基础参数

  V_SET = 24.0

  OVER_THRESH = V_SET * 1.05 # 5%过冲阈值

  # 测试电流序列(对应不同负载阻抗)

  I_TEST_LIST = [0.5. 2.0. 5.0]

  # 仪器初始化

  inst.write("*RST")

  inst.write("OUTP ON")

  inst.write(f"VOLT {V_SET}")

  inst.write("CAL:AUTO OFF")

  for i_out in I_TEST_LIST:

  # 设置负载电流

  inst.write(f"CURR {i_out}")

  inst.write("*WAI")

  # 计算负载阻抗

  r_load = V_SET / i_out

  # 配置高速采样

  inst.write("SENS:VOLT:SAMP 3000")

  inst.write("SENS:VOLT:SRAT 500000")

  inst.write("INIT")

  # 读取电压波形

  wave_data = inst.query("FETC:VOLT:ARR?")

  volt_arr = np.array([float(v) for v in wave_data.split(",")])

  # 统计过冲次数

  over_count = np.sum(volt_arr > OVER_THRESH)

  print(f"负载阻抗:{r_load:.1f}Ω | 输出电流:{i_out}A | 电压过冲次数:{over_count}")

  inst.write("OUTP OFF")

  inst.close()

  五、关键注意事项

  采样速率匹配电源内置采样最高 500k~1MS/s,足够捕捉毫秒级电压过冲,高频尖峰过冲建议搭配示波器联动 SCPI 同步采集。

  剔除无效干扰短时间电压尖峰噪声不计入,可设置过冲持续时长过滤误统计。

  工况固定测试全程锁定输出电压、环境温度,仅改变负载阻抗,保证数据唯一变量。

  双向模式适配源模式 / 灌模式分开测试,两种工况下阻抗 - 过冲次数关系存在差异。

  六、SCPI 终止测试指令

  scpi

  ABORT ; 停止波形采样

  OUTP OFF ; 关闭电源输出

  *RST ; 恢复仪器默认设置

  总结

  无专用 SCPI 直读过冲次数与阻抗关系,依靠程控改负载 + 高速采波形 + 上位机统计实现;

  核心 SCPI:CURR设负载、FETC:VOLT:ARR?读波形;

  实测规律:负载阻抗越小,电压过冲发生频次越高。