ROS小车三轴全向轮底座运动学分析

914无人机创新实验室上课了。
最近几天时间里,实验室的小伙伴研究了ROS小车的三轴全向轮底座的运动学原理,并稍有收获,现加以整理记录。


一、全向轮基础知识


全向轮由于能够向着与轴承垂直的方向运动,同时能依靠从动轮向着与轴承的平行方向运动而得名,通过这种*组装的ROS小车可实现不旋转的前后移动、左右移动,甚至任意角度的移动,带给小车极大的灵活性。
一种经典的三轴全向轮底座一般由三个全向轮组成,其结构如下图:
ROS小车三轴全向轮底座运动学分析

以此建立的底座运动模型如下图所示:
ROS小车三轴全向轮底座运动学分析
其中,XOY直角坐标系是小车自身的坐标系(在此就不讨论小车坐标系与世界坐标系的关系),X轴正方向为小车的正方向,Y轴正方向为小车的右方向,ω为绕Z轴旋转的正方向,A、B、C分别为三个全向轮,旁边的十字箭头为全向轮的运动方向,较长的是主运动方向,较短的为全向轮的从动轮运动方向。


二、三轴全向轮底座运动学分析


网上有很多的文章讲解该模型的运动学原理,但一上来就放公式,放矩阵,不从原理与实际分析,往往让人摸不着头脑。现就实验室的学习进行分析讨论。
①以上面的底座模型分析。当小车只向前运动,即小车只有X轴正方向上的速度Vx,此时C轮因与X轴垂直,其速度可忽略不计,只需依靠从动轮实现移动即可,因此Vc=0。对于A、B轮,因为两个轮不在同一作用点上,因此不能将Va和Vb的速度直接合成得Vx。应该是,要实现小车整体以Vx运动,每一个轮的合成速度都应是Vx。
ROS小车三轴全向轮底座运动学分析
上图中Va,Vb分别为A、B轮的正方向,虚线箭头方向分别为A、B轮的从动轮运动正方向。由上图可知,Va=-cosθ×Vx,Vb=cosθ×Vx。那为什么可以这样分解Vx呢。因为当A轮沿-Va运动,B轮沿Vb运动时,两个*成120°夹角,所以小车向前运动时对两个*沿上图虚箭头方向有一个挤压的趋势,此时A、B轮的从动轮就向虚箭头方向移动,对A轮有,从动轮和主动轮的两个速度合成就得到Vx,B轮也是如此。因此有Va=-cosθ×Vx,Vb=cosθ×Vx,Vc=0。
②当小车只向右移动,即小车只有沿Y轴方向上的速度Vy,每个轮的合成速度也等于Vy。因为Vc平行Vy且与Vy反向,所以Vc=-Vy。那只要Vc是不是就可以了呢?当然不行。在实际中,由于C轮不在小车的中心,当只给C轮速度而不给A、B轮速度时,小车无法走直线而是作不规则旋转。A、B轮的速度可以这样分解:
ROS小车三轴全向轮底座运动学分析同样,虚箭头的方向与大小就是小车在运动时从动轮的方向与大小,这样,虚箭头与实箭头的合成就等于Vy,所以有Va=sinθ×Vy,Vb=sinθ×Vy。
③当小车只以ω角速度原地旋转时,由角速度转线速度的公式得:Va=Ra×ω,Vb=Rb×ω,Vc=Rc×ω,其中,Ra、Rb和Rc分别为A、B和C轮到小车底座中心的距离,一般Ra=Rb=Rc=R。
④当Vx、Vy和ω同时作用于小车时,将①②③算得的结果加起来即可,此时便可得到下面的传说中的三轴全向轮底座运动学公式:
ROS小车三轴全向轮底座运动学分析
又根据上面的模型图求得θ=30°,因此又可以得到:
ROS小车三轴全向轮底座运动学分析
到这里,该模型的运动学原理就讲完了。需要注意的是,建立的坐标系不同,上面的公式会有些许的差异,但分析方法是不变的。同时这里并没有对小车自身的坐标系与世界坐标系的关系与转换进行讨论,需要学习的朋友可另行寻找。
今天的课就讲到这里了,有什么讲得不对的地方欢迎留言讨论。