4. AGV/AMR配送路径拓扑地图标注

为什么栅格地图不能直接用于路径规划

栅格地图只回答“哪里是障碍”,不回答“哪里可以停靠、哪里必须单向通行、哪里禁止进入”。路径规划器需要的是带语义的拓扑地图:节点表示可停靠或可通行的关键位置,边表示节点之间可通行的路径段,并附带方向、宽度、限速等约束。本节在已构建的栅格地图上完成五类要素标注:站点、充电桩、等待区、窄通道、禁行区,输出可供规划器直接读取的拓扑地图。

五类标注要素的语义与参数

要素几何形式关键参数对规划的作用
站点(取货/卸货/中转)点 + 停靠朝向坐标、朝向角、停靠时长作为路径起点/终点节点
充电桩点 + 服务半径坐标、功率、占用状态低电量时的可达目标节点
等待区多边形区域容量、允许排队方向冲突消解时的临时驻留节点
窄通道带方向的线段净宽、单向/双向、限速边权增大,触发互斥通行
禁行区多边形区域生效时段、禁行对象从可通行图中剔除

标注流程与坐标约定

坐标约定:以栅格地图左下角为原点,x 向右为正,y 向上为正,单位米;朝向角以 x 轴正方向为 0°,逆时针为正。标注在栅格地图的同一坐标系下进行,避免后续转换误差。

  1. 加载栅格地图,确认分辨率(如 0.05 m/格)与原点偏移。
  2. 在站点位置打点,记录坐标与停靠朝向;朝向必须指向通道开口方向,否则车辆停靠后无法直接驶出。
  3. 用多边形圈出等待区与禁行区,禁行区需标注生效时段。
  4. 沿通道中心线绘制窄通道线段,量取净宽并判定单向或双向。
  5. 连接相邻可通行节点生成边,为每条边写入长度、宽度、方向、限速。
  6. 导出拓扑文件,做连通性检查:每个站点必须至少有一条出边,充电桩必须从主通道可达。
窄通道判定经验值:当净宽 W 与车辆对角线尺寸 D 满足 W < 1.5D 时,建议标为单向窄通道;W ≥ 2D 时可标为双向。此阈值需按实际车型复核,不可直接套用。

拓扑地图结构示意

禁行区 08:00–10:00 生效 等待区 容量 3 台 排队方向 → 窄通道 净宽 1.2 m · 单向 限速 0.5 m/s P 取货点 A 朝向 90° D 卸货点 B 朝向 270° C 充电桩 服务半径 1.5 m 图例 站点(取货/卸货) 充电桩 等待区 窄通道(单向)

拓扑文件字段与连通性检查

标注完成后导出为规划器可读的拓扑文件。节点表与边表分离,便于增量更新。

# nodes.csv
id,type,x,y,heading_deg,capacity
A,pickup,12.5,18.0,90,1
B,dropoff,35.0,6.5,270,1
C,charger,22.5,18.0,0,1
W1,wait,8.5,4.0,0,3

# edges.csv
from,to,length_m,width_m,direction,speed_limit
A,C,10.0,2.0,bidirectional,1.0
C,W1,14.0,2.0,bidirectional,1.0
C,B,12.5,1.2,oneway,0.5
W1,B,18.0,2.0,bidirectional,1.0
连通性检查脚本逻辑:以站点集合为起点做广度优先遍历,若存在站点无法到达任一充电桩,则该站点为孤立节点,需补边或调整标注。窄通道边需额外校验方向一致性,避免出现两条方向相反的 oneway 边。

常见标注错误与后果

  • 站点朝向指向墙壁:车辆停靠后无法直接驶出,规划器会生成需要倒车的路径,实际执行时易碰撞。
  • 窄通道漏标单向:多车同时进入导致死锁,规划器无法通过边权识别互斥需求。
  • 禁行区未标生效时段:规划器全天避开该区域,造成路径冗余;或全天放行,造成违规进入。
  • 充电桩未接入主通道:低电量车辆无法规划到充电桩,任务中断。
标注完成后必须用规划器做一次可达性验证:随机选取 5 组“取货点→卸货点”和 2 组“任意点→充电桩”,确认均能生成路径。若某组无解,优先检查禁行区是否切断了唯一通道,以及窄通道方向是否与行驶方向矛盾。