第四节:里程计模型——两轮差速、阿克曼、全向轮与标定方法
各位同学,大家好。今天我们来聊聊里程计模型。说实话,里程计是AMR最基础的感知手段,没有之一。我见过不少团队,激光雷达选得顶级,IMU也用的工业级,结果定位精度就是上不去。最后查来查去,问题出在里程计模型上——要么模型选错了,要么根本没做标定。
嗯,这节课我们就把这四种主流模型掰开揉碎讲清楚。你想想看,搞懂了这些,你就能从底层理解机器人是怎么“猜”自己位置的。
4.1 两轮差速模型
这是最经典的模型,扫地机器人、AGV小车都在用。说白了,就是左右两个轮子独立驱动,通过转速差实现转向。
核心公式:
v = (v_left + v_right) / 2
ω = (v_right - v_left) / L
其中L是轮距,v_left和v_right分别是左右轮线速度。
我的经验:实际项目中,L这个参数特别容易出错。我遇到过一家供应商,给的图纸上轮距标的是500mm,结果实测是498mm。差了2mm,短距离看不出来,跑个100米,航向角能偏5度以上。所以,L一定要自己拿卡尺量,别信图纸。
位姿更新(离散形式):
x' = x + v * cos(θ) * Δt
y' = y + v * sin(θ) * Δt
θ' = θ + ω * Δt
避坑指南:我曾经在瓷砖地面上跑差速小车,发现里程计漂移特别快。后来发现是轮胎打滑。两轮差速模型假设轮子纯滚动,一旦打滑,模型就失效了。建议在光滑地面运行时,适当降低加速度,或者加入打滑检测。
4.2 阿克曼模型
阿克曼模型就是汽车模型。前轮转向,后轮驱动。这个模型在AGV和室外AMR上很常见。
核心思想:所有车轮的轴线交于一点(瞬时转动中心)。
运动学方程:
v = 后轮中心速度
ω = v * tan(δ) / L_wb
其中δ是前轮转向角,L_wb是轴距。
| 参数 | 说明 | 常见取值 |
|---|---|---|
| L_wb | 轴距 | 0.5~1.2m(室内AGV) |
| δ_max | 最大转向角 | 30°~45° |
| v_max | 最大线速度 | 1.0~2.0 m/s |
注意:阿克曼模型有个重要约束——不能原地旋转。最小转弯半径由轴距和最大转向角决定。我见过有人想用阿克曼底盘做原地掉头,结果把转向机构别坏了。记住,阿克曼不是全向的。
4.3 全向轮模型
全向轮模型,说白了就是能“横着走”。麦克纳姆轮和全向轮都属于这一类。每个轮子可以独立控制速度和方向。
麦克纳姆轮运动学(4轮):
ω1 = (v_x - v_y - ω * (a + b)) / R
ω2 = (v_x + v_y + ω * (a + b)) / R
ω3 = (v_x + v_y - ω * (a + b)) / R
ω4 = (v_x - v_y + ω * (a + b)) / R
其中a是轮子到中心的纵向距离,b是横向距离,R是轮子半径。
个人经验:全向轮模型看着漂亮,实际用起来坑不少。我做过一个项目,用麦克纳姆轮在工厂里跑,地面有点不平,结果轮子上的小辊子磨损特别快。三个月就得换一套。而且全向轮对地面平整度要求很高,稍微有个小石子,轮子就会跳起来,里程计瞬间就乱了。
三种模型对比:
| 模型 | 自由度 | 能否原地旋转 | 地面要求 | 典型应用 |
|---|---|---|---|---|
| 两轮差速 | 2 | 能 | 中等 | 室内AGV、扫地机 |
| 阿克曼 | 2 | 不能 | 低 | 室外AMR、汽车 |
| 全向轮 | 3 | 能 | 高 | 精密装配、仓库 |
4.4 里程计标定方法
模型再好,参数不准也是白搭。里程计标定,说白了就是校准那些物理参数——轮距、轮径、轴距等等。
常用标定方法:
- 直线标定法:让机器人走一段已知距离的直线,对比里程计读数与实际距离,修正轮径。
- 旋转标定法:让机器人原地旋转360度,对比里程计角度变化,修正轮距。
- UMBmark标定法:走一个矩形路径,通过起点和终点的偏差,同时修正轮径和轮距。
我的建议:UMBmark法是我最常用的。具体做法是让机器人走一个2m×2m的方形,重复5次。记录每次的终点位置偏差。然后通过最小二乘法拟合出轮径和轮距的修正系数。我曾经用这个方法,把一台AGV的定位误差从5%降到了0.3%以内。
标定流程:
1. 准备场地:画一个2m×2m的正方形,标记起点
2. 让机器人从起点出发,沿正方形走一圈
3. 记录终点位置(x, y, θ)
4. 重复5~10次
5. 计算平均偏差
6. 代入公式求解修正系数
7. 更新参数,重新测试
注意:标定环境要和实际运行环境一致。我曾经在环氧地坪上标定,结果机器换到水泥地面跑,误差又回来了。因为不同地面的摩擦系数不同,打滑程度也不同。所以,标定完一定要在实际场地验证。
知识体系总览
下面这张图,是我自己整理的里程计模型知识框架。你可以把它当作学习地图。
好了,这节课的内容就到这里。里程计模型是AMR定位的基石,选对模型、做好标定,你的定位系统就成功了一半。剩下的,就是和激光雷达、IMU做融合了。