PyVisa是用來控制各種各樣的測量儀器的Python包,通過諸如GPIB、RS232、USB、Ethernet等接口。通過GPIB(GPIB number:12)讀取Keithley萬用表ID信息的Python代碼清單如下:
|
它可以自由的運行在Windows,Linux和Mac上,適用於不同儀器廠家(如National Instruments,Agilent,Tektronix,Standard Research Systems)的儀器。
安裝
PyVisa是VSIA庫的一種前端實現,可運行在Python 2.7或Python 3.4以上版本。可以通過pip命令安裝(http://www.pip-installer.org/)。
|
後臺
爲了PyVisa可靠工作,需要一兼容的後臺。PyVisa包含了封裝NI-Visa庫(http://ni.com/visa/)的後端。因此,需要下載安裝NI-Visa(見NI-Visa安裝)。有來自不同公司或組織的不同Visa實現,PyVisa只支持NI-Visa(http://ni.com/visa/)。
提示
PyVisa有32-和64-bit版本,分別適用於Python的32-或64-bit版本,無需更多設置。32-bit版本VISA庫不能運行在64-bit的Python上,同理64-bit版本的VISA庫也不能運行在32-bit的Python上。需要確認Python和VISA庫具有相同的位數。
可以按照Python實現的VISA規範庫PyVISA-Py(http://pyvisa-py.readthedocs.io/en/latest/)。可以通過pip命令安裝(http://www.pip-installer.org/)。
|
提示
目前,PyVISA-Py僅實現了VISA標準的部分功能,不能全部支持所有總線的所有協議。請參考文檔獲得更多詳細信息。
驗證安裝
OK!可以打開Python,創建ResourceManager驗證安裝:
|
如果遇到問題,請參閱常見問題章節,找到解決問題的方法和調試技術。如果還有問題,請在Github上反饋問題(https://github.com/pyvisa/pyvisa/issues)。
使用開發板
可以從Github下載,並安裝最新的開發版本(https://github.com/pyvisa/pyvisa)。
|
提示
如果有老版本的Python,並且想保留,可以試試Anaconda CE(https://store.continuum.io/cshop/anaconda)。Anaconda CE是Continuum Analytics出品的開源Python發行版,包含許多第三方科學運算庫。
設置後臺
現在有兩種後臺可用:一個是採用NI庫的PyVisa,另一個是pyvisa-py提供的後臺,其中後者採用python實現。pyvisa默認採用NI後臺,如果失敗則選用pyvisa-py後臺。
可以設置Resource Manager的參數進行選擇,下面爲選擇pyvisa-py的代碼:
|
也可以通過設置變量PYVISA_LIBRARY進行選擇,跟上述方法效果相同。
設置NI後臺
提示
NI後臺,需要首先安裝NI-VISA庫,詳見NI-VISA安裝章節。
多數情況下,PyVisa可以找到visa共享庫的路徑,如果想採用其他的路徑,需要通過pyvisa.highlevel.ResourceManager設置庫路徑。
|
可以修改主目錄下(http://en.wikipedia.org/wiki/Home_directory)的設置文件.pyvisarc(注意開頭的點),使所有的PyVisa應用使用該路徑。
Windows NT |
|
Windows 2000, XP and 2003 |
|
Windows Vista, 7 or 8 |
|
Mac OS X |
|
Linux |
|
例如在Windows XP中,定位到用戶目錄”Documents and Settings“,如”C:\Documents and Settings\smith\.pyvisarc“(smith是登錄名)。
該文件的格式跟ini文件一致,如果庫文件在”/usr/lib/libvisa.so.7
“,文件.pyvisarc需要包含:
|
注意,[Paths]是大小寫敏感的。
也可以定義站點範圍的設置,/usr/share/pyvisa/.pyvisarc(也可能在/usr/local/...,取決於python的安裝位置
)。在Windows下,一般存在於c:\Python27\share\pyvisa\.pyvisarc。
如果遇到問題,請參閱常見問題章節,找到解決問題的方法和調試技術。如果還有問題,請在Github上反饋問題(https://github.com/pyvisa/pyvisa/issues)。