轮式运动学模型总结

介绍电机驱动轮子移动的机器人,即轮式机器人的运动学模型,重点分析两轮差速、四轮差速、阿克曼、全向运动4个运动模型的基本原理和数学模型。

一、两轮差速模型(Two-Wheel Differential Drive)

1.1 基本原理

结构特点:

  • 两个主动驱动轮分别位于底盘左右两侧
  • 前方/后方配有1-2个万向轮作为支撑
  • 通过控制左右轮的速度差实现转向

运动特性:

  • ✅ 可原地旋转(左右轮反向等速)
  • ✅ 可走任意曲线轨迹
  • ❌ 不能侧向平移
  • ❌ 速度向量约束:vy=0v_y = 0

物理基础:

  • 驱动力来源:地面对轮子的滚动摩擦力
  • 转向原理:左右轮线速度差产生角速度

1.2 数学模型

1.2.1 坐标系定义

  • 全局坐标系{X,Y}\{X, Y\}
  • 机器人坐标系{x,y}\{x, y\},x轴指向前进方向
  • 状态变量ξ=[x,y,θ]T\xi = [x, y, \theta]^T

1.2.2 运动学约束

无侧向滑动约束:

x˙sinθy˙cosθ=0\dot{x} \sin\theta - \dot{y} \cos\theta = 0

速度分解:

