我编写了一个数据采集程序/脚本,它与我们合作开发的设备一起工作。问题是我只能从此设备读取。无法写入,因此无法使用串行“?IDN*”命令知道这是什么设备。
唯一定义此设备的是它的“型号”,可以在 Windows 控制面板的“设备和打印机”中看到。下图显示了它:
设计该设备的人能够创建一个 labview 简单程序,该程序通过 NI-VISA 通过称为“Intf Inst Name”的东西从设备中提取此名称,该名称称为“接口信息:接口描述”。
如果我得到这个型号名称并将其与 pyvisa 设备名称进行比较,我将能够自动检测我们设备的存在,这是一件很重要的事情,以防发生 USB 断开连接。这是因为 VISA 通过一个在每台计算机上可能不同的名称打开设备,但这个名称“GPS DATA LOGGER”在任何地方和任何时候都是相同的。
我需要这个解决方案是跨平台的。这就是为什么我需要使用 pyvisa 或 pyserial。尽管任何跨平台替代方案都可以。
所以我的问题是:如何使用 pyvisa/pyserial 找到与设备型号对应的型号名称(在我的情况下为“GPS DATA LOGGER”)?
请询问您可能需要的任何其他信息。
更新
我了解到有一个名为“VI_ATTR_INTF_INST_NAME”的“属性”pyvisa 可以获得这个名称,但我不知道如何使用它。有谁知道如何阅读这些属性?