资讯中心

联系我们

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

如何通过SCPI查询Keysight双向直流电源输出限制历史记录的开始时间?

2026-06-02 10:22:06  点击:

  Keysight RP7900 双向电源没有直接返回 “限制历史记录开始时间” 的单条 SCPI,只能通过 ELOG(事件日志)第一条记录的时间戳,作为 “输出限制历史记录的开始时间”。

  下面给出可直接执行的 SCPI 步骤、时间戳含义,以及如何过滤只看 “输出限制” 类事件的最早时间。

  一、先查 ELOG 总体信息

  scpi

  *IDN? ; 确认仪器型号(RP79xx)

  SYSTem:ELOG:DEPTH? ; 日志最大条数(内存深度)

  SYSTem:ELOG:COUNt? ; 当前已记录事件总数 N

  例:

  plaintext

  100

  23

  二、读第一条事件(index=0)的时间戳

  scpi

  SYSTem:ELOG:DATA? 0

  返回格式:

  plaintext

  ,,,,

  示例:

  plaintext

  1718923456.123.4.1."Reverse Power Limit",-120.5

  1718923456.123:Unix 时间戳(秒,浮点)→ 这就是日志中最早事件的时间

  event_code=4:反向功率限制触发(属于输出限制)

  三、时间戳转成可读时间(上位机做)

  Python 示例:

  python

  运行

  import time

  ts = 1718923456.123

  print(time.ctime(ts))

  # 或

  print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(ts)))

  四、只看 “输出限制” 类事件的最早时间(推荐)

  ELOG 里混杂各种事件(开机、输出开关、保护等),你要的是 **“输出限制” 历史的开始时间 **,需要:

  遍历所有事件:for i in 0..N-1

  过滤事件码:

  1=OVP 过压限制

  2=OCP 过流限制

  4 = 反向功率限制

  取最早一条的时间戳 → 即 “输出限制历史记录的开始时间”

  伪代码:

  python

  运行

  min_ts = None

  for i in range(N):

  data = inst.query(f'SYSTem:ELOG:DATA? {i}')

  ts, code, ch, desc, val = data.split(',')

  code = int(code)

  ts = float(ts)

  if code in (1.2.4): # 输出限制类事件

  if min_ts is None or ts < min_ts:

  min_ts = ts

  # min_ts 即为“输出限制历史最早触发时间”

  五、关键结论

  无专用 SCPI 命令直接返回 “限制历史开始时间”。

  用 SYSTem:ELOG:DATA? 0 得到全部日志最早时间。

  过滤 event_code=1/2/4 后,取最小时间戳 → 输出限制历史的开始时间。