Unified Robot Description Format,简称为URDF(标准化机器人描述格式),是一种用于描述机器人及其部分结构、关节、自由度等的XML格式文件。
一、创建第一个URDF文件
将要创建的URDF文件描述的是一种最常见的移动机器人,它有四个轮子、一个带有抓取器的手臂。
为了打好基础,我们先做一个带有四个轮子的机器人底座。在 chapter7_tutorials/robot1_description/urdf 文件夹创建一个新文件并命名为robot1.urdf,其内容如下:
二、常见标签说明
连接(link)标签
标签
功能
连接的可视化、碰撞和惯性属性设置
设置连接的可视化属性
设置连接的碰撞计算属性
设置连接的惯性属性
输入模型的形状。提供box、cylinder、sphere等形态
设置相对于连接相对坐标系的移动和旋转
设置连接的颜色和纹理
连接重量(单位:kg)的设置
关节(joint)标签
标签
功能
与连接的关系和关节类型的设置
关节的父连接
关节的子连接
将父连接坐标系转换为子连接坐标系
设置旋转轴
设置关节的速度、力和半径(仅当关节是revolute或prismatic时)
transmission标签
是与ROS-CONTROL一起运行所必须的标签,它输入关节与舵机之间的命令接口。
标签
功能
设置关节和舵机之间的变量
设置力的传递方式的形状
设置关节信息设置
设置硬件接口
设置舵机信息
设置舵机与关节之间的齿轮比
注:这里的起点位置是相对与父连杆的位置,并不是绝对坐标。另外连接又称连杆。
三、解释文件格式
如你在代码中所见,有两种用于描述机器人几何结构的基本字段:连接(link)和关节(joint)。
第一个连接的名字是base_link(基本连接),这个名字在文件中必须唯一:
link name:定义连接名称为base_link
visual:让定义的物体结构可见
geometry:定义几何形状(圆柱体、立方体、球体和网格)为box,尺寸为0.2*0.3*0.1
origin:rpy-起点位置无位移,xyz-绕z轴旋转
material:定义材质(颜色和纹理),这里只定义了颜色为rgba="1 1 1 1"
然后使用以下代码定义关节&