矿卡自动驾驶不是一套单车算法就能完成的事情。乘用车自动驾驶更像“车辆自己理解道路并开过去”,而矿区无人驾驶更像“车辆、道路、云端调度、装卸设备和安全系统一起组织生产”。所以要讲清楚矿卡自动驾驶,不能只讲感知、规划、控制三个词,而要把任务调度、地图定位、感知融合、行为决策、轨迹规划、运动控制、线控执行、安全监督和远程接管放在一个完整闭环里看。
这篇文章按工程实现顺序,把矿卡自动驾驶整体算法拆开讲。重点是流程和原理:每一层输入什么,输出什么,为什么需要这一层,以及它和上下游如何配合。
图 1:矿卡自动驾驶整体算法流程,从云端任务到线控执行再回到安全监督
一、先看整体闭环:矿卡自动驾驶不是单向流水线
很多人理解自动驾驶,会把它想成一条单向链路:感知看到障碍物,规划生成路径,控制执行轨迹。这个说法没错,但对矿卡不够。矿卡不是在开放道路上自由行驶,而是在矿区生产节拍里运行。它的每一次行驶都带着任务属性:去哪里装、去哪里卸、什么时候换电、是否要给重载车让行、是否进入装卸区、是否允许会车。
因此矿卡自动驾驶至少有两个闭环:一个是车端实时闭环,处理周围环境、轨迹和控制;另一个是云端生产闭环,处理车队调度、路权、装卸队列和补能节奏。车端保证“这辆车安全地开”,云端保证“整个矿区高效地跑”。
| 层级 | 主要输入 | 主要输出 | 核心问题 |
|---|
| 云端调度 | 产量目标、装卸点状态、车辆位置、SOC、道路拥堵 | 运输任务、路权、换电/充电计划、车辆排序 | 让车队整体效率最高,而不是单车最短路径 |
| 地图定位 | RTK、IMU、轮速、高精地图、局部建图 | 车辆位置、航向、道路拓扑、坡度曲率 | 让车辆知道自己在哪里,以及哪里可以走 |
| 感知融合 | 激光雷达、摄像头、毫米波雷达、V2X、地图先验 | 障碍物、可通行区域、人员车辆、道路边界 | 让车辆知道周围有什么,并估计风险 |
| 行为决策 | 任务、环境模型、交通规则、路权、车辆状态 | 跟车、停车、会车、绕行、进入装卸区等行为 | 决定当前该做什么动作 |
| 轨迹规划 | 行为意图、路径边界、障碍物、坡度、速度限制 | 可执行路径和速度曲线 | 生成既安全又可被车辆执行的轨迹 |
| 运动控制 | 目标轨迹、实际状态、执行器反馈、坡度载荷 | 转向、驱动、制动等控制指令 | 让重载车辆稳定跟踪轨迹 |
| 安全监督 | 诊断结果、运动边界、风险规则、远程状态 | 限速、停车、降级、请求接管 | 在主算法不可靠时保底 |
二、云端调度:自动驾驶的任务从哪里来
矿卡自动驾驶的起点通常不是“车自己决定去哪”,而是云端调度系统分配任务。调度系统根据矿山生产计划、挖机位置、卸载点状态、道路状态、车辆队列、SOC 或燃油状态,决定每台车的任务。
例如一台车刚在卸载点完成卸料,云端需要判断它接下来去哪个装载点。看似简单,实际会涉及装载点等待时间、路程、坡度、重载路线、换电需求、道路拥堵和车辆健康状态。矿区里最短路径不一定是最优路径,因为最短路径可能会造成会车冲突、排队或重载下坡风险。
云端调度输出什么
1.目标任务:去装载点、去卸载点、去换电站、去停车区或等待区。2.推荐路线:从当前位置到目标点的全局路线,包含道路拓扑、路段属性、坡度和限速。3.路权信息:某些窄路、交叉口或会车点的通行优先级。4.运营约束:是否允许超车、是否需要排队、是否进入装卸区自动对位流程。5.异常策略:通信中断、道路封闭、任务取消、远程接管时如何处理。三、地图和定位:算法闭环的坐标基础
如果车辆不知道自己在哪里,后面的感知、规划和控制都无法稳定工作。矿区定位通常不能只依赖单一传感器。RTK 可以提供高精度绝对位置,但会受遮挡、多路径和基站质量影响;IMU 可以提供短时姿态和加速度信息,但长期会漂移;轮速可以辅助估计运动,但打滑时会失真;高精地图能提供道路拓扑、车道边界、坡度和装卸区目标点。
图 2:感知和定位融合共同构建车辆当前位置与局部环境模型
地图不是一次建好就不变
矿区道路比城市道路变化更频繁。采场推进、道路维护、边坡调整、临时施工、洒水、落石都会改变局部环境。因此矿卡自动驾驶需要地图增量更新能力。地图不只是几何路径,还应包含坡度、曲率、道路宽度、会车点、避让区、装载点、卸载点、换电站、限速区和危险区域。
定位输出要服务控制
定位系统不能只给经纬度。控制器真正需要的是车辆相对路径的位置误差、航向误差、速度、加速度和姿态。特别是在装载区和卸载区,定位精度直接影响车辆是否能停到正确位置。
四、感知融合:看见障碍物,也要看见可通行区域
矿卡感知的目标和城市道路不完全相同。城市自动驾驶关注红绿灯、车道线、行人、机动车、非机动车等复杂语义;矿区更关注道路边界、挡墙、边坡、落石、坑洼、人员、工程机械、混行车辆、装载设备和粉尘遮挡。
激光雷达适合提供三维结构和障碍物轮廓,摄像头适合识别语义目标和人员车辆,毫米波雷达在扬尘、雨雪和低能见度下可以作为速度和距离冗余。融合算法要解决的是时间同步、坐标变换、目标关联和置信度判断。
感知输出通常包括四类结果
1.障碍物列表:位置、速度、尺寸、类别、置信度和预测轨迹。2.可通行区域:道路边界、可行驶栅格、不可通行区域和临时障碍区。3.关键作业对象:挖机、装载机、洒水车、平地机、人工驾驶车和人员。4.风险标志:突然出现的落石、道路坍塌、挡墙距离过近、传感器遮挡或粉尘导致的不可信区域。五、行为决策:决定当前该干什么
行为决策处在感知和轨迹规划之间。它不是直接输出方向盘角度,而是决定当前的驾驶意图。例如继续巡航、减速跟车、停车等待、绕开障碍物、进入会车点、让重载车先过、驶入装载区、执行卸载定位、进入换电站。
图 3:行为决策先决定“做什么”,轨迹规划再生成“怎么走”
为什么需要行为决策层
如果没有行为决策层,轨迹规划会直接面对所有复杂情况:前方有车、右侧有边坡、左侧有会车点、云端给了路权、前方车辆重载下坡、装载区正在排队。这些条件混在一起,规划器很难稳定输出合理轨迹。行为决策层相当于先把场景归类,明确当前策略,再让轨迹规划在限定目标下求解。
矿区常见行为
| 行为 | 触发条件 | 控制目标 |
|---|
| 巡航 | 路线清晰、无近距离障碍、路权正常 | 按目标速度和路径稳定行驶 |
| 跟车 | 前方同向车辆较近或装卸区排队 | 保持安全距离,避免频繁启停 |
| 会车 | 窄路、交叉口、重载/空载混行 | 根据路权和会车点决定停让或通过 |
| 避障 | 前方落石、人员、车辆或临时障碍 | 减速、停车或绕行 |
| 装载对位 | 进入挖机/装载机作业区 | 低速精准停车,满足装载姿态要求 |
| 卸载对位 | 进入破碎站、排土场或卸载位 | 精确停车、举升安全确认 |
| 补能 | SOC低或调度要求换电/充电 | 驶入换电站或充电区并执行站区流程 |
六、轨迹规划:把行为变成可执行路径
轨迹规划的输入是行为意图和环境模型,输出是一条带时间或速度信息的轨迹。它要同时考虑安全、平顺、可执行和效率。矿卡轨迹规划尤其要考虑车辆大、转弯半径大、制动距离长、坡道多、路面附着不稳定这些约束。
轨迹规划一般分两层
1.路径规划:在道路边界和障碍物约束内生成几何路径,决定车辆从哪里走。2.速度规划:结合坡度、曲率、障碍物、制动距离和作业区规则,决定车辆以多快走。矿卡规划不能只看几何可行。如果一条路几何上能过,但弯道半径太小、下坡太陡、重载制动距离不足,仍然不能直接执行。好的轨迹规划会把车辆动力学和执行器能力提前考虑进去。
这个关系说明:弯道曲率越大,允许速度越低。矿卡重载时横向稳定余量更小,速度规划必须在急弯、下坡弯和低附着路段提前降速。
七、运动控制:让重型车辆真的按轨迹走
控制层接收轨迹规划输出的参考路径和速度曲线,然后把它们转换成转向、驱动、制动等指令。控制层通常包括横向控制和纵向控制。横向控制处理横向误差、航向误差和路径曲率;纵向控制处理速度误差、目标加速度、坡度、载荷和制动源分配。
矿卡控制难点不在公式复杂,而在执行器不理想。转向系统有响应延迟和转角速度限制;气制动有建压和排气延迟;电机扭矩有斜率限制;液力缓速器制动力与速度相关;轮胎附着会随碎石、泥水、坡道和载荷变化。
| 控制模块 | 输入 | 输出 | 关键难点 |
|---|
| 横向控制 | 参考路径、车辆位置、航向、曲率 | 目标转角或转向速率 | 低速大转弯、长轴距、转向延迟、道路边界 |
| 纵向控制 | 目标速度、实际速度、坡度、载荷、障碍距离 | 驱动扭矩、制动请求、缓速器请求 | 重载坡道、制动延迟、多制动源分配 |
| 横纵向协调 | 曲率、坡度、附着、制动距离、车速 | 速度限制、加速度限制、稳定性约束 | 速度过高会让横向控制不可执行 |
| 执行器管理 | 控制请求、执行器状态、故障诊断 | 限幅后可执行指令 | 死区、延迟、饱和、故障降级 |
八、线控执行:算法落地的最后一公里
线控执行层负责把控制指令真正作用到车辆上。转向、驱动、制动、驻车、举升、灯光、喇叭等都可能进入线控系统。对矿卡来说,线控不是简单把驾驶员动作电信号化,而是要满足自动驾驶持续运行、故障诊断和安全降级要求。
例如制动指令不能只看目标减速度,还要考虑气压建立延迟、制动压力反馈、缓速器温度、电机制动能力和轮胎附着。转向指令也不能直接给很大的目标角度,而要经过转角限幅、转角速率限制和执行器健康检查。
九、安全监督:为什么必须独立存在
矿卡无人驾驶不能完全相信主算法。感知可能漏检,定位可能跳变,规划可能给出不可执行轨迹,控制可能因为执行器故障无法实现目标。因此系统必须有安全监督层。它独立监控传感器、执行器、通信、车辆状态、轨迹风险和运营规则,一旦发现风险,就可以限速、停车、降级或请求远程接管。
图 4:安全监督层不负责正常驾驶,但负责在风险出现时强制保底
安全监督常见规则
1.轨迹越界:规划轨迹距离边坡、挡墙、道路边界过近时,拒绝执行或强制降速。2.制动距离不足:当前速度下无法在障碍物前安全停车时,立即触发紧急制动策略。3.定位不可信:RTK跳变、IMU异常、地图匹配失败时,限制速度或停车。4.感知遮挡严重:扬尘、雨雪或传感器污染导致感知置信度不足时,降低速度。5.执行器异常:转向、制动、驱动、驻车或通信状态异常时,进入降级。6.远程安全规则:调度系统封路、人员进入作业区、远程急停触发时,车辆必须服从。十、远程接管和运营平台
矿区无人驾驶通常会配置远程监控和接管平台。远程接管不是为了让人长期遥控车辆,而是处理算法边界外的异常场景。例如道路临时被堵、施工车辆占道、感知无法判断的异物、车辆故障、调度任务冲突等。
运营平台还要记录每辆车的任务、轨迹、能耗、故障、接管、等待时间、装卸效率和制动事件。这些数据会反过来用于优化地图、调度、控制标定和安全规则。矿区无人驾驶的长期能力,往往来自这种持续运营数据闭环。
十一、一个完整运输任务的流程
把所有模块串起来,一次典型运输任务可以这样理解。
1.云端根据生产计划和车辆状态,分配从装载点到卸载点的运输任务。2.车辆接收任务,加载全局路线、高精地图、限速和路权信息。3.定位模块融合 RTK、IMU、轮速和地图匹配,输出车辆位姿。4.感知模块识别道路边界、障碍物、人员、工程机械和混行车辆。5.行为决策根据任务和环境,决定巡航、跟车、会车、停车、绕行或进入装卸流程。6.轨迹规划生成可执行路径和速度曲线,并考虑坡度、曲率、障碍物和制动距离。7.控制模块输出转向、驱动、制动、缓速器等请求,并进行横纵向协调。8.线控系统执行指令,车辆状态和执行反馈回到控制器。9.安全监督持续检查风险,必要时限速、停车或请求远程接管。10.任务完成后,运营平台记录数据,云端重新分配下一趟任务或补能任务。十二、前瞻判断
1.矿卡自动驾驶会从单车智能,走向车-路-云-矿山生产系统协同。2.调度算法会越来越重要,因为矿山客户最终关心的是产量、安全和成本。3.感知算法的重点会从“识别目标”扩展到“判断可通行区域和风险置信度”。4.规划控制会更多引入车辆动力学约束,特别是重载坡道、低附着和制动距离约束。5.安全监督层会成为量产核心,不是附属功能。没有独立监督和降级策略,无人矿卡很难长期无安全员运行。结语
矿卡自动驾驶的整体算法,不是一条简单的“感知-规划-控制”流水线,而是一个多闭环系统。车端要实时理解环境、规划轨迹、控制车辆;云端要管理任务、路权、补能和生产节拍;安全监督要在任何不确定时刻保底。
真正成熟的矿卡无人驾驶,最终不是让一辆车在矿区里自己开一圈,而是让一组车在真实生产节拍中长期、安全、稳定、少人化地运行。理解这一点,才能真正理解矿卡自动驾驶算法为什么要这样设计。