Keysight 双向电源:SCPI 查询输出限制历史记录文件头信息完整指南
结合你之前的需求(存储位置、采样频率),我直接给你通用且精准的 SCPI 指令,适配 Keysight N6705C / N6900 / N7900 全系双向直流电源。
一、先明确:输出限制历史 = 2 类日志(文件头不同)
ELOG(保护事件日志:OVP/OCP/OTP/ 输出限制历史) 纯事件记录,有固定文件头(时间、通道、保护类型、阈值等)
DLOG(数据波形日志:限制触发时的电压 / 电流采样) 时序数据,有完整数据头(采样率、点数、通道、单位、起始时间)
下面分别给你查询文件头的 SCPI 命令。
二、查询 ELOG 输出限制历史的文件头(最常用)
ELOG 就是你要的输出限制历史记录,它的文件头包含:
记录版本
时间戳格式
通道号
保护类型(OVP/OCP/OTP)
触发阈值
实际值
设备序列号 / 固件版本
1. 直接读取 ELOG 日志完整头部 + 第一条记录
scpi
ELOG:HEAD?
返回就是文件头信息,示例:
plaintext
Event Log,Version 2.0.Model N6705C,Serial MY12345678.Firmware 1.6.8
Time,Channel,Event,Limit,Measured,Status
2. 读取 ELOG 全部日志(包含头部)
scpi
ELOG:DATA?
返回格式:
plaintext
"Event Log,Version 2.0nTime,Channel,Event,Limit,Measuredn2025-01-01 12:00:00.1.OVP,12.0V,12.5V,Tripped"
第一行就是文件头。
3. 查询 ELOG 日志格式版本(文件头元信息)
scpi
ELOG:VERS?
返回:2.0 或 1.0(代表日志文件头格式)
三、查询 DLOG 波形数据的文件头(限制触发采样)
如果你开启了保护触发自动录波,DLOG 会存电压 / 电流波形,它的文件头包含:
采样频率
总点数
通道
数据类型(Voltage, Current)
起始时间
单位
1. 查询 DLOG 数据文件头
scpi
DLOG:HEAD?
返回示例:
plaintext
Data Log,Sample Rate 1000Hz,Points 1000.Channel 1.Data: Voltage,Current
2. 查询 DLOG 头部元数据(分项精准读取)
scpi
DLOG:SAMP:PER? -- 采样周期
DLOG:POIN? -- 总点数
DLOG:CHAN? -- 记录通道
DLOG:FORM? -- 数据格式(ASCII/BINARY)
DLOG:TIME? -- 记录起始时间戳
四、最实用:一键读取输出限制历史完整文件头
直接运行这 3 条,就能拿到全部头部信息:
scpi
*IDN? -- 设备信息(文件头固定包含)
ELOG:HEAD? -- 输出限制历史文件头
ELOG:VERS? -- 日志版本
五、Python 示例代码(直接复制可用)
python
运行
import pyvisa
rm = pyvisa.ResourceManager()
inst = rm.open_resource("TCPIP::192.168.1.100::INSTR")
# 查询输出限制历史(ELOG)文件头
header = inst.query("ELOG:HEAD?")
print("=== 输出限制历史文件头 ===")
print(header)
# 查询日志版本
version = inst.query("ELOG:VERS?")
print("日志版本:", version)
# 查看完整日志(含头部)
log_data = inst.query("ELOG:DATA?")
print("n=== 完整日志(头部+记录)===")
print(log_data)
inst.close()
六、关键说明(避免踩坑)
ELOG:HEAD? 就是输出限制历史的文件头 这是 Keysight 官方专门用于读取保护事件日志头的 SCPI。
ELOG 头不可修改,固定格式。
老款 E36xx 双向电源无 ELOG:HEAD?,用 ELOG:DATA? 第一行即可。
文件头 = 日志元信息,用于解析记录字段含义。