3. VISA 和 VISA 工具

历史

以前,GPIB 是主要的物理通信接口,远程控制应用程序直接和 GPIB 硬件驱动程序通信。之后,RS232 串行接口被开发出来代替 GPIB,价格更为便宜。应用程序同样直接和 RS232 硬件驱动程序通信。

随着 LAN 接口成为计算机行业的标准接口,情况变得更加复杂。测试与测量仪器供应商意识到,LAN 接口有可能为仪器提供多样化连接选项。但是,为使用 LAN 连接的仪器提供第三种软件接口,会让测量应用程序更加不兼容。

为了统一软件接口,VXIplug&play 联盟制定了虚拟仪器软件架构 (VISA) 标准。目前,IVI 基金会负责维护 VISA。关于 LAN 接口,基于 TCP/IP 的协议被称为 VXI-11 协议。后续推出了改进版的高速 LAN 仪器协议,简称为 HiSLIP。之后,协议增加了对 USB 接口的支持。VISA 原生支持的 USB 类设备被称为 USB 测试与测量类 (USB-TMC)。

VISA 结构

下文介绍了重要的 VISA 功能:

访问和搜索功能:

  • VISA Open Default RM - 为所有 VISA 远程连接打开新的资源管理器。
  • VISA Find Resource/Find Next Resource - 根据给定标准查找仪器
  • VISA Open/Close - 打开和关闭与仪器的远程连接。
  • VISA Set/Get Attribute - 设置或读取会话属性。

输入/输出功能:

  • VISA Write - 将命令字符串写入仪器。
  • VISA Read - 读取仪器的响应字符串。
  • VISA Clear - 清空设备的输入和输出缓冲区。
  • VISA Read STB - 读取仪器的状态系统摘要字节(STatus 字节)。
CH3_Layers_16x9.png

上图显示了远程控制通信中的不同软件和硬件层。仪器在最底层,应用程序在顶层。得益于 VISA 层,不同的物理通信接口均可连通应用程序。但是有一个例外情况:Telnet 连接可以绕过 VISA,详情参阅*注释 1。

R&S VISA

不同供应商都可以实现 VISA,但必须遵守相同的 VISA 接口标准。下文将介绍罗德与施瓦茨和美国国家仪器 (NI) 开发的 VISA 和 VISA 工具。

和其他供应商提供的 VISA 工具相比,R&S VISA 具有以下优点:

  • 体积小 - 安装程序的大小约为 35 MB,部署后体积为 45 MB
  • 通过 mDNS 和 VXI-11 在网络中搜索仪器
  • 原生支持 R&S NRP-Zxx 功率探头(详情参阅*注释 5)。
  • 适用于 Windows、Linux 和 Mac OS

您可以通过以下网站下载 R&S VISA:

1DC02:R&S®VISA 说明

R&S®VISA 安装程序

Windows

下载适用于 Windows 的 R&S®VISA,即表示您同意遵守免版税软件条款和条件

MAC OS X

下载适用于 MAC OS X 的 R&S®VISA,即表示您同意遵守免版税软件条款和条件

Linux

下载适用于 Linux 的 R&S®VISA,即表示您同意遵守免版税软件条款和条件

VISA 测试仪工具

VISA 测试仪工具是现成的应用程序,能够连接仪器、发送 SCPI 命令和读取响应。这些工具能够独立验证与仪器的通信情况。

RsVisaTester 是罗德与施瓦茨开发的 VISA 测试仪工具。该工具的路径如下:

Windows Start 菜单 -> All Programs -> R&S VISA -> Tester 32bit/64bit

VISA 如何确定您想通过哪个接口连接哪台仪器呢?这些信息会被编码到“资源字符串”中,您可以将该字符串传输到 VISA Open 函数。如果您已知道相应的资源字符串,可以直接在 Resource 字段中输入该字符串。如若不然,您可以使用 Find Resource菜单。

以下介绍了一些常见的资源字符串:

  • TCPIP0::192.168.2.100::inst0::INSTR- 仪器通过 LAN(VXI-11 协议)连接,IP 地址为 192.168.2.100。如果有多个 LAN 适配器可用,“TCPIP0”标识 LAN 适配器索引。如果多个逻辑仪器使用相同的 IP 地址(例如 R&S CMW),“inst0”标识仪器。您可以省略该元素,使用短格式命令 TCPIP::192.168.2.100::INSTR
  • TCPIP0::192.168.2.100::hislip0- 仪器通过 LAN(HiSLIP 协议)连接,IP 地址为 192.168.2.100。和 VXI-11 协议类似,末尾的“0”标识仪器。详情参阅*注释 2。
  • TCPIP0::192.168.2.100::5025::SOCKET- 仪器通过 LAN (RawSocket) 连接,IP 地址为 192.168.2.100,端口为 5025
  • GPIB0::20::INSTR- 仪器通过 GPIB 接口连接,GPIB 地址为 20。如果有多个 GPIB 控制器接口卡可用,您需要使用“GPIB0”、“GPIB1”、“GPIB2”等加以区分。详情参阅*注释 3。
  • ASRL3::INSTR- 仪器通过串行接口 COM3 连接。
  • USB::0x0AAD::0x0119::022019943::INSTR- 仪器通过 USB 接口 (USB-TMC) 连接,供应商 ID 为 0xAAD,产品 ID 为 0x119,序列号为 022019943。
  • RSNRP::0x0095::104015::INSTR- 罗德与施瓦茨 NRP-Zxx,产品 ID 为 0x095 (NRP-Z86),序列号为 104015(详情参阅*注释 5)

