2012-10-18 68 views
1

我使用PyVISA訪問我的Keithley 2701 DMM上的通道,我在通道102和103上有TC。使用「READ?」時我只是從我的渠道之一不能同時得到的值:貝婁是我的代碼:PyVISA和Kethley 2701只能從一個通道獲得結果

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℃,+ 61.898106SECS,+ 00239RDNG#

哪對我的一個頻道來說是正確的,但我想看到兩者的結果...任何幫助將不勝感激。

回答

1

我不確定READ?應該如何處理多個通道。我認爲有幾個可能的原因:

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

或可能:

keithley.write("READ?") 
print keithley.read() 
print keithley.read() 
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)")