PyVISA教程-用Python控制仪器【8:常见问题】
PyVISA是由国家仪器公司(National Instruments)开发或背书的么?不是,PyVISA的开发独立于国家仪器公司,是一个VISA库的容器(对VISA库的Python封装)。PyVISA是由谁开发的?PyVISA起初是由Torsten Bronger和Gregor Thalhammer开发的,并且基于了Thalhammer的前期经验。2012.03--2013.08由F...
- PyVISA是由国家仪器公司(National Instruments)开发或背书的么?
不是,PyVISA的开发独立于国家仪器公司,是一个VISA库的容器(对VISA库的Python封装)。 - PyVISA是由谁开发的?
PyVISA起初是由Torsten Bronger和Gregor Thalhammer开发的,并且基于了Thalhammer的前期经验。2012.03--2013.08由Florian Bauer维护。2013.08--2017.12由Hernan E. Grecco<hernan.grecco@gmail.com>维护。最近由Matthieu Dartiailh<m.dartiailh@gmail.com>维护。
详见authors。 - PyVISA是线程安全的么?
是的,从版本1.6开始PyVISA是线程安全的。 -
程序中有错误,该如何调试?
PyVISA提供了所有操作的有用log。在代码中添加如下命令,再次运行:import
visa
visa.log_to_screen()
-
发现bug,如何提交?
请在Issue Tracker页面提交bug,请提供操作系统,python版本和库版本等信息。另外,需要一些visa支持信息,该信息可以通过以下命令获得。python
-
m visa info
- Error:Image not found
当提供了错误的VISA库目录的时候,出现该错误。请检查提供给constructor或者设置文件里的目录信息。 -
Error:Could not found VISA library
如果没有提供VISA库路径,进而PyVISA找不到VISA库的时候出现该错误。通过提供给VisaLibrary或者ResourceManager结构库目录解决该问题。>>> visalib
=
VisaLibrary(
'/path/to/library'
)
或者
>>> rm
=
ResourceManager(
'Path to library'
)
或者创建设置文件。
-
Error:No matching architecture
该错误出现在当Python结构和VISA结构不匹配时。PyVISA将尝试用外部函数解析错误以提供更多有效信息。如果尝试失败,将显示原始信息。
在Mac OS X中,初始错误信息如下:
OSError: dlopen(/Library/Frameworks/visa.framework/visa, 6): no suitable image found.
Did find: /Library/Frameworks/visa.framework/visa: no matching architecture in universal wrapper
/Library/Frameworks/visa.framework/visa: no matching architecture in universal wrapper
在linux中,初始错误信息如下:
OSError: Could not open VISA library:
Error while accessing /usr/local/vxipnp/linux/bin/libvisa.so.7:/usr/local/vxipnp/
linux/bin/libvisa.so.7: wrong ELF class: ELFCLASS32
首先,通过下面命令检查安装情况。
python
-
m visa info
将获得Python解释器的位数信息和PyVISA检测到的VISA库类别。
解决方法是:
1. 安装并使用与Python相同位数的VISA库。
从国家仪器的VISA页面下载并安装VISA库。再次运行调试命令,检查新的库是否被PyVISA识别。如果没有,创建配置文件。
如果没有响应的VISA库,尝试方法2.
2. 安装并使用与VISA库相同位数的Python解释器。
在Windows和Linux下,下载对应的Python。用新Python再次运行脚本。
在Mac OS X下,Python一般同时安装了32位和64位版本。
可以这样运行32位Python:arch
-
i386 python myscript.py
或者这样运行64位Python:arch
-
x86_64 python myscript.py
也可以在.bashrc或.profile 或~/.bash_profile文件中添加一行,以创建一个别名:alias python32=“arch -i386 python”。
- 如何获取VISA的更多信息?
初始VISA文档:
- VISA定义
- VISA库定义
- 对于文本编程语言的VISA库定义
国家仪器公司提供的VISA操作手册:- NI-VISA用户手册
- NI-VISA程序员参考手册
- NI-VISA帮助文件
更多推荐
所有评论(0)