平台显示“在线”车却不动?一文讲透CAN通讯、急停逻辑和传感器偏科的“潜规则”
2026年3月31日晚,武汉。近一百辆“萝卜快跑”无人车几乎在同一时刻熄火,横停在高架快车道中央。车内SOS紧急呼叫系统失灵,客服电话要么占线,要么机械重复“网络异常”。有人被困近两小时,全靠交警徒步上高架逐车引导疏散。

平台显示一切正常。车,就是不动。
你以为是某个倒霉蛋的传感器被塑料袋糊住了?不是。是上百辆车,同时“脑死亡”。
这已经不是一次故障,而是一场发生在城市交通主动脉上的“集体中风”。今天咱们就把这件事掰开了揉碎了讲——CAN通讯是怎么“雪崩”的、急停逻辑是怎么变成“合法路障”的、传感器偏科又是怎么把无人车变成“高智商傻子”的。
但在拆解之前,先看清一个现实:这不是“偶发”。2025年全国无人配送车保有量已突破3.7万台,2026年一季度保有量已达到4.7万台,较2025年底增长了约27%。据行业媒体预测,今年将会突破10万台规模。当行业从“千台级”冲向“十万台级”,任何一微秒的偏差都会被放大成灾难。
先讲个故事。
某自动驾驶团队路测,时速不过30,整车20多个节点挂在CAN上——主控、雷达、动力、安全冗余,全靠CAN通信。然后,车突然“卡死”了。方向盘助力失效、电控刹车延迟、仪表盘黑屏。
工程师拔掉主控电源,用手刹把车滑停,全员脸都白了。
重启后一切正常。但只要车速上来、节点通信变密集,CAN总线就开始“雪崩式掉节点”。最先掉的是主控,接着是雷达,然后动力模块,最后所有节点都Bus-Off。
这就是CAN总线最危险的状态机级联:一个节点频繁发送失败,进入Error-Passive,再继续失败就Bus-Off彻底断线。其他节点收不到ACK确认,也开始进入错误计数,整个网络像多米诺骨牌一样全掉了。
风暴的起点是什么?
只是位时序里一微秒的采样点偏差。
主控设备用的是STM32F407,其他节点用的是TCAN芯片,两边的CAN时序配置看起来“差不多”,但换算成采样点位置,相差了将近1微秒。主控的采样点太靠前,其他节点的ACK信号“迟到了”一丢丢,主控就误判“无人响应”,错误计数狂飙,进入Bus-Off。它一掉线,其他节点跟着失去ACK,也开始掉线——整张网,塌了。
这里我想说一句:自动驾驶圈最爱吹的“冗余设计”“多重备份”“安全堡垒”,在CAN总线面前经常是纸糊的。你传感器冗余再多、算力再强,CAN总线一崩,全是睁眼瞎。一微秒,人的头发丝直径都不到,但在500kbps的CAN总线上,它就是一场事故的起点。
武汉那近百辆萝卜快跑集体趴窝,百度官方初步归结为“网络原因”,警方定性为“系统故障”。措辞的微小差异,背后是自动驾驶技术演进中被掩盖的脆弱性。
同济大学汽车学院教授朱西产在分析中指出,此次大面积停摆“更可能是车辆与后端云监管平台之间的通信出现异常,而非单车本身发生机械性或局部技术故障”。萝卜快跑客服也承认,故障源于“网络原因”。朱西产进一步点出了更扎心的现实:支持这些无人车运营的通信网络,“用的依然是消费级网络,卡顿、掉线无法避免”。
这恰恰暴露了CAN通讯架构更深层的隐患。车辆高度依赖云端指令,本地只保留了基本感知功能。通信链分三段——云端到T-Box、T-Box到网关、网关到控制器。平台显示“在线”,只能证明第一段是通的。一旦云网连接中断或定位丢失,系统就会触发“最小风险策略”——原地停车,双闪示警。后面的两段——网关到控制器、控制器到执行器——早已“失联”,车自然纹丝不动。
CAN通讯的“潜规则”是什么?
第一,CAN总线不是“接得上就能跑”,位时序必须精确一致。你以为插上插头就万事大吉?天真。
第二,采样点不是拍脑袋选的,要根据网络架构和线缆长度精算。很多团队连线缆长度都没量过就敢上路跑。
第三,一微秒的偏差,在低密度通信下“没事”,在高密度通信下就是事故起点。这就是为什么“重启就好了”——低速的时候节点少、通信稀疏,问题不暴露;一上高速、一跑起来,通信密集了,立刻就崩。
说得难听点,很多无人车的CAN总线设计,连工业级PLC的水平都达不到,却敢往高架上放。你以为你在测试自动驾驶?你是在用公共道路做CAN总线的压力测试。
好,就算CAN总线没崩,信号传过去了,无人车该动了吧?
不一定。
因为还有一套东西叫“最小风险策略”(Minimal Risk Condition, MRC)。用大白话翻译就是:系统一旦觉得自己“拿不准”了,就立刻停车。
听起来很安全对不对?问题在于——“拿不准”的门槛被设得太低了。
传感器识别置信度下降、信号灯异常无法确认路口状态、某个传感器的数据和其他传感器对不上——统统触发停车。
朱西产教授指出,此次大面积停摆“可能是车辆与后端云监管平台之间的通信出现异常,而非单车本身的机械性故障”。换句话说,车本身没坏,但后台跟车说“我不确定”,车就停了。
这就像你雇了一个司机,他开着开着突然说“老板我不确定前面能不能走”,然后直接把车横在马路中间,拉手刹,熄火,开门走人——你还得夸他“安全意识强”。
这里我想再说一句:无人驾驶行业最爱讲的一个词叫“安全冗余”。传感器冗余、计算单元冗余、执行器冗余,听起来像民航飞机一样可靠。但武汉这上百辆车同时趴窝,说明什么?说明你的“冗余”可能是同一个云端、同一条网线、同一套软件版本。这叫冗余?这叫“一荣俱荣、一损俱损”。一个节点出错,全网瘫痪。这种架构设计,放银行系统里叫“单点故障”,放无人车上叫“高架上的定时炸弹”。
更让人无语的是传感器。
无人车上的传感器:激光雷达、毫米波雷达、摄像头各有各的“偏科”。
激光雷达擅长测距,但镜面一沾泥巴就“失明”;
摄像头看得清颜色和纹理,但逆光、暗光、强反射一来就抓瞎;
毫米波雷达不怕雨雾,但遇到金属物体就容易误报。
它们就像三个各怀绝技的“偏科生”,谁都离不了谁,但谁都不全面。组合感知的真正难点正在于此:当三个传感器对同一个物体给出矛盾信息时,系统听谁的?如果某一传感器短暂失效,系统该“信任”其他传感器继续运行,还是“宁可信其有不可信其无”直接停车?
更致命的是,不同传感器对同一个物体的“重要性判断”可能完全不同。一个传感器认为是“可轻微接触的软性障碍物”,另一个传感器认为是“必须完全避让的硬障碍”。当系统无法调和这种矛盾时,唯一的“安全”选择就是停车。
系统“看见”了,但没“看懂”——激光雷达扫出了轮廓,摄像头拍到了形状,但扭曲后的形态超出了识别库的认知范围。
你管这叫“感知”?这叫“猜”。
2025年12月旧金山全城停电事件,把“急停逻辑”的荒诞推向极致。变电站火灾导致交通信号灯大面积失效,Waymo无人驾驶车辆在多个路口停滞不前,集体开启双闪。Waymo回应称,系统预设将失效信号灯视为“四向停车”场景——问题在于停电规模远超预期,车辆反复确认路口安全状态,耗时过长触发了最小风险策略——原地停车。这些车没有“坏”,它们在严格执行系统设定的“安全兜底”。但当大量车辆同时触发同一个“安全策略”,它们不是“死了”,而是“进入了系统认为安全的状态”——停在路中间。
传感器“偏科”的潜规则是:行业在宣传时永远展示“最优场景”——大晴天、标线清晰、无遮挡。但真实道路全是“最差场景”——暴雨、逆光、施工、乱窜的电动车。你拿最优场景训练的模型,去跑最差场景的路,不出事才怪。
武汉那晚,上百辆车集体趴窝,行业专家说这是“主动触发的安全防护操作”。好一个“主动”。乘客被困高架,SOS打不通,这叫“主动”?这叫“系统说‘我害怕’,然后合法地当起了路障”。
总结:
平台显示“在线”,车就是不动。
CAN总线说:一微秒的偏差,全网瘫痪。
急停逻辑说:我不确定,所以我停了。
传感器说:我偏科,我猜的,我错了。
三个系统各说各话,最后买单的是谁?是困在高架上的乘客,是被堵在路上的司机,是半夜被叫出来拖车的交警。
无人驾驶行业最喜欢拿“安全”说事——系统停车是因为“安全第一”,触发保护机制是因为“安全冗余”,不动是因为“最小风险策略”。听起来滴水不漏,但“安全”什么时候成了系统设计缺陷的遮羞布?
真正的高阶自动驾驶,必须具备“失效安全”能力——主系统崩溃,本地备用模块立即接管,执行最小风险策略:减速、打双闪、缓慢靠边停车。这是行业共识,也是安全底线。



