ROS机械臂开发:创建机器人URDF模型
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ROS机械臂开发:创建机器人URDF模型相关的知识,希望对你有一定的参考价值。
参考技术AURDF是一种使用XML格式描述的机器人模型文件
<link>标签
一个典型的link标签如下:
(注意长度单位是米,角度单位是弧度)
<collision>标签描述了碰撞属性,如下图红色框(圆柱体)所示,当进入框内时就会认为发生碰撞,这是为了加速碰撞检测做的一种简化
<joint>标签
每个joint连接两个link,其中的origin是相对于上一个joint的origin描述的,而上面的<link>标签中的origin是相对于joint坐标系表达的,也就是说在机器人运动过程中, 每个连杆的joint和link坐标系是相对静止的 ,理解这一点很重要。
<robot>标签
整个模型由 <robot>根标签 包含,一个完整的机器人模型,由一系列<link>和<joint>组成
URDF建模存在的问题
由此产生了URDF的改进版本:xacro模型文件,它具有如下优点:
常量定义
常量使用
数学计算
宏定义
宏调用
文件包含
比如传感器一个文件,机器人本体一个文件,移动底盘一个文件,用一个文件include三个文件拼在一起
以一个6轴机器人为例,下图是在rviz中加载xacro文件后的显示
包含可视化,惯性矩阵,碰撞检测三个部分
下面是在rviz中可视化该模型的launch文件,
真实的机械臂不会是这样的圆柱、方块组成的简单模型,真实场景是购买到厂商机械臂本体后,对方给你一个3D模型文件,如.stp文件,需要solidworks转成urdf导入ROS中使用。
(2)修改display.launch文件中的urdf文件路径
打开rviz后,将Fixed frame更改为base_link,点击Add,添加RobotModel
以上是关于ROS机械臂开发:创建机器人URDF模型的主要内容,如果未能解决你的问题,请参考以下文章