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的基本规范:
<?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)中加载并使用
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
<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>
<< 上一篇
下一篇 >>