访问VISA 资源的最简单方法(恕我直言)仍然是使用VISA 设备检测,该检测将通过:
visa.ResourceManager().list_resources()
, 如果你正在使用pyVisa
- 或者
viFindRsrc()
,viFindNext()
如果您使用该visa32.dll
库。
现在默认情况下,使用任何一种方法都不会检测到LAN连接。这让您有两个选择:
- 如果您已安装NI-MAX(National Instruments的Measurement & Automation Explorer可免费下载),请在“设备和接口”下,右键单击“网络设备”,选择“创建新的 VISA TCP/IP 资源”。 .'并按照说明进行操作。NI-MAX将自动检测您的仪器并提供其VISA资源名称。请注意,现在此资源将由和/
list_resources()
viFindRsrc()
viFindNext()
- 如果没有,您必须向VISA提供正确的资源名称。如果您使用VISA 护照(例如LeCroy 示波器的VICP),那么您应该适当地更改VISA 标头(将TCPIP替换为VICP)。然后,语法如下:[visa-header]::[instrument-ip]::INSTR或[visa-header]::[instrument-ip]::[instrument-port]::INSTR
实际上,它并不总是INSTR,具体取决于资源类(请参阅http://zone.ni.com/reference/en-XX/help/371361J-01/lvinstio/visa_resource_name_generic/)。
请务必将字节字符串发送到仪器(尤其是使用Python 3+时),否则您将收到以下错误:
VI_ERROR_RSRC_NFOUND:位置信息不足或系统中不存在请求的设备或资源
也可以通过0xBFFF0011
或 的返回值来识别-1073807343
。