导读|出厂验收 ±20 毫米,在露天堆场跑满三个月,同一个取货点偏了 11 公分。这台 AGV 小车的 3D 激光导航没坏,标定程序也没问题——是雷达下面那四个橡胶垫,把外参压歪了 0.8°。这篇把 0.8° 的账一段一段算清楚,也给工业自动化现场的复标周期一个说法。
这台 AGV 小车在露天堆场跑取放料,靠 3D 激光导航定位,出厂前在车间做了整套外参标定。
静置打点 200 次,残差最大 6 毫米;跑固定轨迹,重复定位 ±20 毫米。工业自动化的验收单上,这一项算优秀。
第三个月,操作工说"车停得越来越靠前"。
拿钢卷尺量:同一个取货点,车头比地面标记线多出 11 公分。换一台车、换一个点,仍然偏 10~12 公分。
方向一致、大小稳定——这不是随机误差,是系统性的。
现场做了一件事:每天早、中、晚各打点一次,同时记录雷达罩壳表面温度。
偏差确实和温度有关,但不跟着温度走:早上 22℃ 偏 6 公分,正午 55℃ 偏 11 公分,晚上降温后回不到 6 公分,停在 10 公分。
单向累积、回不去——这是"永久变形"的特征,不是"热胀冷缩"的特征。
这一句话,决定了后面所有的排查方向。

雷达支架是 6061 铝,装在钢制平台上,两个安装点间距 800 毫米。
铝的线膨胀系数 23×10^(-6)/K,钢 12×10^(-6)/K,差值 11×10^(-6)/K。从 20℃ 到 55℃,温差 35 K。
ΔL = 11×10^(-6) × 800 × 35 = 0.31 mm Δθ = arctan(0.31 ÷ 800) = 0.022°
8 米外:8000 × tan(0.022°) ≈ 3.1 毫米。
实测差 110 毫米,热膨胀只能解释 3 毫米,占 3% 不到。热漂真实存在,但它不是主因——就算把支架换成殷钢,也救不回来。

偏差随温度完全可逆,才可能是热;降温后回不去,热就可以排除。
现场数据是回不去,所以继续往下拆。
雷达通过四个 M6 橡胶减振柱装在一块 120 毫米见方的法兰上,垫子原始高度 15 毫米。
拆下来用卡尺量:靠阳光一侧两个垫子只剩 13.2 毫米,另两个还有 14.9 毫米。
差值 1.7 毫米,全部来自橡胶的压缩永久变形。
Δθ = arctan(1.7 ÷ 120) = 0.81°
这就是那 0.8° 的来源。它不是装配时没装平,是三个月里被"压"出来的。
橡胶垫在持续预压、户外紫外和臭氧环境下,永久变形率能到 12%~15%;15 毫米 × 12% = 1.8 毫米,与实测吻合。

三个原因叠在一起:
减振垫是耗材,不是结构件。它的高度会随时间变,而外参默认它不变。

把三项摊在一张表上看,主次立刻分明:
原因 | 角度贡献 | 8 米处误差 | 是否可逆 |
铝钢热膨胀(35 K) | 0.02° | 3 mm | 可逆 |
螺栓预紧衰减 + 微滑 | 0.08° | 11 mm | 部分可逆 |
减振垫不均匀蠕变 | 0.70° | 98 mm | 不可逆 |
合计 | 0.80° | 112 mm | — |
排查时先量垫子,比先怀疑算法省三天。
小角度下 Δd ≈ L × Δθ(弧度制)。0.8° = 0.01396 rad。
8 米处:8000 × 0.01396 = 111.7 毫米。一分不差,就是现场量到的 11 公分。

外参偏差 | 3 m | 5 m | 8 m | 10 m |
0.2° | 10 mm | 17 mm | 28 mm | 35 mm |
0.5° | 26 mm | 44 mm | 70 mm | 87 mm |
0.8° | 42 mm | 70 mm | 112 mm | 140 mm |
1.2° | 63 mm | 105 mm | 168 mm | 209 mm |
取货点一般离货架 6~8 米,0.3° 就已经吃掉 ±40 毫米的定位预算。
外参的容差不是"零点几度"这个量级,而是"零点零几度"。
俯仰 0.8° 影响前后方向;同时测到的偏航漂移是 0.35°,8 米处横向偏 49 毫米。
两个方向叠加,车在取货点前就是"往前多了 11 公分、往左偏了 5 公分"。
叉车货叉的进孔容差通常只有 ±30 毫米,这个量级必然对不上。
点云配准只做一件事:在似然场里找得分最高的位姿。
外参偏 0.8°,整片点云与地图错位 11 公分,墙面点落到了残差 10 公分以外。
内点率(残差 < 5 公分)从 0.82 掉到 0.41,得分峰值随之变平、变宽。

更早出现的信号是协方差:最大特征值 λmax 从 0.9 mm² 涨到 6.4 mm²,条件数 κ = λmax/λmin 从 3.1 涨到 21。
κ > 10 意味着这个方向的几何约束已经很弱,位姿在那个方向上"可以随便滑"。
堆场里堆垛边缘少、特征稀,外参偏差会把配准推进一个错误的局部极小值。
这时得分反而回升、协方差反而变小——车"自信地"停在了错的位置。
置信度不是线性的:外参小错时它报警,外参大错时它可能骗你。
车间 20℃、静止、无尘,标出来的外参只是"那个工况下"的真值。
户外要按温度区间加振动里程复标,工程上的做法是每 2000 小时或每 3 个月一次。
采购只问"减振效果好不好",没人问压缩永久变形率。
户外场景要选 ≤10% 的牌号,或者干脆用钢丝绳减振器、金属弹簧——它们不蠕变。
标定程序报"重投影残差 3 毫米",很多人就此签字。
残差小只说明靶标拟合得好,不说明外参可分辨。要看标定雅可比的条件数,κ 大就代表这组数据定不住这个角度。
雷达与 IMU 之间的外参也在漂,而且漂得更多——IMU 贴在车体上,温漂更明显。
两者不一致时融合会互相拉扯,典型症状是"低速准、高速飘"。
0.5 的阈值在夏天全报警、在冬天全放行,因为得分本身随环境特征密度变化。
正确做法是按内点率加协方差自适应,并且记录外参健康度,让阈值分清"是环境差,还是外参错"。

在堆场布 3 个已知坐标的反光柱,车每次回充电位(一天 2 次)自动对柱打靶 30 帧。
解算外参增量,与出厂值比对:偏差超 0.15° 报警,超 0.3° 自动写回并通知。
不停线、不进人,外参从"一次性工作"变成"日常维护项"。

把外参健康度作为权重喂给融合层:偏差 0.1° 以内权重 1.0,0.3° 降到 0.5,0.5° 以上停用雷达、交给 RTK 与里程计。
这样即使垫子又压歪了,车也是"精度下降",而不是"撞上货架"。
κ > 10 且持续 2 秒,判几何退化,切到 RTK 主导;κ 恢复后 3 秒再切回来。
切换一定要带滞回,否则会在边界上来回跳,比不切更糟。
把橡胶垫换成钢丝绳减振器,抗振性能相当,但没有压缩永久变形。
一次性改完,后面所有软件兜底都只是保险。
一台车的定位从 ±20 毫米掉到 11 公分,不是算法退化,是四个橡胶垫被压扁了 1.7 毫米。
判别三步:
外参是会老的。它不报错,只会慢慢把误差写进每一个取货动作里。
更新时间:2026-10-31
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight All Rights Reserved.
Powered By 61893.com 闽ICP备11008920号
闽公网安备35020302035593号