PyVISA 缺少方法
我现在在用Win 7 x64系统,安装了NI 488.2、PyVISA 1.5,还有python和numpy/scipy/ipython。我想通过GPIB-USB连接来联系一个Keithley仪器,并发送一些简单的指令。但是,当我尝试创建仪器对象时,发现PyVISA的资源管理器缺少一些必要的方法,这些方法本来应该用来查找、读取和写入仪器。
根据PyVISA页面上的示例代码,我现在的代码是:
import visa
rm = visa.ResourceManager
my_instrument = rm.get_instrument('GPIB::3')
但是它返回了一个错误,提示get_instrument这个方法不存在。使用自动补全功能查看资源管理器rm可以发现,它几乎缺少所有应该有的方法,只剩下rm.init、rm.close和几个其他的方法。这些方法要么没什么作用,要么返回一个4099L的错误。尝试直接调用rm本身,只会打印出字符串'ResourceManager()'。
经过进一步检查,我发现visa.VisaLibrary()根本找不到,这说明可能是安装出了问题。不过,我重新下载并安装了整个包(用pip),但缺少文件的问题还是没有解决。visa模块本身加载得很好,只是缺少大部分重要的文件。我是在安装过程中搞错了什么,还是说还有其他问题呢?
2 个回答
0
根据以前的经验,你可能需要告诉pyvisa去哪里找visa库,比如说可以参考这个链接:NI VISA + pyVisa在Mac OS X (Snow Leopard)上的使用。不过,我还没用过1.5这个版本。
如果这样不行的话,1.4版本在Win 7 64位系统上运行得很好。
0
结果发现,答案其实很简单,就是从另一个地方下载这个软件包。显然,我用的网站上提供的包有问题,要么是损坏了,要么是不完整。