确定正确的资源字符串之后,点击 Connect按钮,连接到仪器。在命令字段中输入 *IDN?\n字符串,然后点击 Write + ReadQuery按钮,这将自动组合读写操作。有关“\n”字符,参阅*注释 4。结果中将显示响应并返回识别字符串的仪器:

NI VISA 的 NI MAX 应用程序提供类似选项。在左侧的树形控件分支 Devices and Interfaces,您可以搜索仪器或添加新仪器。打开 VISA Test Panel后,连接建立。Input/Output选项卡提供和 RsVisaTester 类似的控件:

VISA 跟踪工具

VISA 的另一个优点在于能够跟踪和记录与仪器的完整通信。日志包含您通过 VISA 执行的所有操作信息,例如发送的所有命令、从仪器接收的所有消息、所有操作的时间戳和所有操作错误(如有)。您可以分析日志,了解错误信息、性能问题或可能发生的其他问题。如果您无法解决问题,可以将通信日志保存到文件,然后将该文件发送给同事或罗德与施瓦茨客户支持部门的专家。我们的仪器驱动程序插件支持 LabVIEW,能够导入 IO 跟踪数据并将其快速转换为 LabVIEW 代码(详情参阅 1MA228中介绍的第 2.1 条建议)。

罗德与施瓦茨的 VISA IO 跟踪工具被称为 RsVisaTraceTool。该工具的路径为:Windows Start 菜单 -> All Programs -> R&S VISA -> Trace Tool。同一路径下的 R&S VISA 手册详细描述了这个跟踪工具。下图显示了 RsVisaTraceTool 中记录的 *IDN? 查询命令:

NI VISA 跟踪工具被称为 NI IO Trace。该工具的路径为:Windows Start 菜单 -> All Programs -> National Instruments -> NI IO Trace。下图显示了 NI IO Trace 中记录的 *IDN? 查询通信命令,其中包含读取多个会话属性而得到的多个条目:

*注释 1 - Telnet 和 RawSocket 连接

如果 VISA 无法使用(通常是在 LINUX 或嵌入式系统中)或可能无法使用(例如航空航天和国防行业),罗德与施瓦茨仪器能够支持 Telnet(电传网络)协议。如果仪器支持通过 Telnet 协议进行远程控制,仍然可以使用 VISA 与该仪器通信。这种连接被称为 RawSocket。

*注释 2 - HiSLIP 协议

有关 HiSLIP 协议的详细说明,可参阅应用指南 1MA208:使用 HiSLIP 实现快速远程仪器控制,其中列明了支持 HiSLIP 协议的罗德与施瓦茨仪器。

*注释 3 - GPIB 接口和 R&S VISA

您必须使用同一供应商提供的 GPIB 控制器 (PCI/PCIe/USB-GPIB) 和 VISA。例如,如果您使用 NI GPIB 控制器,则必须使用 NI VISA。

*注释 4 - 终止符“\n”

“\n”是换行 (LF) 终止符,十六进制为 0x0A。该终止符表示消息终止。

使用 RawSocket 和串行连接时,在 VISA Write 操作中您必须始终使用换行符来终止字符串,这样仪器才能知道消息已终止。为了识别 VISA Read 操作的响应终止,您需要将 VISA 属性 VI_ATTR_TERMCHAR_EN设为“TRUE”,将 VI_ATTR_TERMCHAR设为“0x0A”。否则,即使 VISA Read 操作接收到正确的响应,也会由于预期接收到更多字节,从而以超时错误结束操作。

对于有些仪器而言,无论连接类型如何,都需要使用换行符。因此,在消息末尾加上换行符是最常见的做法,也可始终保证操作正常。

SCPI 标准规定,仪器必须使用换行符来终止响应。在上述示例中,NI VISA 测试面板上的识别字符串响应的末尾包含换行符。RsVisaTester 不显示空白字符,但您可以在 RsVisaTraceTool 日志中看到换行符。

*注释 5 - R&S NRP-Zxx 支持

5.11.0 版开始,适用于 Windows 的 R&S VISA开始支持先前版本的 R&S NRP-Zxx 功率探头。如要使用此功能,您需要安装适用于 Windows 的 R&S NRP Toolkit 4.17 或更新版。

资源字符串可以使用两种能够互换的不同格式:

  • RSNRP::0x0095::104015::INSTR- 罗德与施瓦茨 NRP-Zxx,产品 ID 为 0x095 (NRP-Z86),序列号为 104015
  • USB::0x0AAD::0x0095::104015::INSTR- 供应商 ID 为 0x0AAD(罗德与施瓦茨),产品 ID 为 0x095 (NRP-Z86),序列号为 104015

提示:如果您不知道功率探头的产品 ID,可以将其连接到计算机,然后使用 R&S VISA 测试仪工具的 Find Resource 功能。您可以从列表中选择所需的资源字符串。如果您连接了一个以上的功率探头,可以将产品 ID 和功率探头条形码上方标签中的序列号进行匹配。

请求信息

如果您有任何疑问或需要了解更多信息,请填写此表格,我们会尽快回复您。

推广许可

你的申请已提交,我们稍后会联系您。
An error is occurred, please try it again later.