Keysight N6705B/C、N6700、8600 双向电源:循环次数与电压对应关系 SCPI 查询解析
分为两大场景:
读取 LIST 序列预设配置:每一步电压、单轮总步数、总循环次数(理论对应关系)
解析 DLOG 历史记录文件:从已存日志反推「第几轮循环→对应输出电压」(实测运行真实关系)
一、查询 LIST 序列预设参数(理论循环 - 电压映射)
LIST 是阶梯序列,一轮由多步电压点组成,多轮重复执行。
1. 查询序列总步数、每一步设定电压
scpi
SOUR:LIST:STEP? ! 返回一轮LIST内部总步数 N
SOUR:LIST:VOLT? ! 返回逗号分隔数组:每一步的设定电压 [V1.V2.V3...]
! 单独读取第X步电压(X从1开始)
SOUR:LIST:VOLT? 2
示例:3 步序列 SOUR:LIST:VOLT? 返回 12.0.24.0.0.0 一轮顺序:步 1=12V → 步 2=24V → 步 3=0V
2. 查询全局循环总次数(整轮重复跑多少次)
scpi
TRIG:COUN?
数字:总共执行完整轮数;INF= 无限循环
3. 单步保持时长、轮间间隔(辅助时序)
scpi
SOUR:LIST:DWEL? ! 每一步保持时间(秒)
TRIG:DEL? ! 两轮LIST之间等待延时(秒)
4. 映射逻辑(理论)
第 1 轮:依次执行 V1、V2、V3
第 2 轮:再次 V1、V2、V3
…… 第 N 轮重复相同电压阶梯 固定配置下每一轮的电压阶梯完全一致;若你需要每轮电压递增 / 递减,必须上位机动态重写SOUR:LIST:VOLT数组。
二、从 DLOG 历史日志文件解析真实「循环次数 — 电压」关系(实测数据)
DLOG 保存了全程采样电压、时间戳,可精确拆分每一轮循环区间,匹配对应电压。
步骤 1:读取日志基础信息
scpi
DLOG:FILE:CAT? ! 获取所有日志文件名
DLOG:FILE:INFO?"test.csv" ! 拿到Created/EndTime、文件大小
DLOG:FILE:TIMESTAMP? ! 1=每行带绝对时间戳(拆分循环必备)
DLOG:PER? ! DLOG采样周期(秒)
SOUR:LIST:STEP?;SOUR:LIST:DWEL? ! 读取单轮LIST步数、每步时长
步骤 2:下载完整日志采样数据
scpi
DLOG:FILE:DATA?"test.csv"
带时间戳标准行格式: 2026-06-10.14:20:01.000.12.000.2.100.25.200 字段:绝对时间,电压 V, 电流 A, 功率 W
步骤 3:上位机拆分循环、绑定电压(核心解析算法)
先用SOUR:LIST:DWEL?求和得到单轮 LIST 总时长 T_round Tround=dwel1+dwel2+dwel3+...
取日志第一条时间为基准t0;
对每一条采样时间t_sample,计算相对时长 Δt=tsample−t0
当前属于第几轮循环: LoopNum=Floor(Δt÷Tround)+1
在同一 LoopNum 内,用相对子时间匹配 LIST 步序,取出对应设定电压;同时可对比实测采样电压。
简化判断示例
单轮总时长 5s;某采样点 Δt=12.3s 12.3/5=2.46 → 属于第 3 轮循环 再用 12.3 - 2×5 =2.3s(本轮内相对时间),对比 DWEL 分段,找到当前是第几步、对应电压。
三、实时运行时查询当前循环与当前电压
采集未结束、正在跑序列时,无需读文件,实时读取状态:
scpi
INIT:STAT? ! 1=序列运行中
SOUR:LIST:CURR:STEP? ! 当前正在执行LIST第几步
SOUR:LIST:VOLT?
MEAS:VOLT? ! 当前实测输出电压
STAT:TRIG:COUN? ! 已完整跑完多少整轮循环
配对关系: 已完成轮数 = STAT:TRIG:COUN? 当前正在执行:第COUN+1轮、第CURR:STEP?步、电压 = SOUR:LIST:VOLT?(step)
四、完整 SCPI 调试指令序列
scpi
!=========1.读取LIST预设电压阶梯与循环配置=========
SOUR:LIST:STEP?
SOUR:LIST:VOLT?
SOUR:LIST:DWEL?
TRIG:COUN?
TRIG:DEL?
!=========2.日志文件前置校验=========
DLOG:MEDIA?
DLOG:DEST?
DLOG:FILE:TIMESTAMP?
DLOG:PER?
!=========3.读取日志并解析循环电压关系=========
DLOG:FILE:CAT?
DLOG:FILE:INFO?"log.csv"
DLOG:FILE:DATA?"log.csv"
!=========4.实时运行状态查询=========
STAT:TRIG:COUN?
SOUR:LIST:CURR:STEP?
MEAS:VOLT?
五、关键限制与误区
LIST 配置固定时,每轮电压序列完全相同 仪器原生不支持 “第 1 轮 12V、第 2 轮 13V” 自动梯度;梯度变化必须上位机每轮重写SOUR:LIST:VOLT数组。
无内置 SCPI 指令直接返回 循环号=X,电压=Y 映射表,必须上位机时序计算匹配。
无时间戳的 DLOG 日志(Timestamp=0)只能靠DLOG:PER理论时长拆分循环,精度差;务必开启DLOG:FILE:TIMESTAMP 1.
ELOG 事件日志只存故障事件,不带完整电压时序,不能用来拆分循环电压。
N6705A 老机型无 DLOG 文件元数据,仅能依赖实时 LIST 配置查询。
六、上位机数据输出示例映射表
表格