资讯中心

联系我们

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

如何通过SCPI指令配置双向直流电源输出电流序列的触发模式?

2025-12-11 10:20:57  点击:

要通过SCPI指令配置双向直流电源输出电流序列的触发模式,需结合序列编程(List Mode)、触发源配置及输出控制指令,以下是具体实现步骤与指令示例:

一、核心指令与参数

  1. 序列模式配置
    • 设置序列点数:SOURce:LIST:COUNt <N>(N为序列点数量)。
    • 定义每个序列点的电流值与持续时间:
      plaintextSOURce:LIST:CURRent:DATA<X> <I>, <T>
      • <X>:序列点索引(如1, 2, 3)。
      • <I>:电流值(单位:A,如2A)。
      • <T>:持续时间(单位:秒或100μs,需参考设备手册)。
    • 示例(3个序列点):
      plaintextSOUR:LIST:COUN 3  
      SOUR:LIST:CURR:DATA1 0, 2  ; 第1点: 0A, 持续2秒  
      SOUR:LIST:CURR:DATA2 2, 2  ; 第2点: 2A, 持续2秒  
      SOUR:LIST:CURR:DATA3 4, 2  ; 第3点: 4A, 持续2秒
  2. 触发模式配置
    • 外部触发(TTL信号)
      plaintextTRIGger:SOURce EXTernal  ; 选择外部触发源  
      TRIGger:SLOPe POSitive   ; 上升沿触发(或NEGative下降沿)
    • 内部触发(软件触发)
      plaintextTRIGger:SOURce IMMediate  ; 内部触发(软件直接启动)
    • 延迟触发(可选)
      plaintextOUTPut:TRIGger:DELay <T>  ; 触发后延迟T秒输出(如0.5秒)
  3. 输出控制
    • 启用输出(等待触发):
      plaintextOUTPut:STATe ON
    • 启动序列(内部触发时):
      plaintextTRIGger:INITiate

二、完整操作流程示例

场景:通过外部TTL信号触发电流序列输出

  1. 初始化与复位

    plaintextSYSTem:REMote  ; 进入远程模式  
    *RST           ; 复位设备(可选)
  2. 配置电流序列

    plaintextSOUR:LIST:COUN 3  
    SOUR:LIST:CURR:DATA1 0, 2  
    SOUR:LIST:CURR:DATA2 2, 2  
    SOUR:LIST:CURR:DATA3 4, 2
  3. 设置触发模式

    plaintextTRIG:SOUR EXT  ; 外部触发  
    TRIG:SLOP POS  ; 上升沿触发  
    OUTP:STAT ON   ; 启用输出(等待触发)
  4. 外部触发信号

    • 将TTL高电平信号接入电源的Trigger In接口,电源在检测到上升沿后立即启动序列。
  5. 验证序列执行

    • 查询当前序列点索引:
      plaintextSOUR:LIST:INDEx?
    • 返回示例:
      • 初始状态:0(未触发)。
      • 触发后:1(第1点输出),随后依次变为23

三、厂商差异与指令扩展

  1. Keysight N6700系列
    • 跳转到指定序列点:
      plaintextSOUR:LIST:GOTO 3  ; 跳转到第3点(部分型号支持)
    • 启用循环:
      plaintextSOUR:LIST:FUNC REPeat
  2. ITECH IT6000系列
    • 时间单位可能为100μs:
      plaintextLIST:CURR:DATA1 0, 2000  ; 2000=200ms
    • 跳转指令:
      plaintextLIST:JUMP:INDEx 2  ; 跳转到第2点
  3. Chroma 62000P系列
    • 序列点配置:
      plaintextPROG:LIST:CURR:DATA1 0, 2  
      PROG:LIST:LOOP 3  ; 循环3次

四、关键注意事项

  1. 触发信号同步
    • 确保外部触发信号与序列起点对齐(如用方波信号的上升沿触发序列启动)。
    • 若需高精度同步,使用电源内置时间戳功能(如Keysight N6700系列的SYST:TIME:SYNC:EXT ON)。
  2. 序列点参数范围
    • 电流值不得超过电源规格(如最大电流100A)。
    • 持续时间需在电源支持范围内(如最小100μs)。
  3. 错误处理
    • 若指令执行失败,通过以下指令查询错误代码:
      plaintextSYSTem:ERRor?
    • 示例错误:502表示过压保护(OVP)触发。

五、Python脚本示例

pythonimport pyvisaimport timerm = pyvisa.ResourceManager()power = rm.open_resource("TCPIP0::192.168.1.100::inst0::INSTR")# 配置序列与触发power.write("SYST:REM")power.write("SOUR:LIST:COUN 3")power.write("SOUR:LIST:CURR:DATA1 0, 2")power.write("SOUR:LIST:CURR:DATA2 2, 2")power.write("SOUR:LIST:CURR:DATA3 4, 2")power.write("TRIG:SOUR EXT")  # 外部触发power.write("TRIG:SLOP POS")  # 上升沿触发power.write("OUTP ON")        # 启用输出# 模拟外部触发(实际需硬件信号)print("等待外部触发信号...")time.sleep(5)  # 模拟触发延迟# 查询序列执行状态for _ in range(3):    index = int(power.query("SOUR:LIST:INDEx?"))    print(f"当前序列点: {index}")  # 应依次输出1→2→3    time.sleep(2)  # 等待序列点切换power.close()

六、扩展应用

  • 双向电流输出:在序列中设置负值(如SOUR:LIST:CURR:DATA1 -2, 2)。
  • 多设备同步:通过主从模式同步多台电源的序列触发(如SYST:COMM:SYNC:ROLE MASTER)。
  • 动态调整序列:在序列执行前动态更新参数(如SOUR:LIST:CURR:DATA2 3, 2)。