ROS知识课堂-3.URDF
什么是URDF
全称为 Unified Robot Description Format ,翻译为中文为 统一机器人描述性格式。那么这里我们可以确定,URDF是用来描述机器人的,通过一些特定的格式将机器人具体的描述出来,供计算机进行理解操作。
URDF是Unified Robot Description Format的首字母缩写,直译为统一(标准化)机器人描述格式,可以以一种XML的方式描述机器人的部分结构,比如底盘、摄像头、激光雷达、机械臂以及不同关节的自由度.....,该文件可以被C++ 内置的解释器转换成可视化的机器人模型,是ROS中实现机器人仿真的重要组件。
URDF描述规范
用一个文件描述一个机器人模型
文件的后缀为.urdf
文件的内容格式为xml格式
xml根节点为robot
通过创建一个hello.urdf文件我们来认知一下URDF的基本规范:
Markup
<?xml version="1.0"?>
<robot name="hello">
<link name="base_link">
<visual>
<geometry>
<cylinder length="0.6" radius="0.2"/>
</geometry>
</visual>
</link>
</robot>
连杆介绍
什么是link
link 我们称之为连杆。在官方介绍中,用a rigid body描述link。
a rigid body:僵硬的躯体。意思是不可移动的,固定的。
在URDF描述性语言中,link是用来描述物理特性的。
描述视觉显示
描述碰撞属性
描述物理惯性
我们用xml格式来表达连杆如下:
以通过可扩展标记语言(XML)很方便地创建一个统一机器人描述格 式(URDF19,Unified Robot Description Format)文件,该文件可以在ROS的机器人 建模可视化工具RViz(ROS Visualization)中加载并使用
Python
sudo apt-get install ros-kinetic-ros-controllers ros-kinetic-gazebo* ros-kinetic-moveit* ros-kinetic-dynamixel-sdk ros-kinetic-dynamixel-workbench-toolbox ros-kinetic-robotis-math ros-kinetic-industrial-core
Markup
<link name=”base”/>
<joint name="fixed" type="fixed">
<parent link="base"/>
<child link="link1"/>
</joint>
<link name="link1">
<collision>
<origin xyz="0 0 0.25" rpy="0 0 0"/>
<geometry>
<box size="0.1 0.1 0.5"/>
</geometry>
</collision>
<visual>
<origin xyz="0 0 0.25" rpy="0 0 0"/>
<geometry>
<box size="0.1 0.1 0.5"/>
</geometry>
<material name="black"/>
</visual>
<inertial>
<origin xyz="0 0 0.25" rpy="0 0 0"/>
<mass value="1"/>
<inertia ixx="1.0" ixy="0.0" ixz="0.0" iyy="1.0" iyz="0.0" izz="1.0"/>
</inertial>
</link>
<< 上一篇
下一篇 >>