ROS学习——URDF机器人建模
什么是URDF
- Unified Robot Description Format,统一机器人描述格式
- ROS中一个非常重要的机器人模型描述格式
- 可以解析URDF文件中使用XML格式描述的机器人模型
- ROS同时也提供URDF文件的C++解析器
URDF机器人模型的内容
连杆 link
关节 joint
运动学参数 axis
动力学参数 dynamics
可视化模型 visual
碰撞检测模型 collision
URDF机器人模型的标签
①link标签
描述机器人某个刚体部分的外观和物理属性;
尺寸、颜色、形状、惯性矩阵、碰撞参数等
xml格式的描述
<link name="<link name>">
<!-- 描述机器人link部分的外观参数, 尺寸、颜色、形状等的外观信息 -->
<inertial>......</inertial>
<!-- 描述link的惯性参数,主要用到机器人动力学的运算部分 -->
<visual>......</visual>
<!-- 描述link的碰撞属性 -->
<collision>......</collision>
</link>
②joint标签
描述机器人关节的运动学和动力学属性;
包括关节运动的位置和速度限制;
根据关节运动形式,可以将起分为六种类型。
| 关节类型 | 描述 |
|---|---|
| continuous | 旋转关节,可以围绕单轴无限旋转 |
| revolute | 旋转关节,类似于continuous,但是有旋转的角度极限 |
| prismatic | 滑动关节,沿某一轴线移动的关节,带有位置极限 |
| planar | 平面关节,允许在平面正交方向上平移或者旋转 |
| floating | 浮动关节,允许进行平移、旋转运动 |
| fixed | 固定关节,不允许运动的特殊关节 |
xml描述格式
<joint name="<name of the joint>" type="<joint type>">
<parent link="parent_link"/>
<child link="child_link"/>
<!--关节的参考位置,用来校准关节的绝对位置-->
<calibration ....../>
<!--描述关节的物理属性,例如物理静摩擦力-->
<dynamics damping ....../>
<!--描述运动的一些极限值,包括关节运动的上下限位置,速度限制-->
<limit effort ....../>
......
</joint>
③robot标签
完整机器人模型的最顶层标签
link和joint标签都必须包含在robot标签内
xml格式描述
<robot name="name of the robot">
<link>......</link>
<link>......</link>
<joint>......</joint>
<joint>......</joint>
</robot>
一、创建URDF功能包
1、创建一个机器人建模的功能包
cd ~/catkin_ws/src
catkin_create_pkg mbot_description urdf xacro
2、创建机器人建模的功能包的文件结构
cd ~/catkin_Ws/src/mbot_description
mkdir urdf //存放机器人模型的URDF或xacro文件
mkdir meshes //放置URDF中引用的模型渲染文件
mkdir launch //保存相关启动文件
mkdir config //保存rviz的配置文件

本文详细介绍了ROS中统一机器人描述格式(URDF)的基础知识,包括其在机器人建模中的作用、内容及标签。通过一步步指导,展示了如何创建包括车体、车轮以及不同传感器(如摄像头、激光雷达、Kinect)的URDF模型,并提供了安装和运行过程中可能遇到的问题及解决方法。
最低0.47元/天 解锁文章
3119

被折叠的 条评论
为什么被折叠?



