gpt4 book ai didi

python - 无法使用 Python 和 PyVisa 连接到特定的以太网端口

转载 作者:太空狗 更新时间:2023-10-30 02:05:27 25 4
gpt4 key购买 nike

我正在尝试使用 Python 中的 pyVisa 通过以太网连接连接到温度室。该设备只允许通过端口 2049 进行连接。我可以通过 PuTTY 连接到它。或 HyperTerminal ,但是当我在 Python 中尝试这个命令时

import visa
chamber = visa.instrument("TCPIP::10.2.17.130::2049")

我收到这个错误:

VI_ERROR_RSRC_NFOUND: Insufficient location information or the requested device or resource is not present in the system

我知道该设备在那里,因为我可以在 PuTTY 中通过它进行通信,但我似乎无法让 Python 代码工作。有什么提示吗? pyvisa是否使用SSH默认情况下?

最佳答案

访问VISA 资源 的最简单方法(恕我直言)仍然是使用VISA 设备检测,这将通过:

  • visa.ResourceManager().list_resources(),如果您使用的是 pyVisa
  • viFindRsrc()viFindNext() 如果您使用 visa32.dll 库。

现在默认情况下,LAN 连接不会使用任何一种方法检测。这给您留下了两个选择:

  • 如果您安装了 NI-MAX(National InstrumentsMeasurement & Automation Explorer免费下载),进入“设备和接口(interface)”,右键单击“网络设备”,选择“创建新的 VISA TCP/IP 资源...” 并按照说明进行操作。 NI-MAX 将自动检测您的仪器并提供其 VISA 资源名称。 请注意,现在此资源将由 list_resources()viFindRsrc()/viFindNext() 列出/li>
  • 否则,您必须向 VISA 提供正确的资源名称。如果您使用 VISA passport(例如力科示波器的 VICP),那么您应该适本地更改 VISA header(替换 TCPIPVICP)。然后,语法如下:[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: Insufficient location information or the requested device or resource is not present in the system

也可以通过 0xBFFF0011-1073807343 的返回值来识别。

关于python - 无法使用 Python 和 PyVisa 连接到特定的以太网端口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11521516/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com