2. 工程机械基础
工程机械自动驾驶不是把乘用车的方案简单搬到工地,而是要先理解“车”本身。挖掘机、装载机、推土机、矿卡这四类装备在结构、运动学、作业节拍和控制接口上差异极大,决定了自动驾驶改造的切入点完全不同。本节从结构、作业流程和改造需求三个维度建立基础认知。
一、四类典型装备的结构与运动特征
挖掘机属于非行驶作业型装备,核心是“动臂—斗杆—铲斗”三节臂液压机构加回转平台。它的行走底盘只用于转场,真正的工作是液压缸驱动的多自由度平面运动。自动驾驶改造的重点不是方向盘,而是液压先导控制与铲斗轨迹规划。
装载机是铰接式底盘,前后车架通过铰接销连接,转向靠液压油缸折腰实现。工作装置是动臂加铲斗,典型作业是“铲装—举升—运输—卸料”循环。它的特点是转向与工作装置均为液压驱动,且铰接结构使运动学模型比刚性车复杂。
推土机多为履带式,靠两侧履带差速转向,前端铲刀通过液压缸升降和侧倾。作业是“切土—推运—摊铺”,对铲刀姿态与履带滑移的联合控制要求高,定位精度受履带打滑影响明显。
矿卡是刚性或铰接式大型运输车,结构最接近道路车辆,有方向盘、油门、制动和变速箱。它的自动驾驶改造最接近乘用车方案,但面临载重变化大、坡道多、扬尘遮挡等矿山特有挑战。
二、作业流程与自动驾驶的对应关系
理解作业流程,才能把自动驾驶功能映射到具体动作。以装载机一个完整循环为例:
- 空载行驶:从卸料点驶向料堆,需要路径跟踪与避障。
- 铲装:铲斗插入料堆,需要控制插入深度、动臂举升力与铲斗收斗时机。
- 满载运输:举升铲斗行驶到卸料点,需要重心变化下的稳定性控制。
- 卸料:举升到指定高度翻转铲斗,需要位置与姿态协同。
- 返回:空载回到料堆,进入下一循环。
其中第 2 步“铲装”是自动化难度最高的环节,因为料堆形态不断变化,铲斗受力无法精确建模,通常需要力觉反馈 + 视觉识别 + 自适应策略共同完成。相比之下,矿卡的“装载—运输—卸载”流程更接近道路运输,自动驾驶改造可以优先落地。
三、改造需求清单与优先级
不同装备的改造需求可以归纳为下表,便于在方案设计时快速对照:
| 装备 | 核心执行机构 | 关键感知量 | 改造难点 | 建议优先级 |
|---|---|---|---|---|
| 挖掘机 | 液压先导阀、回转马达 | 臂位、回转角、铲斗位 | 轨迹规划与力控 | 高(作业自动化) |
| 装载机 | 转向油缸、动臂油缸 | 铰接角、铲斗位、料堆 | 铰接运动学、铲装策略 | 高(循环作业) |
| 推土机 | 履带驱动、铲刀油缸 | 铲刀高程、履带滑移 | 滑移补偿、地形跟随 | 中(连续作业) |
| 矿卡 | 方向盘、油门、制动 | GNSS、惯导、障碍物 | 载重变化、扬尘 | 高(运输自动化) |
四、常见误区与复盘要点
下面是一段用于描述装载机铲装动作的伪代码,体现“感知—决策—执行”的闭环结构:
# 装载机铲装动作伪代码
while 循环未结束:
pose = 读取铰接角() + 读取铲斗位()
pile = 视觉识别料堆轮廓()
if 铲斗未接触料堆:
目标 = 规划插入轨迹(pile)
控制转向油缸(目标.转向)
控制动臂油缸(目标.举升)
else:
力 = 读取铲斗油缸压力()
if 力 > 阈值:
收斗()
举升动臂()
记录本次铲装量()
掌握这四类装备的结构差异与作业流程,是后续学习线控改造、传感器选型和作业规划算法的前提。只有先看清“机器本身怎么动”,才能设计出真正可落地的自动驾驶方案。