资讯中心

联系我们

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

如何通过SCPI指令配置双向直流电源的序列输出参数?

2026-01-15 09:48:13  点击:

通过SCPI指令配置双向直流电源的序列输出参数,需结合电源的序列编程功能(如PROGLISTADVA等命令族)。以下是详细步骤和示例指令,适用于大多数双向直流电源(如Keysight、Chroma、ITECH等品牌):


一、核心步骤

  1. 进入序列编程模式
    启用序列输出功能并选择通道(若电源支持多通道)。
  2. 配置序列参数
    设置步数、电压、电流、步进时间(上升/下降时间)、保持时间等。
  3. 启动序列输出
    触发序列开始执行。

二、详细指令及示例

1. 进入序列编程模式

scpiPROG:MODE LIST  // 选择列表模式(部分电源用LIST或SEQ)PROG:LIST:COUN 5  // 设置序列总步数为5(根据实际需求调整)

2. 配置每一步参数

关键参数

  • 电压(VOLT
  • 电流(CURR
  • 步进时间(RAMP,电压/电流变化时间)
  • 保持时间(DWEL,稳定后保持时间)

示例(配置第1步)

scpiPROG:LIST:VOLT 1, 10.0  // 第1步电压设为10.0VPROG:LIST:CURR 1, 1.0   // 第1步电流设为1.0A
PROG:LIST:RAMP 1, 50    // 第1步步进时间50ms
PROG:LIST:DWEL 1, 1000  // 第1步保持时间1000ms

配置第2步

scpiPROG:LIST:VOLT 2, 20.0  // 第2步电压20.0VPROG:LIST:CURR 2, 2.0   // 第2步电流2.0A
PROG:LIST:RAMP 2, 30    // 第2步步进时间30ms
PROG:LIST:DWEL 2, 500   // 第2步保持时间500ms

批量配置(部分电源支持)

scpiPROG:LIST:DATA "10.0,1.0,50,1000;20.0,2.0,30,500"  // 一次性设置多步(格式:VOLT,CURR,RAMP,DWEL)

3. 启动序列输出

scpiPROG:LIST:RUN  // 启动序列(部分电源用INIT或TRIG)

4. 停止序列输出

scpiPROG:LIST:ABOR  // 立即停止序列

三、完整配置示例(Python脚本)

pythonimport pyvisa# 连接电源rm = pyvisa.ResourceManager()source = rm.open_resource("TCPIP0::192.168.1.100::inst0::INSTR")# 配置序列参数steps = [    (10.0, 1.0, 50, 1000),   # 第1步:10V, 1A, 50ms步进, 1s保持    (20.0, 2.0, 30, 500),    # 第2步:20V, 2A, 30ms步进, 0.5s保持    (15.0, 1.5, 20, 800)     # 第3步:15V, 1.5A, 20ms步进, 0.8s保持]# 进入序列模式并设置步数source.write("PROG:MODE LIST")source.write(f"PROG:LIST:COUN {len(steps)}")# 配置每一步参数for i, (volt, curr, ramp, dwell) in enumerate(steps, start=1):    source.write(f"PROG:LIST:VOLT {i}, {volt}")    source.write(f"PROG:LIST:CURR {i}, {curr}")    source.write(f"PROG:LIST:RAMP {i}, {ramp}")    source.write(f"PROG:LIST:DWEL {i}, {dwell}")# 启动序列source.write("PROG:LIST:RUN")print("序列已启动,按任意键停止...")input()# 停止序列source.write("PROG:LIST:ABOR")source.close()

四、常见问题解决

  1. 指令报错(如-400 Query Error)
    • 检查电源是否支持当前指令(查阅编程手册)。
    • 确认序列模式已启用(如PROG:MODE LIST)。
    • 确保步数不超过电源最大限制(如PROG:LIST:COUN?查询最大步数)。
  2. 序列不执行
    • 检查输出是否被禁用(OUTP:STAT OFF)。
    • 确认触发源设置正确(如TRIG:SOUR BUS表示通过SCPI触发)。
    • 检查电流/电压是否超出电源范围(如VOLT:PROTCURR:PROT)。
  3. 步进时间不准确
    • 部分电源的步进时间分辨率有限(如最小10ms),需查阅手册确认。
    • 确保RAMPDWEL参数单位正确(通常为ms或s)。

五、高级功能(可选)

  1. 循环序列

    scpiPROG:LIST:LOOP 3  // 循环执行序列3次
  2. 外部触发

    scpiTRIG:SOUR EXT  // 设置触发源为外部信号TRIG:SLOP POS  // 上升沿触发
  3. 查询序列状态

    scpiPROG:LIST:STAT?  // 返回序列运行状态(如"RUNNING"或"IDLE")

六、厂商差异说明

  • Keysight(如N6700系列)
    使用
    LIST模式,指令类似上述示例。
  • Chroma(如62000P系列)
    可能使用
    SEQ模式,如SEQ:COUNSEQ:VOLT等。
  • ITECH(如IT6000系列)
    支持
    LISTPULSE模式,需通过LIST:STEP配置每一步。

建议:始终以电源的编程手册为准,不同型号可能存在指令差异。