资讯中心

联系我们

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

如何用SCPI指令设置双向直流电源输出电流序列的起始值?

2025-12-12 09:57:10  点击:

要使用SCPI指令设置双向直流电源输出电流序列的起始值,需结合序列模式(List Mode)的配置指令,通过定义序列点参数实现。以下是具体步骤和示例:

一、核心指令与参数

  1. 设置序列点数量
    plaintextSOURce:LIST:COUNt <N>
    • <N>为序列点总数(如3表示3个点)。
  2. 定义每个序列点的电流值与持续时间
    plaintextSOURce:LIST:CURRent:DATA<n> <I_n>, <T_n>
    • <n>为序列点序号(从1开始,如DATA1表示第1点)。
    • <I_n>为当前点的电流值(单位:A,如-10表示-10A)。
    • <T_n>为当前点的持续时间(单位:秒或电源支持的单位,如2表示2秒)。
    • 示例
      plaintextSOURce:LIST:CURRent:DATA1 -5, 2  // 第1点:-5A,持续2秒SOURce:LIST:CURRent:DATA2 0, 1   // 第2点:0A,持续1秒
  3. 启用序列模式
    plaintextSOURce:LIST:FUNCtion ON
    • 确保序列功能已激活。
  4. 禁用循环(如需随机访问或单次运行)
    plaintextSOURce:LIST:CYCLe OFF

二、完整操作流程示例

  1. 初始化与复位

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

    plaintextSOURce:LIST:COUNt 3                     // 3个序列点SOURce:LIST:CURRent:DATA1 -5, 2         // 第1点:-5A,2秒
    SOURce:LIST:CURRent:DATA2 0, 1          // 第2点:0A,1秒
    SOURce:LIST:CURRent:DATA3 10, 3         // 第3点:10A,3秒
  3. 启用序列模式

    plaintextSOURce:LIST:FUNCtion ON
  4. 启动输出

    plaintextOUTPut:STATe ON  // 开启输出,电源将按序列输出电流

三、厂商差异与指令扩展

  1. Keysight N6700系列
    • 使用SOURce:LIST:CURRent直接定义序列点:
      plaintextSOURce:LIST:CURRent -5, 0, 10  // 3个点的电流值(需结合时间参数)
    • 跳转到指定点(部分型号支持):
      plaintextSOURce:LIST:GOTO 2  // 跳转到第2点
  2. ITECH IT6000系列
    • 时间单位可能为100μs(需确认手册):
      plaintextLIST:CURR:DATA1 -5, 2000  // 2000=200ms
    • 跳转指令:
      plaintextLIST:JUMP:INDEx 2  // 跳转到第2点
  3. Chroma 62000P系列
    • 使用PROG:LIST:CURR:DATA定义序列点:
      plaintextPROG:LIST:CURR:DATA1 -5, 2  // 第1点:-5A,2秒

四、验证与调试

  1. 查询当前序列点索引

    plaintextSOURce:LIST:INDEx?
    • 返回当前执行的序列点序号(如1表示第1点)。
  2. 查询序列点参数

    plaintextSOURce:LIST:CURRent:DATA1?  // 查询第1点的电流值与时间
  3. 错误处理

    • 检查错误代码:
      plaintextSYSTem:ERRor?
    • 常见错误:
      • -400 Parameter Error:参数超出范围(如电流值超过电源规格)。
      • -107 No Sequence Active:序列未启用时查询状态。

五、自动化脚本示例(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 -5, 2")power.write("SOUR:LIST:CURR:DATA2 0, 1")power.write("SOUR:LIST:CURR:DATA3 10, 3")power.write("SOUR:LIST:FUNC ON")# 启动输出power.write("OUTP ON")# 查询当前点验证current_index = int(power.query("SOUR:LIST:INDEx?"))print(f"当前序列点: {current_index}")  # 应输出: 当前序列点: 1power.close()

六、关键注意事项

  1. 单位一致性:确保电流值与时间单位符合电源规格(如A/mA、秒/毫秒)。
  2. 序列点范围:跳转时索引不得超过SOURce:LIST:COUNt?返回的总点数。
  3. 保护功能:设置序列前确认电流值未触发过流保护(OCP)。
  4. 双向输出:若需负电流,直接在序列中设置负值(如-5A)。