1

我正在使用 PyVISA 访问我的 Keithley 2701 DMM 上的通道,我在通道 102 和 103 上有 TC。当使用“READ?” 我只从我的一个渠道而不是两个渠道获取价值:波纹管是我的代码:

from pyvisa.vpp43 import visa_library
visa_library.load_library("/Library/Frameworks/Visa.framework/VISA")
import visa
import time

keithley = visa.instrument("ASRL1")
keithley.write('*RST')
print keithley.ask('*IDN?')

keithley.write('TRAC:CLE')
keithley.write("INIT:CONT OFF")
keithley.write("TRIG:sour IMM")

keithley.write("SENSE:FUNC 'TEMP', (@102)")
keithley.write("TEMP:TRAN TC, (@102)")
keithley.write("TEMP:TC:TYPE K, (@102)")
keithley.write("TEMP:RJUN:RSEL INT, (@102)")

keithley.write("SENSE:FUNC 'TEMP', (@103)")
keithley.write("TEMP:TRAN TC, (@103)")
keithley.write("TEMP:TC:TYPE K, (@103)")
keithley.write("TEMP:RJUN:RSEL INT, (@103)")

keithley.write('TRAC:CLE')
keithley.write("INIT:CONT OFF")
keithley.write("TRIG:sour IMM")

keithley.write("TRIG:COUN INF")
keithley.write("ROUT:SCAN (@102,103)")
keithley.write("ROUT:SCAN:TSO IMM")
keithley.write("ROUT:SCAN:LSEL INT")

print keithley.ask("READ?")

我的结果是:+2.24654121E+01 C,+61.898106SECS,+00239RDNG#

这对我的一个频道来说是正确的,但我想看看这两个频道的结果......任何帮助都将不胜感激。

4

2 回答 2

1

我不确定READ?应该如何使用多个频道。我认为有两种可能性:

print keithley.ask("READ?")
print keithley.ask("READ?")

或者可能:

keithley.write("READ?")
print keithley.read()
print keithley.read()
于 2012-12-25T01:06:08.347 回答
0

来自 1999 SCPI 命令参考第 3.3 段

READ[:<function>]? <parameters>[,<source list>]

我以前没用过,但我想你必须指定一个<source list>

所以要读取通道 1、3、4、5 和 9,你会写

print keithley.ask("READ? (@1,3:5,9)")
于 2013-03-21T15:04:51.200 回答