ROS建模:一起从零手写URDF模型

发布时间:2024年01月21日

1、机器人的定义与组成

2、URDF建模方法

link的描述部分:

其中geometry中参数origin的xyz单位为: m,其描述的是相对于坐标系的平移变换;

rpy单位为:弧度,其描述的是相对于坐标系下的旋转偏移

collision是指碰撞属性,也有着几何参数,图中的绿色方框就是cylinder圆柱体,可设置长和半径,主要是描述的区域不同了,与mesh中的stl文件模型相比,这个定义可以减少计算量,因为碰撞检测的计算是十分耗时的,所以将实际模型用绿色方框代替,来做简化操作。

当然,也可以用实际模型来做计算,只要将cylinder换成mesh实际模型即可

惯性矩阵图中没有展示出来(省略了),如果实际模型的几何不规则,那么需要借助第三方的工具来进行输出,比如SW等等,可以帮助我们完成计算,后面会进行介绍。

?joint的描述部分:

link1和link2两个连杆之间坐标系的运动关系就是靠joint关节来产生的运动类型

其中name可以自定义,type是指运动类型,下面注意:
在ROS中,一个joint必须只能连接2个连杆,不能连接3个及以上的连杆,也不能连接1个连杆。

在上图中,link1就是parent,而link2就是child,origin描述了2个连杆之间的坐标变换关系,axis描述了关节对于的旋转轴,limit是指限位,上下限为(-180°,180°),上限的速度设置的是1.0,因为revolute是含限位的。

?robot的描述部分:

整个URDF模型的最顶层的标签叫做robot,其中name可以自定义,注意所有的连杆和关节标签必须在robot中进行描述,在别处描述是不行的。

3、从零手写移动机器人的URDF模型

下面开始在linux系统中进行操作:

?

文章来源:https://blog.csdn.net/qq_54900679/article/details/135726348
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。