轨道交通列车自动驾驶系统软件开发关键技术研究
张超伟
天津凯发电气股份有限公司 天津 300000
1 系统架构与模块化设计技术
1.1 基于 V 模型的开发流程规范
轨道交通自动驾驶系统软件开发需严格遵循国际安全标准,其中 EN50128 标准明确要求采用 V 模型进行全生命周期管理。该模型将需求分析、设计、编码、测试等阶段形成闭环验证,确保每个开发环节与对应测试活动严格对应。例如,在需求分析阶段需定义 SIL4 级安全功能,设计阶段需通过形式化方法验证逻辑正确性,编码阶段需采用 MISRA C 等安全编程规范,测试阶段需完成 100% 语句覆盖和边界值分析。这种结构化开发流程可有效降低软件缺陷率,提升系统可靠性。
1.2 高内聚低耦合的模块划分
系统采用分层架构设计,将功能划分为车载 ATP、地面 ZC、ATO 控制等核心模块。每个模块具备独立的功能边界与数据接口,例如车载 ATP模块负责超速防护与车门控制,地面 ZC 模块负责移动授权计算与列车追踪。模块间通过标准化接口进行数据交互,如采用 TCP/IP 协议传输列车位置信息,通过 CAN 总线控制牵引制动指令。这种设计使得单个模块的修改不会影响其他模块运行,显著提升软件的可维护性与可扩展性。
2 安全关键软件开发策略
2.1 故障导向安全的设计原则
系统设计遵循"故障-安全"原则,确保任何单一故障均不会导致危险状态。例如,车载 ATP 采用"3 取 2"表决机制,当三个处理单元中两个输出一致时才执行安全命令;地面 ZC 采用"2 乘 2 取 2"冗余架构,通过双重比较器验证计算结果。在数据传输层面,采用 CRC 校验与加密通信技术,防止数据篡改或丢失。这些机制使得系统在硬件故障、通信中断等异常情况下仍能保持安全状态。
2.2 安全编码与静态分析技术
开发过程中需实施严格的安全编码规范,包括禁止使用动态内存分配、限制指针操作、强制类型检查等措施。静态分析工具如 Polyspace 可自动检测代码中的未初始化变量、数组越界、除零错误等潜在缺陷。例如,在列车控制算法中,通过静态分析可确保速度计算模块的数值范围始终在 0-120km/h 的有效区间内,避免因数值溢出导致的安全风险。
3 核心功能模块实现技术
3.1 移动授权计算算法
地面 ZC 模块的核心功能是生成移动授权(MA),其算法需综合考虑列车位置、线路限速、前方列车距离等多维参数。计算过程采用递归滤波算法对列车位置进行平滑处理,通过 Dijkstra 算法规划最优路径,并利用安全包络理论确定安全距离。例如,当两列车间距小于 300 米时,系统自动触发紧急制动指令,确保满足IEC 62267 标准规定的10 秒级响应时间要求。
3.2 精确停车控制技术
ATO 模块的停车控制精度直接影响乘客体验与运营效率。系统采用 PID 控制与模型预测控制(MPC)的混合算法,通过编码器反馈列车实际位置,结合线路坡度、载重等参数动态调整制动力。在站台停车阶段,系统将目标位置误差控制在 ±25cm 以内,速度控制误差小于 0.5km/h⨀ 。此外,通过机器学习算法对历史停车数据进行训练,可进一步优化控制参数,提升系统适应性。
4 软件测试与验证体系
4.1 基于边界值的动态测试方法
动态测试需覆盖所有输入变量的边界条件,例如列车速度测试需包含0km/h 、最大运行速度、超速阈值等关键点。测试用例设计采用等价类划分技术,将连续输入范围离散化为有限测试点。例如,对于加速度控制模块,需测试- ⋅1.0m/s2 至 1.0m/s2 区间内的所有整数与半整数取值,验证系统在极端工况下的稳定性。
4.2 全生命周期测试管理
测试活动贯穿需求分析、设计、编码、集成、验收各阶段。需求阶段需完成 HIL(硬件在环)测试,验证控制算法与实际硬件的兼容性;集成阶段需进行 SIL(软件在环)测试,检查模块间接口的正确性;验收阶段需开展场景测试,模拟雨雪天气、信号干扰等复杂环境。测试数据管理采用 ALM(应用生命周期管理)工具,实现测试用例、缺陷记录、版本控制的全程追溯。
5 多系统协同与数据交互技术
5.1 车地通信协议设计
5.1.1 基于 IEEE 802.11p 的无线信道构建
车地通信需满足低延迟( ⩽100ms )和高可靠性( gimel99.99% )的核心需求。系统采用 IEEE 802.11p 标准构建专用无线信道,其工作频段为 5.9GHz,支持高速移动场景下的稳定通信。通过 TDMA(时分多址)时隙分配机制,将通信周期划分为固定长度的时隙,每个子系统(如 ATP、ATO、ZC)分配独立时隙进行数据传输,避免多节点同时发送导致的冲突。
5.1.2 分层架构与数据格式标准化
通信协议采用 OSI 分层模型,物理层负责比特流传输,采用 QPSK 调制方式,支持最高 27Mbps 的数据速率;数据链路层实现 CRC-32 校验与自动重传请求(ARQ)机制,当接收方检测到数据错误时,在 10ms 内触发重传,确保单次传输成功率 ≈99.9% 。应用层定义统一的数据格式,以列车位置报告消息为例,包含时间戳(4 字节)、经纬度(8 字节)、速度(2字节)、运行方向(1 字节)等 12 个字段,总长度固定为 64 字节。
5.2 跨系统接口集成
5.2.1 基于 SOA 的接口封装与服务调用
自动驾驶系统需与信号、车辆、综合监控等子系统交互数据,接口设计采用 SOA(面向服务架构)理念,将每个子系统的功能封装为独立的 Web 服务。例如,信号系统的站台门控制服务、车辆系统的牵引制动服务、综合监控系统的环境调节服务均通过 WSDL(Web 服务描述语言)定义接口规范,明确输入参数(如列车 ID、控制指令类型)与输出结果(如执行状态、故障代码)。
5.2.2 数据映射与实时同步机制
跨系统交互需解决数据格式与语义差异问题。系统采用中间件技术实现数据映射,例如将信号系统的“移动授权范围”(以轨道区段编号表示)映射为自动驾驶系统的“安全制动距离”(以米为单位),通过配置文件定义转换规则,避免硬编码导致的维护困难。对于实时性要求高的数据(如列车速度、位置),采用发布/订阅模式实现同步:ATO 系统作为数据发布者,将速度信息以 100ms 为周期推送至消息总线;信号系统与综合监控系统作为订阅者,从总线获取最新数据并更新本地状态。
结语
轨道交通列车自动驾驶系统软件开发是涉及安全计算、控制理论、通信技术等多领域的复杂工程。通过 V 模型开发流程、模块化架构设计、多重冗余安全机制及全生命周期测试验证等关键技术的综合应用,可构建满足 SIL4 级安全标准的自动驾驶系统。
参考文献:
[1]城市轨道交通无人驾驶模式下的列车自动防护系统设计[J].陈启香.科技风,2020(23).
[2]城市轨道交通列车自动驾驶系统控制算法研究与仿真[J].何少雯.工业控制计算机,2017(10).
[3]城市轨道交通列车自动驾驶各阶段速度控制算法的研究[J].徐杰;郜洪民,孟军.铁路计算机应用,2012(11).