Keysight N79xx/N89xx/N6705C 限值 (LIM/OVP/OCP) 历史峰值 SCPI 查询
ELOG(事件日志)无内置 MAX/MIN 寄存器,不能单条 SCPI 直读历史峰值;分 2 种方案:ELOG 全量导出筛选峰值、DLOG 定时采样内置极值查询,多通道前缀:CHx:。
一、ELOG 限值历史峰值(VLIM/ILIM 保护超限记录)
ELOG 每条日志字段:索引,Unix时间,通道,事件码,事件说明,Vout,Iout 事件码 =VLIM/ILIM/OVP/OCP即为输出限值触发记录,需要全读日志后 PC 端筛选电压 / 电流峰值。
1、SCPI 读取全量 ELOG 数据
scpi
:ELOG:COUN? //读取总日志条数N
:ELOG:DATA? 1.LAST //导出全部缓存日志(首条~末条)
//单通道筛选::CH1:ELOG:DATA? 1.LAST
示例返回:1.1775521122.1.VLIM,Voltage Limit,28.62.12.55
第 6 列 = 超限电压,第 7 列 = 超限电流;筛选全部 VLIM/ILIM 条目取 Max 即为限值历史峰值
2、单条抽查限值数据(快速核对极值)
scpi
:ELOG:DATA? LAST //读取最新一条限值记录
:ELOG:DATA? n //n=指定索引序号
:ELOG:DATA:EVENt? n //只返回事件类型(VLIM/ILIM/OVP)
3、限值触发配置阈值(设定限值,≠历史超限峰值)
scpi
:ELOG:TRIG:LIM:VOLT? //LIM电压触发设定阈值
:ELOG:TRIG:LIM:CURR? //LIM电流触发设定阈值
注意:配置阈值是设定限值,设备超限实际值(峰值)存于 ELOG 日志,必须读 DATA 提取
二、DLOG 定时采样:内置硬件历史最大 / 最小值(可直接 SCPI 读峰值,最优方案)
DLOG 为周期采样记录仪,硬件自动缓存采样区间 V/I最大值 MAX、最小值 MIN,无需全量导出,直接指令查询历史峰值。
1、查询 DLOG 全局状态
scpi
:DLOG:ENAB? //DLOG开启状态
:DLOG:SAMP:PER? //DLOG采样周期(s)
:DLOG:COUN? //DLOG已存储采样点数
2、DLOG 历史电压 / 电流峰值(关键 SCPI)
scpi
:DLOG:DATA:VOLT? MAX //DLOG采样区间历史最高电压(峰值)
:DLOG:DATA:VOLT? MIN //DLOG采样区间历史最低电压
:DLOG:DATA:CURR? MAX //DLOG采样区间历史最大电流(峰值)
:DLOG:DATA:CURR? MIN //DLOG采样区间历史最小电流
//多通道
:CH1:DLOG:DATA:VOLT? MAX
:CH1:DLOG:DATA:CURR? MAX
适用:需要连续采样、自动抓取输出全程峰值,优先用 DLOG 而非 ELOG
三、实时瞬时峰值(当前运行最大,非历史记录)
scpi
:MEAS:VOLT:MAX?
:MEAS:CURR:MAX?
仅上电 / 本次输出周期实时极值,掉电 / 重启清零,不存历史
四、Python 自动筛选 ELOG 限值峰值(直接运行)
python
运行
import pyvisa
rm = pyvisa.ResourceManager()
inst = rm.open_resource("TCPIP::电源IP::5025::SOCKET")
#读取全部ELOG
total = int(inst.query(":ELOG:COUN?"))
if total == 0:
print("无ELOG记录")
else:
raw = inst.query(":ELOG:DATA? 1.LAST").split(",")
v_list,i_list = [],[]
for idx in range(0.len(raw),7):
evt = raw[idx+3]
v = float(raw[idx+5])
i = float(raw[idx+6])
if evt in ["VLIM","ILIM","OVP","OCP"]:
v_list.append(v)
i_list.append(i)
if v_list:
print("限值历史最高电压Vmax=",max(v_list))
print("限值历史最大电流Imax=",max(i_list))
else:
print("无LIM/保护超限记录")
五、关键区分
ELOG:事件触发记录:只在超限瞬间存一组 V/I,无硬件极值寄存器,只能导出全量算峰值;
DLOG:周期连续采样:仪器硬件自动统计区间 MAX/MIN,SCPI 一键直读历史峰值;
:ELOG:TRIG:LIM:VOLT?=限值设定值≠实际超限峰值。