资讯中心

联系我们

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

如何通过SCPI命令查询Agilent双向直流电源输出记忆触发条件命中后,是否支持多次触发?

2026-06-08 09:59:14  点击:

  N6705C+N6781A 的输出记忆(MEM)触发,本身没有 “多次触发 / 重复触发” 的专用 SCPI 命令,但可以通过「触发模式」+「状态查询」间接判断是否支持多次触发。

  下面分三部分讲:命令、返回含义、如何判断 “能否多次触发”。

  一、核心 SCPI:查询输出记忆触发模式(含单次 / 重复)

  1. 选通道(双向通道一般是 OUT1)

  scpi

  :INSTrument:SELect OUTPut1

  2. 查询触发 “模式 / 类型”(关键)

  scpi

  :OUTPut:MEMory:TRIGger:TYPE?

  返回值与含义(直接关系到是否能多次触发)

  表格

  

  简单记: EXT / BUS / AUTO → 支持多次触发;IMM → 不支持。

  二、查询 “记忆触发是否已启用”

  scpi

  :OUTPut:MEMory:STATe?

  返回 ON:记忆触发功能打开

  返回 OFF:关闭(自然谈不上多次触发)

  三、查询 “触发后是否自动 rearme(自动准备下次触发)”

  虽然没有 :REPeat?,但AUTO/EXT/BUS 模式默认就是自动重触发,只要:

  记忆保持时间(:OUTP:MEM:DWELL)结束

  输出回到正常值

  条件再次满足 → 再次触发

  你可以用下面两条命令组合判断 “当前是否处于可再次触发状态”:

  查是否正在触发动作中:

  scpi

  :OUTPut:MEMory:ACTive?

  1:正在执行记忆输出(保持时间内)

  0:已恢复正常,可以再次触发

  查最近一次触发次数(间接):

  scpi

  :ELOG:COUNt?

  事件日志计数,如果不断增加 → 确实在多次触发

  四、完整查询脚本(Python+VISA,直接可用)

  python

  运行

  import pyvisa

  rm = pyvisa.ResourceManager()

  inst = rm.open_resource('TCPIP0::192.168.1.100::inst0::INSTR')

  # 1. 选双向通道

  inst.write(':INST:SEL OUT1')

  # 2. 查询记忆触发状态

  state = inst.query(':OUTP:MEM:STAT?').strip()

  print("记忆触发状态:", state)

  # 3. 查询触发类型(关键:判断是否支持多次触发)

  trig_type = inst.query(':OUTP:MEM:TRIG:TYPE?').strip()

  print("触发类型:", trig_type)

  # 4. 查询是否正在触发动作中

  active = inst.query(':OUTP:MEM:ACT?').strip()

  print("是否正在触发动作中:", active)

  # 5. 解读:是否支持多次触发

  if trig_type in ('EXT', 'BUS', 'AUTO'):

  print("✅ 支持多次触发(条件/信号可反复触发)")

  else:

  print("❌ 不支持多次触发(仅立即触发)")

  inst.close()

  五、一句话总结(便于你写测试逻辑)

  用 :OUTP:MEM:TRIG:TYPE? 查类型:EXT/BUS/AUTO → 支持多次触发;IMM → 不支持。

  用 :OUTP:MEM:ACT? 看是否空闲:返回 0 → 可以再次触发。