资讯中心

联系我们

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

如何通过SCPI命令获取当前电源输出序列的时间间隔设置?

2026-01-12 09:42:53  点击:

要通过SCPI命令获取当前电源输出序列的时间间隔设置,需根据电源型号支持的SCPI命令集进行操作。不同厂商的电源设备可能使用不同的命令结构,但通常遵循以下通用逻辑:查询序列模式状态 → 获取时间间隔列表。以下是具体步骤和示例:


一、核心步骤

  1. 确认电源是否处于序列模式
    首先检查电源是否启用了列表(List)或序列(Sequence)输出模式,因为时间间隔设置通常仅在此模式下有效。

  2. 查询时间间隔参数
    使用对应的SCPI查询命令获取时间间隔列表(
    DWEL参数)或单个步骤的持续时间。

  3. 解析返回数据
    电源可能返回逗号分隔的字符串或数组,需按格式解析。


二、常见厂商的SCPI命令示例

1. Keysight/Agilent 电源(如N6700系列)

scpi*RST                            ; 复位设备(可选)SOUR:VOLT:MODE LIST             ; 确认序列模式已启用(若未启用需先设置)
SOUR:LIST:DWEL?                 ; 查询所有步骤的时间间隔列表

返回示例
+0.1,+0.5,+1.0,+0.2
(表示4个步骤的时间间隔分别为0.1s、0.5s、1.0s、0.2s)

2. ITECH 电源(如IT6000系列)

scpi*RSTSOUR:LIST:FUNC:VOLT             ; 确认电压序列模式(若需查询电流序列需改用`CURR`)
SOUR:LIST:DWEL?                 ; 查询时间间隔列表

返回示例
0.1,0.5,1.0,0.2
(格式与Keysight类似)

3. Chroma 电源(如62000P系列)

scpi*RSTSYST:REM                        ; 确保远程控制模式
LIST:VOLT:MODE ON               ; 启用序列模式(若未启用)
LIST:DWEL?                      ; 查询时间间隔

返回示例
LIST:DWEL 0.1,0.5,1.0,0.2
(部分设备可能返回带命令前缀的字符串)


三、通用查询流程(伪代码)

pythonimport pyvisa# 1. 连接电源rm = pyvisa.ResourceManager()power_supply = rm.open_resource('TCPIP0::192.168.1.100::inst0::INSTR')# 2. 查询时间间隔(以Keysight为例)power_supply.write('SOUR:VOLT:MODE LIST')  # 确保序列模式启用response = power_supply.query('SOUR:LIST:DWEL?')# 3. 解析返回数据intervals = [float(x) for x in response.strip('+').split(',')]print("时间间隔列表(秒):", intervals)# 4. 关闭连接power_supply.close()

四、注意事项

  1. 命令兼容性
    • 若电源不支持LIST:DWEL?,尝试查询类似命令(如SEQ:DWEL?TIME:STEP?)。
    • 参考设备手册的Programming GuideSCPI Command Reference章节。
  2. 单位确认
    • 返回的时间间隔单位通常为秒(s),但部分设备可能使用毫秒(ms)或分钟(min),需通过手册确认。
  3. 错误处理
    • 若返回错误(如-400),检查命令语法或电源状态:
      scpiSYST:ERR?  ; 查询错误代码
  4. 动态序列
    • 若电源正在运行序列,部分设备可能不允许查询参数。需先暂停输出:
      scpiOUTP OFF

五、扩展功能

  • 查询当前步骤索引
    部分电源支持查询当前正在执行的步骤编号:

    scpiLIST:STEP?  ; 返回当前步骤索引(从0或1开始)
  • 查询序列总长度
    获取序列的步骤总数:

    scpiLIST:VOLT:COUN?  ; 返回电压序列的步骤数

六、完整示例(Keysight N6700)

scpi*RSTSOUR:VOLT:MODE LIST             ; 启用序列模式
SOUR:LIST:VOLT 12,24,12,0      ; 设置电压序列(可选)
SOUR:LIST:DWEL 0.1,0.5,1.0,0.2 ; 设置时间间隔(可选)
SOUR:LIST:DWEL?                 ; 查询时间间隔

返回
+0.1,+0.5,+1.0,+0.2

通过解析此返回值,即可获取每个步骤的时间间隔设置。