3. 仪器接口与通信基础

在多仪器联动系统里,接口不是“插上线就能通”的物理细节,而是决定系统带宽、实时性、拓扑形态和软件复杂度的第一道工程约束。同一台数字万用表,用 RS-232 读 10 个读数/秒和用 LAN 读 1000 个读数/秒,能支撑的测试任务完全不同。理解接口,要同时看三层:电气层(电平、驱动方式、终端匹配、隔离)、协议层(帧格式、寻址、握手、命令语义)和系统层(拓扑、线缆长度、可挂设备数、驱动与软件栈)。选型就是在这三层之间做权衡。

一、五类接口的电气与协议特征

GPIB(IEEE-488)采用 8 位并行数据线加 8 根控制/握手线,共 24 线,TTL 负逻辑电平,总线型拓扑,一条总线最多挂 15 台设备,总缆长不超过 20 m,设备间距不超过 2 m。它使用三线握手(DAV/NRFD/NDAC)保证异步可靠传输,理论速率约 1 MB/s,实际常为 200~800 kB/s。GPIB 的核心优势是“命令与数据分离”的清晰协议和成熟稳定的多机寻址,至今仍是台式仪器程控的可靠选择。

RS-232 是点对点串行接口,使用 ±3~±15 V 电平(逻辑 1 为负),全双工,最少只需 TXD、RXD、GND 三线。它没有总线寻址能力,一台主机只能连一台设备,典型速率 9600~115200 bit/s,线缆建议不超过 15 m。其价值在于极简、低成本和广泛存在,适合低速、单台、配置类通信。

USB 是主从式串行总线,采用差分信号(D+/D−),支持热插拔和总线供电。USB 2.0 全速 12 Mbit/s、高速 480 Mbit/s,USB 3.x 可达 5 Gbit/s 以上。它通过集线器构成星型拓扑,最多 127 个地址。对仪器而言,USB-TMC(USBTMC)把 GPIB 的 488.2 命令语义映射到 USB 端点,使 SCPI 命令可原样使用,是当前中低端仪器最主流的接口。

LAN(以太网)使用差分双绞线,100BASE-TX 为 100 Mbit/s,1000BASE-T 为 1 Gbit/s,交换式星型拓扑,单段 100 m。仪器侧普遍支持 VXI-11、HiSLIP 或原始 socket 三种协议承载 SCPI。LAN 的优势是距离远、带宽高、天然支持多主机与远程访问,缺点是协议栈复杂、确定性受网络负载影响。

VXI/PXI 属于模块化仪器总线。VXI 基于 VME 背板,扩展了触发和模拟总线,机箱内模块共享背板时钟与触发线,确定性极强;PXI 基于 CompactPCI,加入 10 MHz 参考时钟、星型触发和 PXI 触发总线,并衍生出 PXIe(PCI Express 串行背板),单槽带宽可达数 GB/s。二者都把“仪器”变成插卡,用背板替代线缆,适合高通道数、高同步要求的场景。

五类仪器接口的电气—协议—系统三层对照 接口 电气层 协议层 系统层(拓扑/距离/设备数) GPIB IEEE-488 24线并行,TTL负逻辑 三线异步握手 约1 MB/s 488.1/488.2 + SCPI 主从寻址,命令/数据分离 服务请求SRQ 总线型,≤15台,总长≤20 m 设备间距≤2 m,需终端匹配 确定性好,线缆成本高 RS-232 EIA-232 ±3~±15 V,负逻辑 全双工,最少3线 9600~115200 bit/s 异步起止帧,无寻址 字符级协议 常承载SCPI文本 点对点,1台设备 建议≤15 m 简单、低成本、低速 USB USB 2.0/3.x 差分D+/D−,热插拔 总线供电,5 V/500 mA 12 M/480 M/5 Gbit/s USBTMC 承载 488.2 端点/管道模型 VISA 统一访问 星型,经集线器≤127地址 单段≤5 m,可级联 即插即用,成本低 LAN 以太网 差分双绞线,变压器隔离 100 M/1 Gbit/s 单段≤100 m TCP/IP + VXI-11/HiSLIP 或原始 socket SCPI over TCP 交换式星型,多主机 距离远,可远程访问 确定性受网络负载影响 VXI / PXI 模块化背板 背板并行/串行总线 10 MHz参考时钟 PXIe单槽数GB/s VISA + 寄存器/消息 星型/背板触发 硬件级同步 机箱内插卡,无外部线缆 通道数高,同步精度高 成本高,扩展受槽位限制

