2022年4月2日 星期六

PyVISA:一種能夠連接並控制GPIB界面的Python package

GPIB是一種連接測量儀器的界面,又稱為IEEE 488,通常用此界面對儀器下達SCPI指令。

PyVISA是一種能夠連接並控制GPIB界面的Python package,只要安裝了這個Package,即可利用Python對儀器下SCPI指令。

要使用PyVISA,首先應至NI的網站下載NI-VISA

https://www.ni.com/zh-tw/support/downloads/drivers/download.ni-visa.html

註:雖然PyVISA的網站指出也支援Keysight的VISA ,但我的經驗是Keysight的VISA容易有bug。除此之外,如果電腦同時安裝NI與Keysight的VISA,可能會衝突而產生bug。

接下來於Python中下以下指令來安裝PyVISA

pip install -U pyvisa
接下來即可用Python連接儀器
以下是一個簡單的程式,顯示目前有連接電腦的儀器的GPIB Address
import pyvisa
rm = pyvisa.ResourceManager()
print('GPIB Address is {}'.format(rm.list_resources())) #顯示已連接的GPIB Address
 
假設該程式顯示的GPIB Address是GPIB0::10::INSTR,可於程式中再增加以下程式碼
power = rm.open_resource('GPIB0::10::INSTR')  # connect to this GPIB address
print(power.query('*IDN?')) # query代表先write後read
power代表該GPIB Address連接的儀器
第二行是對程式下一個*IDN?的指令,然後再print出來。大多數的儀器會顯示該儀器的型號或版本。