从零开始自动驾驶-gazebo学习入门02

在空白世界里放一个立方体

一、导入模型

建立catkin工作空间

mkdir -p catkin_ws/src
cd catkin_ws
catkin_make

建立一个box功能包:

catkin_create_pkg box

将https://github.com/czhherry/self-driving-vehicle-101中的04_intro_to_urdf工程下的两个文件clone到cartkin_ws/src/box目录下,使用如下命令,可在gazebo中打开一个立方体:

roslaunch box spawn_box_urdf.launch
二、URDF介绍

URDF(Unified Robot Description Format), 是一种特殊的xml文件格式, 作为机器人的一种描述文件, 在ROS里面大量使用。在仿真中用的很多,用于创建机器人的仿真模型。
如下是工程中的box.urdf文件代码:

<?xml version="1.0" ?>

<robot name="box">  //模型命名为box
    <link name="base_link">
      <collision> //碰撞体积
       <origin xyz="0 0 0" rpy="0 0 0"/>  //设置原点及roll、pitch、yaw
       <geometry>
        <box size="1 1 1"/> //定义几何尺寸,长宽高
      </geometry>
    </collision>
    <visual> //外观,可以与collision不同
      <origin xyz="0 0 0" rpy="0 0 0"/>
      <geometry>
        <box size="1 1 1"/>
      </geometry>
    </visual>
  </link>

  <joint name="inertial_joint" type="fixed"> //关节,连接两个属性,第一个零部件才需要写joint
    <parent link="base_link"/> //
    <child link="main_mass"/>
    <origin xyz="0 0 0" rpy="0 0 0"/>
  </joint>

  <link name="main_mass" type="fixed">
   <parent link="inertial_joint"/>
   <inertial>
    <origin xyz="0 0 0" rpy="0 0 0"/>
    <mass value="1000"/> //质量1000kg
    <inertia //转动惯量
      ixx="166.6666"  ixy="0.000000" ixz="0.000000"
      iyy="166.6666" iyz="0.000000"
      izz="166.6666"/>
    </inertial>
  </link>
</robot>
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值