资讯中心

联系我们

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

如何通过SCPI指令查询双向直流电源历史记录中所有步骤的详细参数?

2026-06-11 10:08:36  点击:

  Keysight N6705A/B/C、RP7900、N678x 双向直流电源(序列 SEQuence + DLOG 历史记录);B2900 SMU 指令前缀替换为 SEQ/LOG

  分两层查询:

  序列步骤配置参数(程序设定的每一步 V/I/ 时长)

  DLOG 历史采样实测数据(每一步运行时真实电压、电流、功率、极值)

  一、读取已加载序列所有步骤预设配置参数

  1. 查询序列总步数

  scpi

  SEQuence:STEP:COUNt? (@ch)

  示例:SEQu:STEP:COUN? (@1),返回通道 1 序列一共有多少个步进步骤。

  2. 单点读取某一步完整配置(电压、电流、持续时间、模式)

  scpi

  SEQuence:STEP?,(@ch)

  返回格式:V设置值,I设置值,时长(秒),模式码 模式码说明:

  0:恒压 CV

  1:恒流 CC

  2:恒功率 CP

  3:阻抗模式

  示例读取通道 1 第 2 步:

  scpi

  SEQu:STEP? 2.(@1)

  << 24.0.5.0.2.5.0

  含义:24V CV 模式,限流 5A,保持 2.5 秒

  3. 批量一次性导出全部步骤(不用循环单点查询)

  scpi

  SEQuence:DATA? (@ch)

  整条序列所有步骤连续逗号打包输出,结构: 步数,V1.I1.T1.Mode1.V2.I2.T2.Mode2....Vn,In,Tn,Moden

  配套序列全局参数

  scpi

  // 序列总循环次数设定

  SEQu:COUNt? (@1)

  // 序列启动后输出初始状态

  SEQu:OUTPut:START? (@1)

  // 序列结束后输出保持动作

  SEQu:OUTPut:END? (@1)

  二、读取 DLOG 历史记录里每一步运行实测详细数据

  序列运行时 DLOG 同步采样,有两种获取方式:内存统计极值 + 完整采样文件

  1、单段 DLOG 缓存内分步骤统计(快速极值)

  全局整体统计(整段序列所有步骤合并)

  scpi

  // 电压最大/最小/均值

  DLOG:STAT:VOLT:MAX?

  DLOG:STAT:VOLT:MIN?

  DLOG:STAT:VOLT:AVG?

  // 电流最大/最小/均值(双向包含正负吸收电流)

  DLOG:STAT:CURR:MAX?

  DLOG:STAT:CURR:MIN?

  DLOG:STAT:CURR:AVG?

  // 功率统计

  DLOG:STAT:POW:MAX?

  DLOG:STAT:POW:MIN?

  关键时间锚点,用来分割步骤区间

  scpi

  // DLOG启动、停止时间戳

  DLOG:TIME:STARt?

  DLOG:TIME:STOP?

  // 单步理论时长总和 = 单步时间 × 循环次数

  上位机可根据每步预设时长,把整条采样曲线切分成对应步骤区间,单独计算每一步实测 V/I/P 极值。

  2、读取完整历史 CSV 文件(最完整,包含每一采样点,可精确拆分每一步)

  1)查看日志存储路径与文件列表

  scpi

  DLOG:PATH?

  MMEM:CAT? "/LOG/"

  2)下载完整记录文件

  scpi

  MMEM:DATA? "/LOG/SEQ_RUN001.CSV"

  CSV 标准表头: Timestamp,Channel,Voltage,Current,Power,StatusFlag 每行是一个采样时刻的实测值。

  拆分步骤逻辑(上位机处理)

  拿到 SEQuence:DATA? 得到每一步预设时长 T1、T2、T3...

  总单轮时长 = T1+T2+T3…

  循环 N 轮则总运行时间 = 单轮总时长 × N

  按时间轴切割 CSV 数据块,每个时间区间对应一个序列步骤

  分块计算每一步独立 Vmax/Vmin/Imax/Imin/Pmax 等详细实测参数

  3、ELOG 事件辅助(步骤中出现保护故障时的异常参数)

  如果某一步出现 OVP/OCP 停机,读取故障详情:

  scpi

  ELOG:COUNt?

  ELOG:DATA?

  返回内容包含故障发生通道、阈值、故障瞬间 V/I、持续时间,对应出错的序列步骤。

  三、B2900 系列 SMU 替换指令

  B2900 无 DLOG,统一 SEQ/LOG 体系

  scpi

  SEQ:STEP:COUNt? (@1)

  SEQ:STEP? 3.(@1)

  SEQ:DATA? (@1)

  LOG:STAT:VOLT:MAX?

  LOG:STAT:CURR:MIN?

  LOG:TIME:STARt?

  MMEM:DATA? "/LOGS/RECORD.CSV"

  四、完整实操交互示例(N6705C 通道 1)

  scpi

  //1 查询通道1序列总步数

  >> SEQu:STEP:COUN? (@1)

  << 3

  //2 批量导出全部三步预设参数

  >> SEQu:DATA? (@1)

  << 3.12.0.2.0.1.0.0.24.0.3.0.2.0.0.0.0.0.0.0.5.0

  //解析:3步

  //步1:12V,2A,1s,CV

  //步2:24V,3A,2s,CV

  //步3:0V,0A,0.5s,CV

  //3 查询设定循环次数

  >> SEQu:COUN? (@1)

  << 5

  //4 读取本次运行整段电流极值

  >> DLOG:STAT:CURR:MAX?

  << 3.021

  >> DLOG:STAT:CURR:MIN?

  << -0.125

  //5 下载完整采样文件,上位机按1s/2s/0.5s切分三步单独统计

  MMEM:DATA? "/LOG/SEQTEST.CSV"

  五、重要约束与固件兼容

  SEQuence:DATA? 兼容性 N6705A 早期固件不支持批量 DATA 导出,只能循环 SEQu:STEP? X,(@ch) 逐步读取。

  DLOG 统计缓存生命周期 DLOG:CLEar、新 DLOG:STARt、仪器重启会清空 STAT 统计;久远历史文件只能靠 CSV 解析。

  无限循环 SEQu:COUN 0 序列不停循环,DLOG 会按文件分片存储;需要读取所有分片 CSV 合并拆分步骤。

  运行中修改序列步骤 正在 SEQu:STAR 运行时修改 STEP 参数,下一轮循环才生效,当前循环步骤不变。

  状态标记 StatusFlag 含义 CSV 中 Flag=0 正常;1=OVP;2=OCP;3=OTP;4 = 输出关闭,用来定位哪一步出现异常。

  六、自动化标准工作流程

  采集前:读取 SEQu:DATA? 保存全部步骤预设 V/I/T/ 模式

  采集结束:读取结束条件 DLOG:COND:END?、循环次数、起止时间

  快速校验:读取 DLOG 内置全局 V/I/P 极值

  精细分析:下载 CSV 文件,按步骤时长切割时间区间,计算每一步独立最大、最小、平均电压电流功率

  如有故障:读取 ELOG 事件,匹配故障时间对应出错步骤参数