< >
Home » ROS2与URDF入门教程 » ROS2与URDF入门教程-使用URDF构建可移动机器人模型

ROS2与URDF入门教程-使用URDF构建可移动机器人模型

说明:

  • 介绍如何使用URDF构建可移动机器人模型

步骤:

  • 要可视化和控制此模型,请运行与上一个教程相同的命令
ros2 launch urdf_tutorial display.launch.py model:=urdf/06-flexible.urdf

请输入图片描述

  • Head
<joint name="head_swivel" type="continuous">
  <parent link="base_link"/>
  <child link="head"/>
  <axis xyz="0 0 1"/>
  <origin xyz="0 0 0.3"/>
</joint>
  • 身体和头部之间的连接是一个连续的关节,这意味着它可以呈现从负无穷大到正无穷大的任何角度。轮子也是这样建模的,这样它们就可以永远在两个方向上滚动

  • 我们必须添加的唯一附加信息是旋转轴,这里由 xyz 三元组指定,它指定了头部将围绕其旋转的向量。由于我们希望它绕 z 轴运行,因此我们指定向量“0 0 1”

  • Gripper

<joint name="left_gripper_joint" type="revolute">
  <axis xyz="0 0 1"/>
  <limit effort="1000.0" lower="0.0" upper="0.548" velocity="0.5"/>
  <origin rpy="0 0 0" xyz="0.2 0.01 0"/>
  <parent link="gripper_pole"/>
  <child link="left_gripper"/>
</joint>

左右夹爪关节都被建模为旋转关节。这意味着它们以与连续关节相同的方式旋转,但它们有严格的限制。因此,我们必须包含指定关节上限和下限(以弧度为单位)的限制标签。我们还必须指定此关节的最大速度和作用力,但实际值与我们的目的无关

  • Gripper Arm
<joint name="gripper_extension" type="prismatic">
  <parent link="base_link"/>
  <child link="gripper_pole"/>
  <limit effort="1000.0" lower="-0.38" upper="0" velocity="0.5"/>
  <origin rpy="0 0 0" xyz="0.19 0 0.2"/>
</joint>

夹臂是一种不同的关节,即棱柱关节。这意味着它沿着一个轴移动,而不是围绕它移动。这种平移运动使我们的机器人模型能够伸展和缩回其抓手

棱柱臂的极限以与旋转关节相同的方式指定,不同之处在于单位是米,而不是弧度

  • 其他类型的关节
还有另外两种在空间中移动的关节。棱柱关节只能沿一个维度移动,而平面关节可以在平面或二维中移动。此外,浮动关节不受约束,可以在三个维度中的任何一个维度上移动。这些关节不能仅由一个数字指定,因此不包含在本教程中。

参考:

纠错,疑问,交流: 请进入讨论区点击加入Q群

获取最新文章: 扫一扫右上角的二维码加入“创客智造”公众号


标签: ros2与urdf入门教程