Nav2导航中的阿克曼计算

发布时间:2024年01月23日

非汽车专业,有误之处烦请回复指正。

1 基本概念

前轮转向的阿克曼小车。忽略左右轮的转角差,简化为自行车模型。如图:
在这里插入图片描述

可看到:

  • 当前轮内转角为 α \alpha α时,前轮运动的旋转中心在前轮中垂线上,而后轮不能转向,所以后轮运动旋转中心就在后轮轴线上。因此小车的运动旋转中心O是图中两条蓝色线的交点。
  • 根据几何关系可以知道 θ \theta θ = α \alpha α
  • 根据小车的前后轴距L,可以算出O点与内侧后轮中心距离 R = L / t a n ( α ) R=L/tan(\alpha) R=L/tanα
  • 后面在做简化到点的时候,会用两后轮的中心C点(为什么我也不知道,原来我用的是矩形中心,但小车供应商给的驱动用的是C点)。C点与旋转中心O的距离是 R + W / 2 R+W/2 R+W/2,其中W是后轴两轮中心距。

2 问题的提出

阿克曼车型在Nav2导航中需要用到的计算包括:

1.1 根据反馈信息估算当前位置,发布odom

  • 需要根据上一次计算周期的坐标,结合小车当前的前进线速度( V x V_x Vx?)和前轮方向转角( α \alpha α),估算小车当前的位置。
  • 上位机程序一般可以读到小车底层控制传上来的速度 V x V_x Vx?(或根据车轮电机编码器信号可求得)和内转角 α \alpha α(或根据转向电机编码器信号可求得)。
  • 这时就把小车简化为一个质点(上图C点),它绕着O点在旋转,线速度就是小车前进速度( V x V_x Vx?),旋转角速度是线速度除以旋转半径 ω = V x R + W / 2 = V
文章来源:https://blog.csdn.net/vmt/article/details/135766602
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。