Keysight N79xx/N89xx/N6705C ELOG 采样 / 巡检频率 SCPI 查询
关键前提:ELOG 是事件触发日志≠定时采样(DLOG 才是周期采样),无全局 “采样率配置寄存器”,分两层频率:硬件底层巡检周期、触发防抖记录间隔、实测统计频率,多通道加:CHx:前缀。
一、1、LIM / 保护日志【最小防重复记录间隔(可编程,可 SCPI 查询)】
两次同类型超限事件最短写入 ELOG 的间隔,决定 LIM 事件最大记录频率,单位 s
scpi
:ELOG:TRIG:LIM:DELAY?
//单通道
:CH1:ELOG:TRIG:LIM:DELAY?
返回举例:0.2 → 最小间隔 0.2s,理论最大记录频率 = 1/0.2=5Hz
该指令可读可写,修改即变更限值日志最大记录频次。
其他触发源防抖(OVP/OCP/INH 等共用同架构)
scpi
:ELOG:TRIG:OVP:DELAY?
:ELOG:TRIG:OCP:DELAY?
二、2、硬件底层轮询巡检周期(固定固件值,无 SCPI 可读指令,硬件固化 100ms=10Hz)
电源内部 MCU 每100ms轮询一次输出 V/I、OVP/OCP/LIM 状态,是 ELOG 底层硬件采样速率:
硬件巡检固定:10Hz(100ms / 次),不能修改、不能 SCPI 读取;
只有巡检时检测到超限 + 保持≥防抖延时,才写入 ELOG。
重点:硬件巡检 10Hz ≠ ELOG 实际写入频率;防抖延时决定实际最高落盘频率。
三、3、DLOG 定时采样(周期采样,可直接查采样率,别和 ELOG 混淆)
若你需要固定周期采样率用 DLOG,SCPI 直读采样周期:
scpi
:DLOG:SAMP:PER? //返回采样周期(s),采样率=1/周期
:CH1:DLOG:SAMP:PER?
四、4、从 ELOG 历史记录反算实际平均采样 / 事件频率(最常用)
无硬件寄存器存储历史平均频率,导出全部 ELOG 时间戳计算:
SCPI 步骤
scpi
:ELOG:COUN? //获取总日志条数N
:ELOG:DATA? 1.LAST //全量导出日志,字段:序号,Unix时间,通道,事件码,备注,V,I
计算公式: 平均事件频率(Hz)=末条时间戳−首条时间戳有效事件条数
Python 自动计算 ELOG 实测频率
python
运行
import pyvisa
rm=pyvisa.ResourceManager()
dev=rm.open_resource("TCPIP::IP::5025::SOCKET")
cnt=int(dev.query(":ELOG:COUN?"))
if cnt>1:
data=dev.query(":ELOG:DATA? 1.LAST").split(",")
ts_list=[int(data[i+1]) for i in range(0.len(data),7)]
span=ts_list[-1]-ts_list[0]
avg_freq=len(ts_list)/span
print("ELOG全量平均事件频率(Hz):",round(avg_freq,3))
五、辅助配套查询指令
限值触发开关::ELOG:TRIG:LIM? →1 开启 LIM 日志
边沿触发配置::ELOG:TRIG:LIM:SLOP?(POS/NEG/BOTH)
总结区分
硬件巡检速率:10Hz (100ms),固化不可查不可改
LIM 日志最大落盘频率:1/DELAY,SCPI:ELOG:TRIG:LIM:DELAY? 查询
历史实际平均频率:导出 ELOG 时间戳 PC 计算
周期性固定采样率:使用 DLOG,:DLOG:SAMP:PER?