首先要感謝寫pyvisa庫的大哥們,解決了我的大問題。
實驗室到了一個IV測試的設備,是keithley 237,性能看起來不錯。電流最低可以測到10fA,電壓最高可以到1100V。反正各種功能強大。唯一的不足就是操作起來很麻煩。它長得是這樣的:
完全不方便測試,而且數據也沒辦法保存。因此我們需要用電腦去控制。老師給我提供的思路是用labview+NIvisa+keithleyvisa的方法。奈何上課學到的labview知識早就忘完了。按照那邊的工程師指揮+自己百度查資料。弄了很久終於可以和設備通信了,但是我感覺配置起來很麻煩,而且labview編程我也不熟悉,這個思路很依賴各種軟件驅動的版本,可移植性不好。
於是乎,我選擇了python的pyvisa庫(花了很長時間才找到的解決方案)。
具體實現步驟是:使用GPIB轉USB線連接電腦和設備(淘寶上有,我買的安捷倫的82357,花了450大洋)。接上后電腦會自動安裝驅動,很方便。百度下載一個NIvisa軟件,它是NI公司提供的一個編程接口,可以通過這個接口與各種不同通信協議的一起通信。然后就是pip install pyvisa。很快就搭建好了環境,比老師提供的方案方便很多。
450元的轉接線
接下來就是簡單的編程了
import pyvisa as visa visa.log_to_screen() rm = visa.ResourceManager() print(rm.list_resources()) my_ins = rm.open_resource('GPIB0::16::INSTR') my_ins.write(‘J0X’)
log_to_screen方法可以顯示通信日志,方便調試
list_resources()方法可以列出所有和電腦連接的設備,然后打開你需要的那個就可以了。最后就是write()和read()方法和設備進行通信了。代碼里的‘J0X’是我用的設備手冊里提供的復位指令,不同設備時不一樣的。具體怎么操作設備就要參考手冊了。