2. 列车通信协议基础
列车通信网关的核心工作是“翻译”:把一种总线上的报文语义,准确、实时地搬运到另一种总线上。要做好这件事,网关开发者必须先建立一张“协议地图”——知道每种协议处在什么位置、帧长什么样、实时性和可靠性边界在哪里。本节围绕列车常用的 RS-485、CAN、MVB、WTB 和以太网,梳理它们的定位、分层模型、帧结构差异,并给出网关选型时的判断依据。
一、五类协议在列车上的角色分工
这五种协议并不是互相替代的关系,而是按“覆盖范围 + 实时性 + 确定性”分层协作。RS-485 是物理层标准,本身只规定差分电气特性和多点总线拓扑,上层常配 Modbus RTU、自定义轮询协议等,多用于车厢内传感器、空调、照明等低速辅助设备。CAN 是带仲裁的串行总线,采用非破坏性位仲裁,广泛用于车门、制动、牵引辅助控制等子系统内部,典型速率 250 kbit/s~1 Mbit/s。MVB(多功能车辆总线)是列车车辆级总线,面向车厢内多个设备的过程数据与消息数据,过程数据周期可短至 1 ms,具备强确定性。WTB(绞线式列车总线)是列车级总线,负责贯通全列、连接各车厢网关节点,采用周期性主从轮询,节点地址可动态配置,适合编组变化场景。以太网则凭借高带宽和成熟生态,承担列车骨干网(ETB)与编组网(ECN)的大流量数据,如视频监控、乘客信息系统和诊断数据回传。
理解分工的关键是记住两条轴:横轴是“覆盖范围”(车辆内 → 列车级),纵轴是“确定性与实时性”(强 → 弱、带宽低 → 高)。网关往往就架在这两条轴的交点上,例如把 MVB 车辆级过程数据转换到 WTB 列车级,或把 CAN 子系统数据汇聚后送上以太网骨干。
二、协议分层模型对照
用 OSI 七层模型对照可以看出各协议的“厚薄”。RS-485 只覆盖物理层,数据链路层及以上由应用协议自行约定,因此互操作性最依赖双方约定。CAN 覆盖物理层与数据链路层,定义了帧格式、仲裁、CRC 和错误处理,但不规定应用层语义,所以出现了 CANopen、J1939 等应用层规范。MVB 和 WTB 由 IEC 61375 系列标准定义,涵盖物理层、链路层和应用层,其中 MVB 的链路层提供过程数据(周期性、广播)和消息数据(事件驱动、点对点)两类服务,WTB 则定义了列车初运行、节点地址分配和周期轮询机制。以太网覆盖物理层与链路层,列车场景下再叠加 IP、UDP/TCP 以及 TRDP(列车实时数据协议)等应用层,形成完整的通信栈。
对网关而言,分层模型直接决定“转换发生在哪一层”。若两端都基于 IP,可在应用层做协议映射;若一端是 MVB 过程数据端口,另一端是 CAN 报文,则网关需要在应用层建立“端口/报文 ID ↔ 信号”的映射表,并自行处理周期、超时和有效性标志。
三、帧结构差异带来的转换难点
从帧结构看,差异非常直观。CAN 标准帧只有 11 位标识符和最多 8 字节数据,靠 ID 表达优先级和信号含义,因此网关做 CAN 侧映射时,必须维护“报文 ID + 字节偏移 + 位宽 + 缩放因子”的信号表。MVB 过程数据采用主帧/从帧结构,主帧 16 位指明端口,从帧长度可为 16、32、64、128 或 256 位,数据按端口周期广播,网关需要按端口地址和周期组织收发。WTB 帧带有节点地址,通过主节点轮询各节点完成列车级数据交换,编组变化时地址会重新分配,网关必须支持初运行后的地址更新。以太网帧则携带 MAC 地址和 46~1500 字节载荷,适合承载大块诊断和多媒体数据,但本身不保证实时性,需要靠 TRDP 的周期/事件机制和流量整形来约束。
这些差异意味着网关不能做“透明转发”,而要做“语义重建”。例如把 MVB 某端口 32 位过程数据转换为 CAN 报文时,需要决定拆成几帧、每帧承载哪些信号、周期如何对齐、接收端超时如何置无效。反过来,把 CAN 事件帧汇聚到以太网时,要处理突发流量和缓存溢出,必要时做限速或合并。
四、选型依据与工程判断
实际选型时,建议按以下顺序判断:第一看实时性与确定性,过程控制类数据优先 MVB,事件型控制优先 CAN;第二看覆盖范围,车厢内设备互联用 MVB 或 CAN,跨车厢贯通用 WTB,大流量回传用以太网;第三看互操作生态,RS-485 成本低但需双方约定应用层,CAN 有成熟应用层规范可复用;第四看编组灵活性,需要动态编组的列车级链路选 WTB;第五看带宽与未来扩展,视频、诊断大数据走以太网。
以一台典型车厢网关为例:其车辆侧接 MVB 过程数据端口,子系统侧接两路 CAN(车门与空调),列车侧接 WTB,诊断口接以太网。假设 MVB 某端口周期 16 ms、数据 32 位,CAN 车门报文周期 50 ms、数据 8 字节,则网关需以 16 ms 为基准节拍调度 MVB 收发,在 50 ms 周期内完成 CAN 轮询与信号打包,并把关键状态经 WTB 周期上送、把诊断日志经以太网批量上传。这里的周期、端口和报文均为教学示例,实际项目应以车辆网络配置文件为准。