资讯中心

联系我们

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

如何通过SCPI指令设置双向直流电源输出电压序列的间隔时间?

2025-12-31 09:39:10  点击:

要通过SCPI指令设置双向直流电源输出电压序列的间隔时间,需使用PROG:LIST:VOLT:DATA#PROG:WAVE:VOLT:DATA#指令,结合时间参数(如保持时间或变化时间)和序列控制指令(如PROG:LIST:LOADPROG:WAVE:SEGM)实现。以下是具体方法:

一、基于LIST编程的电压序列间隔时间设置

  1. 指令格式
    • 设置电压及保持时间PROG:LIST:VOLT:DATA# <电压值>,<保持时间>
      其中#表示步骤序号(1~100),保持时间单位为100μs(例如50代表5ms)。
    • 示例
      • 设置第1步输出10V,保持100ms:
        scpiPROG:LIST:VOLT:DATA1 10.0,1000
      • 设置第2步输出20V,保持200ms:
        scpiPROG:LIST:VOLT:DATA2 20.0,2000
  2. 加载与启动序列
    • 加载预定义的序列数据:
      scpiPROG:LIST:LOAD 1  // 加载存储位置1的序列
    • 启动序列执行:
      scpiPROG:LIST:INIT    // 初始化序列*TRG              // 触发序列开始(或通过硬件触发)

二、基于WAVE编程的电压序列间隔时间设置

  1. 指令格式
    • 设置电压及变化时间PROG:WAVE:VOLT:DATA# <电压值>,<变化时间>
      其中变化时间单位为100μs(例如30代表3ms),表示电压从当前值变化到目标值所需时间。
    • 示例
      • 设置第1步从0V线性变化至10V,耗时5ms:
        scpiPROG:WAVE:VOLT:DATA1 10.0,50
      • 设置第2步从10V线性变化至20V,耗时10ms:
        scpiPROG:WAVE:VOLT:DATA2 20.0,100
  2. 配置序列参数
    • 设置总步数:
      scpiPROG:WAVE:SEGM 2  // 共2步
    • 设置循环次数(0表示无限循环):
      scpiPROG:WAVE:COUN 0  // 无限循环
    • 启动WAVE编程:
      scpiPROG:WAVE:INIT    // 初始化WAVE序列*TRG              // 触发序列开始

三、关键注意事项

  1. 时间单位与范围
    • LIST编程的保持时间和WAVE编程的变化时间均以100μs为单位,最大值需参考设备手册(通常为9999999,对应约1000秒)。
  2. 序列存储与调用
    • 使用PROG:LIST:STORPROG:WAVE:STOR将配置好的序列保存至设备非易失性存储器,便于后续直接调用。
  3. 同步触发
    • 通过PROG:LIST:TRIGPROG:WAVE:TRIG设置触发模式(如自动触发AUTO、外部触发EXT),确保序列与外部事件同步。
  4. 实时监控与调整
    • 查询当前序列状态(如当前步数、剩余时间):
      scpiPROG:LIST:STAT?  // LIST编程状态查询PROG:WAVE:STAT?  // WAVE编程状态查询
    • 动态修改序列参数(如调整后续步骤的电压或时间):
      scpiPROG:LIST:VOLT:DATA2 15.0,500  // 修改第2步电压为15V,保持时间50ms