二、协议层次:从物理电平到 SCPI 命令

把接口按层次拆开,能看清“换接口不换命令”的原因。最底层是物理/电气层:GPIB 的 TTL 负逻辑、RS-232 的 ±12 V、USB 的差分、LAN 的隔离变压器、PXI 的背板差分对,各自定义电压、阻抗和终端。往上是链路/传输层:GPIB 用三线握手,RS-232 用起止位,USB 用事务与端点,LAN 用 TCP 重传,PXIe 用 PCIe 事务层。再往上是消息层:488.2 定义了通用命令(*IDN?、*RST、*OPC?)和状态模型,SCPI 在其上定义仪器专属命令树。最上层是应用/驱动层:VISA 用统一资源字符串屏蔽差异,例如 GPIB0::12::INSTR、USB0::0x2A8D::0x0101::MY12345678::INSTR、TCPIP0::192.168.1.50::inst0::INSTR。同一段 *IDN? 代码,换资源字符串即可换接口,这正是分层的价值。

三、选型依据:用需求反推接口

选型不应从“哪个接口新”出发,而应从四个问题出发:要传多少数据、要多快、要多同步、要多远。

  • 低速单台配置类(如电源设定、万用表慢速读数):RS-232 或 USB 足够,优先 USB 以获得即插即用。
  • 中速多台台式仪器(如多台万用表、示波器轮询):GPIB 或 LAN。GPIB 确定性好、协议成熟;LAN 距离远、可多主机。
  • 高速大数据量(如示波器波形、频谱数据):优先 LAN 或 USB 3.x,GPIB 会成为瓶颈。
  • 高通道数、强同步(如多通道同步采集、相参测试):选 PXI/PXIe 或 VXI,用背板时钟和触发线保证通道间确定性。

一个常见的工程判断是:当单次传输数据量超过约 1 MB 且要求秒级完成时,GPIB 基本不可行;当通道间同步误差要求小于 1 μs 时,线缆型接口(GPIB/USB/LAN)难以保证,应转向 PXI 背板触发。

四、实操示例:同一台仪器的三种连接与验证

以一台支持 GPIB、USB、LAN 的台式数字万用表为例,假设其 LAN 地址为 192.168.1.50,GPIB 地址为 12,USB 序列号为 MY12345678。三种连接方式下,VISA 资源字符串与验证命令如下:

# GPIB 连接
res = "GPIB0::12::INSTR"
# USB 连接
res = "USB0::0x2A8D::0x0101::MY12345678::INSTR"
# LAN 连接(VXI-11)
res = "TCPIP0::192.168.1.50::inst0::INSTR"

# 统一验证:读取身份并检查状态
*IDN?          → 期望返回厂商,型号,序列号,版本
*RST           → 复位到已知状态
*OPC?          → 返回 1 表示操作完成
CONF:VOLT:DC   → 配置直流电压测量
READ?          → 触发并读取一个读数

验证时先确认物理层:GPIB 检查总线是否两端有终端、地址是否冲突;USB 检查设备管理器是否识别为 USBTMC 设备;LAN 先用 ping 192.168.1.50 确认链路,再用 VISA 打开资源。若 *IDN? 超时,优先排查资源字符串、地址和线缆,而不是怀疑仪器命令。若 READ? 返回异常值,检查量程、输入阻抗和触发源配置。

选型速记:低速单台用 RS-232/USB;中速多台用 GPIB/LAN;高速大数据用 LAN/USB 3.x;高通道强同步用 PXI/PXIe。先定数据量、速率、同步和距离,再定接口,最后用 VISA 资源字符串统一软件层。
GPIB 总线总长不超过 20 m、设备间距不超过 2 m,且至少三分之二设备应上电;RS-232 与 GPIB 均无隔离时,注意地电位差可能引入共模干扰,长距离或强干扰环境应优先选用带隔离的 LAN 或光纤方案。