2017-04-24 113 views
2

我正在使用pyVISA來控制GPIB網絡中的某些儀器。當我創建一個資源管理器時,我的GPIB網絡中的所有儀器都進入遠程模式,所以前面板顯示被鎖定並且不更新。當我關閉資源管理器時,儀器保持遠程模式。pyVISA:以編程方式將儀器返回本地模式

import visa 

rm = visa.ResourceManager() 

#Connect to a specific instrument 
MyInstrument = rm.open_resource('GPIB0::10::INSTR') 

#Do stuff 
print(MyInstrument.query("*IDN?")) 

#close resource manager 
rm.close() 

在這種特殊情況下,我只想要控制網絡中的一臺儀器,但需要別人來上電,帶前面板顯示實時視頻。

有沒有一種方法可以以編程方式從資源管理器中排除「額外」工具(如果我可以幫助,不需要手動斷開GPIB電纜或手動關閉GPIB通信)和/或類似於「可以發送到本地」命令,我可以將它發送到整個網絡或特定的儀器,因此,一旦根據需要配置了有問題的儀器,前面板就會處於活動狀態?

UPDATE:

一些實驗,並進一步讀出後,我發現下面返回我的儀器到本地模式:

#Return single instrument to local with 
#GTL command (VI_GPIB_REN_ADDRESS_GTL = 6) 
MyInstrument.control_ren(6) 

#Return all instruments in network to local by 
#deasserting remote enable line (VI_GPIB_REN_DEASSERT = 0) 
MyInstrument.control_ren(0) 

的值0和6個是常數在pyVISA設置(http://pyvisa.readthedocs.io/en/stable/_modules/pyvisa/constants.html) 似乎我應該能夠在這裏指定一個變量名稱,而不是常量,所以顯然還有一些我不瞭解的東西,但至少我現在有一個工作解決方案。

謝謝你的幫助,讓我走上正軌。

回答

2

有一個呼叫可用於控制設備的遠程/本地狀態。

GPIBInstrument.control_ren(mode) 

控制中的GPIB的狀態遠程啓用(REN)線路接口,和任選的設備的遠程/本地狀態。

對應於VISA庫的viGpibControlREN函數。

Source

2

大多數儀器都有遠程和本地命令。 Visa也有自己設定的本地命令,在c中看起來像viGpibControlREN(handle, VI_GPIB_REN_ADDRESS_GTL)。您必須閱讀設備的使用手冊,但他們的個人簽證命令通常類似於「SYST:LOC」。

相關問題