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 和功率探头条形码上方标签中的序列号进行匹配。

请求信息

Do you have questions or need additional information? Simply fill out this form and we will get right back to you.
For service/support requests, please go here to log in or register.

推广许可

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