一、主流 Keysight 双向直流电源(N79xxA/N89xxA/BT 系列)SCPI 查询指令
输出序列 / 动态日志分DLOG(动态测量日志)、**ELOG(事件 / 序列执行历史)** 两套文件体系,文件格式查询命令统一归属MEMory:LOG子系统。
1. 查询当前日志存储文件格式(全局默认)
scpi
MEMory:LOG:FORMat?
返回值含义
ASC:ASCII 文本文件(.csv/.txt,可读性强、体积大)
BIN:二进制原生格式(.log/.dat,高速采样、存储体积小、仪器原生解析)
CSV:逗号分隔文本(部分新固件独立枚举)
2. 区分 DLOG(输出波形序列采样日志)/ELOG(序列执行历史事件)格式
1)DLOG(ARB 输出序列采样记录)格式查询
scpi
MEMory:DLOG:FORMat?
2)ELOG(序列运行报错、启停、触发历史记录)格式查询
scpi
MEMory:ELOG:FORMat?
3. 查询已保存历史文件的后缀 / 类型(读取存储目录文件信息)
先读取存储路径内文件列表,再读取单个文件属性:
scpi
! 1、列出内部存储所有日志文件
MEMory:CATalog? "LOG"
! 2、读取指定文件的格式属性(替换"seq001.log"为实际文件名)
MEMory:FILE:FORMat? "seq001.log"
二、ARB 输出序列(输出波形序列)本体文件格式查询
若你指编辑好的输出波形序列文件(.arb),而非运行历史日志:
scpi
! 查询序列文件存储格式
SOURce:ARB:FILE:FORMat?
返回:BIN(二进制 ARB)/ ASC(文本 ARB)
三、配套读写与切换指令(辅助)
设置日志文件格式(写指令)
scpi
MEMory:LOG:FORMat ASC
MEMory:DLOG:FORMat BIN
读取历史日志文件内容
scpi
MEMory:DATA? "xxx.log"
清空序列运行历史记录
scpi
MEMory:ELOG:CLEar
MEMory:DLOG:CLEar
四、实操 Python 示例(VISA 通信)
python
运行
import pyvisa
rm = pyvisa.ResourceManager()
inst = rm.open_resource("TCPIP::192.168.1.100::INSTR")
# 查询全局日志格式
fmt = inst.query("MEM:LOG:FORM?").strip()
print("全局日志格式:", fmt)
# 查询DLOG序列采样日志格式
dlog_fmt = inst.query("MEM:DLOG:FORM?").strip()
print("DLOG序列采样日志格式:", dlog_fmt)
# 查询ELOG序列事件历史格式
elog_fmt = inst.query("MEM:ELOG:FORM?").strip()
print("ELOG序列执行历史格式:", elog_fmt)
inst.close()
五、型号兼容说明
N7950A/N7970A/N8920A 大功率双向源:完整支持上述MEM:LOG全套指令
小型 BT/6631x 系列:仅支持简化版MEM:LOG:FORMat?,无独立 DLOG/ELOG 分支命令
老款 Agilent N6705B:命令一致,返回枚举完全兼容