深夜 11 点,达拉斯一家 3PL 配送中心,两条通道交汇的路口,两台 AMR 鼻尖对鼻尖地僵住了。A 厂的车判断自己有优先通行权,原地不动;B 厂的车按自家的退避逻辑往后退了半米,然后停在原地继续上报"路径阻塞"。两套调度系统谁也不认谁,监控屏上两台车的状态灯一红一绿地闪。夜班主管带着两个人,戴着手套,硬是把两台 300 多公斤的车推开的。那一夜仓库少出了 3 个波次,第二天早上客户的索赔邮件就躺在老板的收件箱里。
这不是技术不行,是两家车的"语言"压根不通。买第二家 AMR 之前没人告诉你:多品牌混跑真正的难处不在车,在谁来给它们下指令。
VDA 5050 到底管什么
VDA 5050 是德国汽车工业协会(VDA)和机械工程协会(VDMA)联合发布的开放通信标准,管的是移动机器人和中央主控(master control)之间的接口怎么说话。最新版是 3.0.0,2025 年 3 月发布。它的核心设计很简单:任务走一个方向(主控发 order,车上报 state),消息格式是 JSON,过 MQTT 传递,连 QoS 等级都写清楚了——常规通道用 QoS 0,连接监控用 QoS 1。
标准里还定好了几个消息类型:order(下任务)、instantActions(立即动作,比如暂停)、state(上报位置和电量)、visualization(可视化)、connection(连接心跳)、factsheet(车辆物理参数自报)、zoneSet(区域集合)。各家车厂只要按这套发消息,主控就能统一派单。
但注意它不管的东西:安全功能不管,交通逻辑不管。路径规划、避让优先级、死锁解开——这些算法标准一个字都没定,全留给主控和各家车厂自己实现。这就意味着,VDA 5050 解决的是"听得懂指令",不是"跑得不打架"。我见过最惨的一次翻车:某品牌销售拍着胸脯说"我们支持 VDA 5050",现场联调才发现它只实现了 state 上报通道,order 通道根本没做——车能告诉你它在哪,但主控一个任务都发不过去。验收前一定要让 vendor 逐条演示消息通道,别信宣传册上的勾。
主控到底选谁:三种架构的取舍
多品牌混跑,主控只能有一个,这是铁律。我见过的现场有三种选法。
第一种,第三方中立主控。独立的车队管理系统,专吃 VDA 5050 协议,对谁都一碗水端平。好处是以后换车厂不被套牢;坏处是多一笔软件许可费,而且各家车的特殊动作(比如 B 厂独有的举升序列)标准里表达不了,得定制适配。
第二种,一家车厂兼做主控。这是最常见的销售话术:"我们的车+我们的主控,别人家的车也能接进来。"能接,但代价是它的主控天然偏袒自家的车:任务分配算法、充电优先级、异常处理,细节上都是为自家车调优的。更重要的是商务条款——这家的维保合同往往把你锁死两三年,第三家想进场,它一句"兼容性测试不通过"就能把你卡住。
第三种,双主控分区。A 品牌管东区,B 品牌管西区,中间画一条虚拟边界。这是最省事但最窝囊的方案,等于承认两家车永远合不来,交叉任务还得人工中转。
我的 verdict:车队规模超过 10 台、打算长期加车,直接上第三方中立主控,多花的软件钱会在第二轮采购里加倍赚回来。5 台以下的小规模试点,可以接受一家兼做主控,但合同里必须写清:新增第三方品牌车辆时,原主控供应商有义务在 60 天内完成 VDA 5050 联调,超期按天扣维保费。这条不写进合同,以后就是扯皮的起点。

地图和任务打通,坑藏在四个坐标里
VDA 5050 还有一个著名的留白:它不管地图。每家 AMR 的地图是各家自己建的,坐标系互不相干。A 厂地图原点在收货门,B 厂原点在充电区——主控说"去 (12, 30)",两台车理解的是两个地方。
实战里的做法是 commissioning 时工程师手动标定:找四个空间对应点,两套地图硬对齐一次。这办法能用,但有个致命弱点:货架一挪、临时堆垛一变,地图就悄悄失配了,没人察觉,直到某天一台车开进"地图上不存在"的区域。我看过一个冷库项目,货架重新排布后没人重标定,结果一台车按旧地图钻进了一个已经封死的通道口,激光雷达疯狂报警,全车队跟着停摆。
所以地图对齐不是一次性工程,是运维制度:每次动货架、改通道,必须触发地图重标定流程,写进 SOP,指定责任人。
导航方式不一样,混跑先吵架
还有个坑藏在导航方式里。A 厂用激光 SLAM,靠环境轮廓定位;B 厂铺反光板,靠反射定位;C 厂玩视觉。单独跑都没毛病,混到一个场子里就开始互相伤害:A 厂的车把 B 厂贴在货架腿上的反光板识别成"墙",绕着走,白白多跑几十米;B 厂的车更惨,反光板被叉车撞歪一块,定位直接漂移半米,停靠充电桩时对不准,反复进出重试,充电桩前面排起长队。
最要命的是两套系统对环境变化的反应速度不一样。激光 SLAM 的车天天自己更新地图,越跑越准;反光板定位的车地图是静态的,环境变了它不知道。于是同一个路口,A 厂的车觉得能过,B 厂的车觉得不能过——主控派单时两边给出的可行性结论打架,任务就卡在队列里。
我的 verdict:混跑之前先把导航策略统一了,能统一成激光 SLAM 就统一;统一不了的,把反光板定位的车圈在固定区域跑,别让它进动态变化的拣选区。两套定位逻辑在同一个路口,是永远商量不出结果的。实在要用反光板定位,反光板贴多高、间距多少、谁负责每周巡检一次撞歪的,commissioning 时就写进验收标准,别等漂移了再扯皮。
签合同前,先过这张验收清单
这是我从几次翻车里总结出来的,签最终验收前逐项打勾:
- 让 vendor 逐条演示全部 VDA 5050 消息通道,尤其是 order 和 instantActions,不只是 state
- 两家(或几家)品牌的车同时上场,混跑至少连续 4 小时,统计互相等待和人工干预次数
- 故意制造一次通道对向相遇,看主控能不能在 30 秒内解开,而不是靠人去推
- 模拟 Wi-Fi 漫游断线 10 秒,看车是原地安全停车还是按上一个指令乱跑
- 断开某品牌一台车的充电器,看主控的低电量任务重分配逻辑是否覆盖全品牌
- 货架挪动一次后做地图重标定,计时,看流程能不能在 2 小时内走完
- 要求 vendor 提供 factsheet,核对车辆物理尺寸、载重、转弯半径与合同一致
说一个明天就能用的建议:别在会议室里决定互操作行不行。让候选的两个品牌各派 2 台车,拉到一块空旷场地或者你仓里一个闲置区域,跑半天混合任务——下单、充电、异常、断网全演一遍。如果某家 vendor 找各种理由拒绝这场冒烟测试,相信我,这单现在不签,你省下的不只是钱。





