资讯中心

联系我们

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

如何通过SCPI指令设置双向直流电源输出序列历史记录的自动保存文件格式?

2026-06-12 09:32:33  点击:

  一、适用机型:Keysight N79xxA / N89xxA 双向直流电源

  DLOG(序列波形采样记录)、ELOG(序列事件运行记录)各自独立配置自动保存文件格式,设置的 FORMAT 参数直接绑定 AUTO 自动落盘逻辑,开启自动保存后生成文件即为设定格式。

  支持的格式参数

  BIN:二进制格式(.dlog/.elog,高速、体积小、仪器原生解析)

  ASC:纯 ASCII 文本(.txt,可读性强、占用空间大)

  CSV:逗号分隔表格文本(.csv,可直接 Excel 打开,新版固件支持)

  二、核心 SCPI 设置 + 查询指令

  1. DLOG 序列采样历史自动保存格式

  scpi

  ! 设置自动保存采样日志格式

  MEMory:DLOG:FORMat BIN

  MEMory:DLOG:FORMat ASC

  MEMory:DLOG:FORMat CSV

  ! 查询当前DLOG自动保存格式

  MEMory:DLOG:FORMat?

  2. ELOG 序列事件历史自动保存格式

  scpi

  ! 设置自动保存事件日志格式

  MEMory:ELOG:FORMat BIN

  MEMory:ELOG:FORMat ASC

  MEMory:ELOG:FORMat CSV

  ! 查询当前ELOG自动保存格式

  MEMory:ELOG:FORMat?

  3. 全局日志兜底格式(未单独配置 DLOG/ELOG 时继承)

  scpi

  MEMory:LOG:FORMat BIN

  MEMory:LOG:FORMat?

  三、完整自动保存配置链路(格式 + 路径 + 使能缺一不可)

  标准一键配置脚本(推荐)

  scpi

  *CLS

  ! 1. 设定文件格式

  MEM:DLOG:FORM CSV

  MEM:ELOG:FORM CSV

  ! 2. 设定自动保存路径(介质+子目录)

  MEM:DLOG:MED INT

  MEM:DLOG:DIR "SEQ_LOG"

  MEM:ELOG:MED INT

  MEM:ELOG:DIR "SEQ_LOG"

  ! 3. 开启自动保存开关(必须打开才会自动按格式落盘)

  MEM:DLOG:AUTO 1

  MEM:ELOG:AUTO 1

  ! 回读校验全部配置

  MEM:DLOG:FORM?

  MEM:ELOG:FORM?

  MEM:DLOG:MED?

  MEM:DLOG:DIR?

  MEM:DLOG:AUTO?

  MEM:ELOG:AUTO?

  执行后,每次 ARB 序列运行结束,仪器自动在INT:LOGSEQ_LOG生成.csv格式记录文件。

  四、手动保存单条日志(沿用已配置的 FORMAT 格式)

  手动保存会复用当前 DLOG/ELOG 已设定的格式,无需重复指定:

  scpi

  ! 保存当前采样记录,自动使用MEM:DLOG:FORM设定格式

  MEM:DLOG:SAVE "wave_run01"

  ! 保存事件记录

  MEM:ELOG:SAVE "event_run01"

  五、型号兼容差异

  N79xxA / N89xxA:完整支持 BIN/ASC/CSV 三格式,DLOG/ELOG 独立指令体系

  E36100 BT 小型双向源:无独立 DLOG/ELOG 分支,仅全局指令

  scpi

  MEM:LOG:FORM?

  MEM:LOG:FORM ASC

  MEM:LOG:AUTO 1

  老款 Agilent N6705B:仅支持 BIN/ASC,无 CSV 格式;无自定义子目录 DIR 指令

  六、格式选型工程建议

  长时间高采样率序列 → BIN二进制:写入速度最快、闪存占用最低

  需要 PC Excel 直接打开分析 → CSV

  简易文本读取、无解析程序 → ASC

  七、异常错误码

  表格

  

  八、Python 自动化配置示例

  python

  运行

  import pyvisa

  rm = pyvisa.ResourceManager()

  inst = rm.open_resource("TCPIP::192.168.1.100::INSTR")

  # 配置DLOG/ELOG自动保存为CSV格式

  inst.write("*CLS")

  inst.write("MEM:DLOG:FORM CSV")

  inst.write("MEM:ELOG:FORM CSV")

  inst.write("MEM:DLOG:AUTO 1")

  inst.write("MEM:ELOG:AUTO 1")

  # 读取确认

  dlog_fmt = inst.query("MEM:DLOG:FORM?").strip()

  elog_fmt = inst.query("MEM:ELOG:FORM?").strip()

  print(f"DLOG自动格式:{dlog_fmt}, ELOG自动格式:{elog_fmt}")

  inst.close()