
PyVISA快速入门3步控制测量仪器【免费下载链接】pyvisaA Python package with bindings to the Virtual Instrument Software Architecture VISA library, in order to control measurement devices and test equipment via GPIB, RS232, or USB.项目地址: https://gitcode.com/gh_mirrors/py/pyvisa实验室里用 Python 控制仪器的通信配置常常让人头疼。PyVISA 把 VISA 库一套跨厂商的仪器通信标准封装成 Python 接口让你几行代码就能向 GPIB、串口、USB 仪器发命令、读数据不用关心底层总线差异。PyVISA 是什么能解决什么问题PyVISA 是一个 Python 包它为使用 GPIB、RS232 串口、USB、TCP/IP 等总线连接测量仪器的开发者提供统一的消息收发接口。一套write/read/query接口覆盖所有总线换仪器不用重写通信代码后端可插拔搭配厂商提供的 NI-VISA 库或纯 Python 实现的 pyvisa-py一条 pip 命令装好自带pyvisa-shell命令行工具不用写代码就能和仪器对话做调试PyVISA 安装与验证步骤安装分两步先装 PyVISA再装一个后端PyVISA 本身只是前端真正干活的 VISA 库要单独提供。pip install pyvisa pip install pyvisa-py如果你已有 NI-VISA 或 Keysight IO Library装第一个就够了。装完后用一个交互式入口验证安装是否正常pyvisa-shell出现(visa)提示符即成功输入list可列出本机已连接的仪器exit退出。第一个程序列出仪器并查询 *IDN?ResourceManager是 PyVISA 的入口对象负责发现并打开仪器资源import pyvisa rm pyvisa.ResourceManager() print(rm.list_resources()) inst rm.open_resource(GPIB0::14::INSTR) print(inst.query(*IDN?)) inst.close()list_resources()返回资源名元组如(GPIB0::14::INSTR, ASRL1::INSTR)open_resource()按资源名打开设备并自动返回对应的仪器类型对象query()等于先 write 再 read。*IDN?是 SCPI 标准识别查询返回型号, 序列号, ...一行的身份信息。实战从 GPIB 仪器读取电压以从 GPIB 仪表读取一次电压测量值为例完整流程如下import pyvisa rm pyvisa.ResourceManager() inst rm.open_resource(GPIB0::12::INSTR) inst.timeout 1000 inst.read_termination \n value float(inst.query(MEASURE:VOLT?)) print(f电压: {value} V) inst.close()操作结果inst.query(MEASURE:VOLT?)发出测量命令并等待回复float()把字符串读数转成数值最终打印出形如电压: 3.312 V的结果。之后把这条语句放进循环或回调里就是一个完整的电压采集程序。注意两个属性timeout是等待仪器回复的超时时间毫秒read_termination告诉 PyVISA 仪器回复以哪个字符结尾多数仪器的值在手册IO/通信章节里能找到常见为\n或\r。PyVISA 常见报错与避坑现象query抛出VisaIOError: Timeout reading from instrument。原因没设置read_terminationPyVISA 不知道仪器什么时候说完话一直等到超时。做法查仪器手册设置inst.read_termination \n必要时一并设置write_termination。现象ResourceManager()创建时报OSError提示找不到 VISA 库。原因既没装 NI-VISA 也没装 pyvisa-py或库路径不在默认搜索范围。做法先装pyvisa-py兜底否则把库文件路径显式传给构造函数如pyvisa.ResourceManager(path/to/visa64.dll)并用pyvisa-info命令排查环境。现象加载库时报位数不兼容。原因64 位 Python 无法加载 32 位的 VISA 库反之亦然。做法让 Python 与 VISA 库位数一致先装 VISA 库再选匹配的 Python 版本。延伸阅读官方文档含资源名规范、异步操作、事件处理docs/source/常见安装问题 FAQdocs/source/faq/faq.rstResourceManager 与后端选择逻辑源码pyvisa/highlevel.py资源类型与属性定义pyvisa/resources.py该文件在pyvisa/包内命令行调试工具实现pyvisa/cmd_line_tools.py如需从源码阅读或构建git clone https://gitcode.com/gh_mirrors/py/pyvisa【免费下载链接】pyvisaA Python package with bindings to the Virtual Instrument Software Architecture VISA library, in order to control measurement devices and test equipment via GPIB, RS232, or USB.项目地址: https://gitcode.com/gh_mirrors/py/pyvisa创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考