资讯中心

联系我们

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

如何通过SCPI命令查询Keysight电源输出限制历史记录的触发事件是否被清除?

2026-06-04 09:58:29  点击:

  Keysight 双向电源 ELOG 限值历史是否已清除 SCPI 查询方案(N79xx/N89xx/N6705C 全系通用)

  判断输出限制 (LIM) 触发事件历史记录是否被清空分 2 种实现思路:读取日志条目总数(最实用)、查询 ELOG 状态寄存器标志位,多通道机型加:CHx:前缀。

  一、首选:读取限值历史记录条数(最直观)

  1. 查询 LIM 限值事件总记录数

  scpi

  :ELOG:COUNt:LIMit?

  返回 =0 → 限值历史已全部清除,无残留事件

  返回>0 → 缓冲区仍存历史触发事件,未清除

  多通道机型(N6705B/C)

  scpi

  :CH1:ELOG:COUN:LIM?

  :CH2:ELOG:COUN:LIM?

  补充:OVP/OCP 保护事件计数

  scpi

  :ELOG:COUNt:PROTection?

  清除历史的指令(配套)

  scpi

  :ELOG:CLEar:LIMit //仅清空限值历史

  :ELOG:CLEar:PROT //仅清空保护历史

  :ELOG:CLEar:ALL //清空全部ELOG日志

  判定逻辑:清除后立即查询 Count=0;新限值触发后 Count 自动 + 1

  二、寄存器标志位:查询 ELOG 缓冲区空 / 满状态

  1. 查询 ELOG 事件状态寄存器

  scpi

  :ELOG:STATus?

  返回十进制数值,关键 bit 定义:

  Bit0 (1):ELOG 缓冲区非空(有记录,未清空)

  Bit1 (2):缓冲区满

  Bit0=0 → 缓冲区已清空,无历史事件

  操作示例

  scpi

  :ELOG:CLE:LIM

  :ELOG:STAT?

  //返回0 → 限值日志清除完毕

  三、逐条读取校验(精准核验残留记录)

  scpi

  :ELOG:DATA:LIMit? 0.1

  无数据 / 返回空 = 已全部清除

  有字符串数据 = 仍留存历史记录

  四、自动化判断 Python 示例

  python

  运行

  import pyvisa

  rm = pyvisa.ResourceManager()

  dev = rm.open_resource("TCPIP::电源IP::5025::SOCKET")

  count = int(dev.query(":ELOG:COUN:LIM?"))

  if count == 0:

  print("限值历史记录【已全部清除】")

  else:

  print(f"仍有{count}条限值事件未清除")

  dev.close()

  五、常用完整校验流程

  scpi

  :ELOG:CLE:LIM //执行清空

  :ELOG:COUN:LIM? //校验条目数

  :ELOG:STAT? //校验寄存器空标志