资讯中心

联系我们

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

如何通过SCPI查询Keysight双向直流电源输出电压恢复时间与温度的关系?

2026-05-18 09:49:22  点击:

  Keysight 双向直流电源(N6781A / RP7900 / B2900 等)没有一条 SCPI 直接返回 “恢复时间–温度关系”,但可以用:

  SCPI 读内部温度

  SCPI 做负载阶跃 + 高速采样电压波形

  上位机算恢复时间(回到稳态带的时间)

  多温度点循环 → 得到恢复时间 vs 温度曲线

  一、定义:电压恢复时间(Recovery Time)

  行业标准:负载 / 电压突变后,电压回到并稳定在稳态值 ±X mV(如 ±15 mV)内的最短时间。温度升高 → 环路带宽下降 → 恢复时间变长。

  二、关键 SCPI(读温度 + 瞬态采集)

  1. 查询仪器内部温度(核心!)

  scpi

  MEAS:TEMP? ; 读电源内部温度(°C)

  STAT:TEMP:LIM? ; 过温保护阈值

  2. 初始化 + 关闭自动功能(保证可重复)

  scpi

  *RST

  *CLS

  OUTP ON

  CAL:AUTO OFF

  SENS:AUTO OFF

  VOLT:BAND HIGH ; 高带宽,瞬态更快

  CURR 5A ; 设定负载电流

  3. 高速采样配置(抓恢复过程)

  scpi

  SENS:VOLT:SAMP 16384 ; 采样点数

  SENS:VOLT:SRAT 1000000 ; 1 MS/s → 1 μs 分辨率

  TRIG:SOUR IMM

  TRIG:DEL 0

  4. 触发负载阶跃(激发恢复过程)

  scpi

  CURR 1A ; 轻载

  *WAI

  INIT ; 开始采集

  CURR 5A ; 阶跃到重载 → 电压掉下去再恢复

  *WAI

  5. 读取波形 + 温度

  scpi

  FETC:VOLT:ARR? ; 电压时域波形

  MEAS:TEMP? ; 同步读温度

  三、上位机计算恢复时间(Python)

  逻辑:

  找到稳态电压 V_set

  设定恢复带:V_set ± 15 mV

  从阶跃后找第一次进入并停在带内的时间点 → 恢复时间 Tr

  python

  运行

  import pyvisa, numpy as np

  rm = pyvisa.ResourceManager()

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

  inst.timeout = 30000

  # 配置

  V_SET = 5.0

  I_LOW, I_HIGH = 1.0. 5.0

  fs = 1e6

  dt = 1/fs

  band = 0.015 # ±15mV

  # 初始化

  inst.write("*RST; OUTP ON; CAL:AUTO OFF")

  inst.write(f"VOLT {V_SET}; CURR {I_LOW}")

  inst.write("VOLT:BAND HIGH")

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

  inst.write(f"SENS:VOLT:SRAT {fs}")

  # 阶跃+采集

  inst.write("*WAI; INIT")

  inst.write(f"CURR {I_HIGH}; *WAI")

  # 读数据

  wave = np.array([float(x) for x in inst.query("FETC:VOLT:ARR?").split(',')])

  temp = float(inst.query("MEAS:TEMP?"))

  # 找恢复时间

  upper = V_SET + band

  lower = V_SET - band

  in_band = np.logical_and(wave >= lower, wave <= upper)

  # 找到第一次连续稳定在带内

  for i in range(len(wave)):

  if np.all(in_band[i:i+100]): # 连续100点

  tr = i * dt

  break

  print(f"温度={temp:.1f}°C, 恢复时间={tr*1e6:.2f} μs")

  inst.close()

  四、如何得到 “恢复时间–温度” 关系

  控温:高低温箱或自然升温(满载运行)

  循环测量

  每 2–5°C 测一次

  每次:读温度 → 阶跃 → 采波形 → 算 Tr

  拟合曲线:Tr (°C),通常是正斜率(温度越高恢复越慢)

  五、常用辅助 SCPI

  scpi

  VOLT:BAND? ; 当前带宽

  SENS:VOLT:SRAT? ; 采样率

  MEAS:VOLT? ; 稳态电压

  STAT:OPER:TEMP? ; 温度状态寄存器

  六、一句话总结

  ❌ 无直接 SCPI 指令输出 Tr–T 关系

  ✅ MEAS:TEMP? + 负载阶跃 + 高速采样 + 上位机判稳

  ✅ 温度上升 → 恢复时间增大(环路变慢)