{x˙=vxcosθy˙=vxsinθθ˙=ωz\begin{cases} \dot{x} = v_x \cos\theta \\ \dot{y} = v_x \sin\theta \\ \dot{\theta} = \omega_z \end{cases}

1.2.3 前向运动学(Forward Kinematics)

输入: 左右轮线速度 VL,VRV_L, V_R
输出: 底盘整体速度 vx,ωzv_x, \omega_z

几何关系推导:

设左右轮在时间 Δt\Delta t 内走过的路程分别为 sL,sRs_L, s_R

{sR=VRΔt=θ(r+d2)sL=VLΔt=θ(rd2)\begin{cases} s_R = V_R \cdot \Delta t = \theta \cdot (r + \frac{d}{2}) \\ s_L = V_L \cdot \Delta t = \theta \cdot (r - \frac{d}{2}) \end{cases}

其中:

  • dd:左右轮轴距
  • rr:旋转中心到底盘中心的距离
  • θ\theta:旋转角度

上式相减得:

VRVL=θΔtd=ωzdV_R - V_L = \frac{\theta}{\Delta t} \cdot d = \omega_z \cdot d

因此:

ωz=VRVLd\omega_z = \frac{V_R - V_L}{d}

上式相加得:

VR+VL=θΔt2r=ωz2rV_R + V_L = \frac{\theta}{\Delta t} \cdot 2r = \omega_z \cdot 2r

底盘中心线速度:

vx=ωzr=VR+VL2v_x = \omega_z \cdot r = \frac{V_R + V_L}{2}

矩阵形式:

[vxωz]=[12121d1d][VLVR]\begin{bmatrix} v_x \\ \omega_z \end{bmatrix} = \begin{bmatrix} \frac{1}{2} & \frac{1}{2} \\ -\frac{1}{d} & \frac{1}{d} \end{bmatrix} \begin{bmatrix} V_L \\ V_R \end{bmatrix}

1.2.4 逆向运动学(Inverse Kinematics)

输入: 底盘目标速度 vx,ωzv_x, \omega_z
输出: 左右轮目标速度 VL,VRV_L, V_R

对前向运动学矩阵求逆:

[VLVR]=[1d21d2][vxωz]\begin{bmatrix} V_L \\ V_R \end{bmatrix} = \begin{bmatrix} 1 & -\frac{d}{2} \\ 1 & \frac{d}{2} \end{bmatrix} \begin{bmatrix} v_x \\ \omega_z \end{bmatrix}

展开形式:

{VL=vxd2ωzVR=vx+d2ωz\begin{cases} V_L = v_x - \frac{d}{2} \omega_z \\ V_R = v_x + \frac{d}{2} \omega_z \end{cases}

1.2.5 轮子线速度计算

编码器反馈计算:

V=2πRNPMΔtV = \frac{2\pi R}{N \cdot P} \cdot \frac{M}{\Delta t}

其中:

  • MM:采样周期内编码器计数值
  • PP:编码器线数(一圈总脉冲数)
  • NN:电机减速比
  • RR:轮子半径
  • Δt\Delta t:采样周期

二、四轮差速模型(Four-Wheel Differential Drive)

2.1 基本原理

结构类型:

  1. 履带式:左右两侧各用履带连接前后轮
  2. 机械连杆式:通过链条/连杆同步前后轮
  3. 四电机独立驱动:每个轮子独立电机控制

运动特性:

  • ✅ 载重能力强
  • ✅ 稳定性好(四点支撑)
  • ❌ 存在侧向滑动
  • ❌ 里程计精度低于两轮差速

2.2 数学模型

2.2.1 理想情况(无侧滑)

左右轮距 >> 前后轮距 时,可近似为两轮差速:

[vxωz]=[141414141d1d1d1d][V1V2V3V4]\begin{bmatrix} v_x \\ \omega_z \end{bmatrix} = \begin{bmatrix} \frac{1}{4} & \frac{1}{4} & \frac{1}{4} & \frac{1}{4} \\ -\frac{1}{d} & \frac{1}{d} & -\frac{1}{d} & \frac{1}{d} \end{bmatrix} \begin{bmatrix} V_1 \\ V_2 \\ V_3 \\ V_4 \end{bmatrix}

其中 V1,V2,V3,V4V_1, V_2, V_3, V_4 分别为左前、右前、右后、左后轮速度。

2.2.2 侧向滑动分析

质心(COM)与几何中心(COG)不重合时:

设质心偏移量为 dcxd_{cx}(沿x轴),转弯时质心处的侧向速度:

vcy=ωzdcxv_{cy} = \omega_z \cdot d_{cx}

结论:

  • ωz0\omega_z \neq 0dcx0d_{cx} \neq 0 时,必然产生侧向滑动
  • 侧滑导致里程计累积误差增大

2.2.3 考虑侧滑的运动学模型

完整的速度向量:

[vxvyωz]=[14141414k1k2k3k41d1d1d1d][V1V2V3V4]\begin{bmatrix} v_x \\ v_y \\ \omega_z \end{bmatrix} = \begin{bmatrix} \frac{1}{4} & \frac{1}{4} & \frac{1}{4} & \frac{1}{4} \\ k_1 & k_2 & k_3 & k_4 \\ -\frac{1}{d} & \frac{1}{d} & -\frac{1}{d} & \frac{1}{d} \end{bmatrix} \begin{bmatrix} V_1 \\ V_2 \\ V_3 \\ V_4 \end{bmatrix}

其中 kik_i 为侧滑系数,需通过实验标定。


三、阿克曼模型(Ackermann Steering)

3.1 基本原理

结构特点:

  • 前轮转向,后轮驱动(经典汽车结构)
  • 前轮通过阿克曼梯形机构实现差速转向
  • 驱动方式:前驱/后驱/四驱

阿克曼转向几何:

  • 转弯时,内外前轮转角不同
  • 所有轮子的转向轴线交于同一点(瞬时转向中心ICR)
  • 避免轮胎侧滑,减少磨损

运动特性:

  • ✅ 高速稳定性好
  • ✅ 适合长距离直线行驶
  • ❌ 不能原地旋转
  • ❌ 最小转弯半径 Rmin>0R_{min} > 0
  • ❌ 不能走直角路径

3.2 数学模型

3.2.1 后驱阿克曼前向运动学

后轮速度关系(与两轮差速相同):

[vbackωback]=[12121d1d][VLVR]\begin{bmatrix} v_{back} \\ \omega_{back} \end{bmatrix} = \begin{bmatrix} \frac{1}{2} & \frac{1}{2} \\ -\frac{1}{d} & \frac{1}{d} \end{bmatrix} \begin{bmatrix} V_L \\ V_R \end{bmatrix}

前轮转角约束:

δ=arctan(lωbackvback)\delta = \arctan\left(\frac{l \cdot \omega_{back}}{v_{back}}\right)

其中:

  • δ\delta:前轮平均转角
  • ll:前后轴距(轴距)
  • vbackv_{back}:后轴中心线速度
  • ωback\omega_{back}:后轴角速度

3.2.2 阿克曼转向几何关系

左右前轮转角关系:

cotδLcotδR=dl\cot\delta_L - \cot\delta_R = \frac{d}{l}

其中:

  • δL,δR\delta_L, \delta_R:左右前轮转角
  • dd:左右轮距
  • ll:前后轴距

转弯半径:

R=ltanδR = \frac{l}{\tan\delta}

最小转弯半径:

Rmin=ltanδmaxR_{min} = \frac{l}{\tan\delta_{max}}

其中 δmax\delta_{max} 为前轮最大转角(通常约30°-40°)。

3.2.3 完整运动学方程

后轴中心速度:

[x˙backy˙backθ˙]=[vbackcosθvbacksinθvbackltanδ]\begin{bmatrix} \dot{x}_{back} \\ \dot{y}_{back} \\ \dot{\theta} \end{bmatrix} = \begin{bmatrix} v_{back} \cos\theta \\ v_{back} \sin\theta \\ \frac{v_{back}}{l} \tan\delta \end{bmatrix}

车辆中心速度(后轴中心前移 l/2l/2):

[x˙y˙θ˙]=[vbackcosθ+l2ωsinθvbacksinθl2ωcosθω]\begin{bmatrix} \dot{x} \\ \dot{y} \\ \dot{\theta} \end{bmatrix} = \begin{bmatrix} v_{back} \cos\theta + \frac{l}{2} \omega \sin\theta \\ v_{back} \sin\theta - \frac{l}{2} \omega \cos\theta \\ \omega \end{bmatrix}

其中 ω=vbackltanδ\omega = \frac{v_{back}}{l} \tan\delta


四、全向模型(Omnidirectional Drive)

4.1 基本原理

麦克纳姆轮结构:

  • 轮子外圈安装多个斜向滚轴
  • 滚轴角度:45°(常见)或90°
  • 四个轮子组合实现全向移动

45°麦轮布局:

1
2
3
4
左前轮:滚轴左斜45°  ╱
右前轮:滚轴右斜45° ╲
右后轮:滚轴左斜45° ╱
左后轮:滚轴右斜45° ╲

运动特性:

  • 三自由度独立控制vx,vy,ωzv_x, v_y, \omega_z 相互独立
  • ✅ 可侧向平移(侧方停车简单)
  • ✅ 运动最灵活
  • ❌ 结构复杂,成本高
  • ❌ 45°麦轮运动有颠簸

4.2 数学模型

4.2.1 单个麦轮速度分解

45°麦轮的速度分解:

设第 ii 个轮子的滚轴方向与x轴夹角为 αi\alpha_i,轮子线速度为 ViV_i

Vi=vxsinαi+vycosαi+ωzriV_i = v_x \sin\alpha_i + v_y \cos\alpha_i + \omega_z \cdot r_i

其中:

  • vx,vyv_x, v_y:底盘在机器人坐标系下的线速度分量
  • ωz\omega_z:底盘角速度
  • rir_i:第 ii 个轮子到底盘中心的距离

4.2.2 四轮麦克纳姆逆向运动学

标准布局(45°麦轮):

[V1V2V3V4]=[11(a+b)11(a+b)11(a+b)11(a+b)][vxvyωz]\begin{bmatrix} V_1 \\ V_2 \\ V_3 \\ V_4 \end{bmatrix} = \begin{bmatrix} 1 & -1 & -(a+b) \\ 1 & 1 & (a+b) \\ 1 & 1 & -(a+b) \\ 1 & -1 & (a+b) \end{bmatrix} \begin{bmatrix} v_x \\ v_y \\ \omega_z \end{bmatrix}

其中:

  • V1,V2,V3,V4V_1, V_2, V_3, V_4:左前、右前、右后、左后轮速度
  • aa:底盘中心到前后轴的距离
  • bb:底盘中心到左右轮的距离

4.2.3 四轮麦克纳姆前向运动学

求伪逆得:

[vxvyωz]=14[111111111a+b1a+b1a+b1a+b][V1V2V3V4]\begin{bmatrix} v_x \\ v_y \\ \omega_z \end{bmatrix} = \frac{1}{4} \begin{bmatrix} 1 & 1 & 1 & 1 \\ -1 & 1 & 1 & -1 \\ -\frac{1}{a+b} & \frac{1}{a+b} & -\frac{1}{a+b} & \frac{1}{a+b} \end{bmatrix} \begin{bmatrix} V_1 \\ V_2 \\ V_3 \\ V_4 \end{bmatrix}

4.2.4 90°麦轮模型

优势: 减少运动颠簸

逆向运动学矩阵:

[V1V2V3V4]=[01(a+b)10(a+b)01(a+b)10(a+b)][vxvyωz]\begin{bmatrix} V_1 \\ V_2 \\ V_3 \\ V_4 \end{bmatrix} = \begin{bmatrix} 0 & 1 & (a+b) \\ 1 & 0 & (a+b) \\ 0 & 1 & -(a+b) \\ 1 & 0 & -(a+b) \end{bmatrix} \begin{bmatrix} v_x \\ v_y \\ \omega_z \end{bmatrix}


五、统一运动学框架

5.1 通用状态空间模型

位姿状态:

ξ=[x,y,θ]T\xi = [x, y, \theta]^T

速度输入:

u=[vx,vy,ωz]Tu = [v_x, v_y, \omega_z]^T

运动学微分方程:

ξ˙=[cosθsinθ0sinθcosθ0001]u\dot{\xi} = \begin{bmatrix} \cos\theta & -\sin\theta & 0 \\ \sin\theta & \cos\theta & 0 \\ 0 & 0 & 1 \end{bmatrix} u

离散化(欧拉法):

ξk+1=ξk+[vxcosθvysinθvxsinθ+vycosθωz]kΔt\xi_{k+1} = \xi_k + \begin{bmatrix} v_x \cos\theta - v_y \sin\theta \\ v_x \sin\theta + v_y \cos\theta \\ \omega_z \end{bmatrix}_k \Delta t


5.2 各模型速度约束对比

模型 vxv_x vyv_y ωz\omega_z 约束条件
两轮差速 vy=0v_y = 0
四轮差速 ≈0 vy0v_y \approx 0(有侧滑)
阿克曼 vy=0,ωvxtanδmaxlv_y = 0, |\omega| \leq \frac{v_x \tan\delta_{max}}{l}
全向 无约束

六、轮式里程计(Wheel Odometry)

6.1 基本原理

定义: 利用编码器 + 运动学模型 + 航迹推演算法估计位姿

航迹推演公式:

[xk+1yk+1θk+1]=[xkykθk]+[vxcosθkvysinθkvxsinθk+vycosθkωz]Δt\begin{bmatrix} x_{k+1} \\ y_{k+1} \\ \theta_{k+1} \end{bmatrix} = \begin{bmatrix} x_k \\ y_k \\ \theta_k \end{bmatrix} + \begin{bmatrix} v_x \cos\theta_k - v_y \sin\theta_k \\ v_x \sin\theta_k + v_y \cos\theta_k \\ \omega_z \end{bmatrix} \Delta t

6.2 误差来源

  1. 编码器量化误差
  2. 运动学模型参数误差(轮距 dd、轮径 RR
  3. 轮子打滑(侧滑、空转)
  4. 地面不平
  5. 累积误差(时间越长误差越大)

6.3 误差协方差传播

线性化误差传播:

Σk+1=FkΣkFkT+Qk\Sigma_{k+1} = F_k \Sigma_k F_k^T + Q_k

其中:

  • FkF_k:雅可比矩阵
  • QkQ_k:过程噪声协方差

七、各模型性能对比总结

特性 两轮差速 四轮差速 阿克曼 全向
灵活性 ★★★★☆ ★★★☆☆ ★★☆☆☆ ★★★★★
稳定性 ★★☆☆☆ ★★★★☆ ★★★★★ ★★★☆☆
载重能力 ★★☆☆☆ ★★★★☆ ★★★★★ ★★☆☆☆
里程计精度 ★★★★☆ ★★★☆☆ ★★★★☆ ★★☆☆☆
成本 ★★★★★ ★★★☆☆ ★★★☆☆ ★☆☆☆☆
最小转弯半径 0 0 >0> 0 0
侧向移动
典型应用 教育/服务 工业AGV 无人驾驶 狭窄空间

八、关键公式速查表

两轮差速

[vxωz]=[12121d1d][VLVR]\begin{bmatrix} v_x \\ \omega_z \end{bmatrix} = \begin{bmatrix} \frac{1}{2} & \frac{1}{2} \\ -\frac{1}{d} & \frac{1}{d} \end{bmatrix} \begin{bmatrix} V_L \\ V_R \end{bmatrix}

阿克曼转向

δ=arctan(lωv),R=ltanδ\delta = \arctan\left(\frac{l \cdot \omega}{v}\right), \quad R = \frac{l}{\tan\delta}

全向(45°麦轮)

[vxvyωz]=14[111111111a+b1a+b1a+b1a+b][V1V2V3V4]\begin{bmatrix} v_x \\ v_y \\ \omega_z \end{bmatrix} = \frac{1}{4} \begin{bmatrix} 1 & 1 & 1 & 1 \\ -1 & 1 & 1 & -1 \\ -\frac{1}{a+b} & \frac{1}{a+b} & -\frac{1}{a+b} & \frac{1}{a+b} \end{bmatrix} \begin{bmatrix} V_1 \\ V_2 \\ V_3 \\ V_4 \end{bmatrix}

航迹推演

[xk+1yk+1θk+1]=[xkykθk]+[vxcosθvysinθvxsinθ+vycosθωz]kΔt\begin{bmatrix} x_{k+1} \\ y_{k+1} \\ \theta_{k+1} \end{bmatrix} = \begin{bmatrix} x_k \\ y_k \\ \theta_k \end{bmatrix} + \begin{bmatrix} v_x \cos\theta - v_y \sin\theta \\ v_x \sin\theta + v_y \cos\theta \\ \omega_z \end{bmatrix}_k \Delta t


总结: 选择底盘模型需综合考虑应用场景、成本、性能需求。两轮差速适合教育和小型服务机器人,阿克曼适合高速长距离场景,全向适合狭窄空间精密操作。


轮式运动学模型总结
http://example.com/2025/12/08/底盘运动学模型/
作者
EthanYLiang
发布于
2025年12月8日
更新于
2025年12月8日
许可协议