前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ROS_机器人仿真实践

ROS_机器人仿真实践

作者头像
凌川江雪
发布2018-12-10 10:23:22
9290
发布2018-12-10 10:23:22
举报
文章被收录于专栏:李蔚蓬的专栏李蔚蓬的专栏

实践内容: 1、运用 urdf建模 实现案例中的机器人。 2、根据以上掌握的方法,再快速创建一个机器人模型。

成果图:

成果图

创建需要用到的功能包以及各种文件夹:

Build跟devel两个文件夹在catkin_make之后会自动生成:

编写launch文件:

添加左轮:

编译:

启动:

代码语言:javascript
复制
roslaunch mbot_description display_mbot_base_urdf.launch

效果: (当然打开之后需要进行下面一番骚操作先——设置好RobotModel)

拖动滑动条控制轮子转动:

添加右轮:

编译,启动,

效果如下:

使用球体创建前后支撑轮:

编译,启动,效果如下:

创建一个自己的机器人模型: 代码:

代码语言:javascript
复制
<?xml version="1.0"?>
<robot name="mbot">
  
   <link name="base_link">
      <visual>
          <origin xyz="0 0 0" rpy="0 0 0"/>
          <geometry>
              <cylinder length="0.06" radius="0.20"/>
          </geometry>
          <material name="yellow">
              <color rgba="1 0.4 0 1"/>
          </material>
      </visual>
   </link>

   <joint name="left_wheel_joint" type="continuous">
        <origin xyz="0 0.19 -0.05" rpy="0 0 0"/>
        <parent link="base_link"/>
        <child link="left_wheel_link"/>
        <axis xyz="0 1 0"/>
   </joint>

   <link name="left_wheel_link">
        <visual>
             <origin xyz="0 0 0" rpy="1.5707 0 0" />
             <geometry>
                 <cylinder radius="0.03" length = "0.025"/>
             </geometry>
             <material name="white">
                 <color rgba="1 1 1 0.9"/>
             </material>
        </visual>
   </link>

   <joint name="right_wheel_joint" type="continuous">
        <origin xyz="0 -0.19 -0.05" rpy="0 0 0"/>
        <parent link="base_link"/>
        <child link="right_wheel_link"/>
        <axis xyz="0 1 0"/>
   </joint>

   <link name="right_wheel_link">
        <visual>
             <origin xyz="0 0 0" rpy="1.5707 0 0" />
             <geometry>
                 <cylinder radius="0.03" length = "0.025"/>
             </geometry>
             <material name="white">
                 <color rgba="1 1 1 0.9"/>
             </material>
        </visual>
   </link>

   <joint name="front_caster_joint" type="continuous">
        <origin xyz="0.18 0 -0.045" rpy="0 0 0"/>
        <parent link="base_link"/>
        <child link="front_caster_link"/>
        <axis xyz="0 1 0"/>
   </joint>

   <link name="front_caster_link">
        <visual>
             <origin xyz="0 0 0" rpy="0 0 0" />
             <geometry>
                 <sphere radius="0.03" />
             </geometry>
             <material name="black">
                 <color rgba="0 0 0 0.95"/>
             </material>
        </visual>
   </link>

   <joint name="back_caster_joint" type="continuous">
        <origin xyz="-0.18 0 -0.045" rpy="0 0 0"/>
        <parent link="base_link"/>
        <child link="back_caster_link"/>
        <axis xyz="0 1 0"/>
   </joint>

   <link name="back_caster_link">
        <visual>
             <origin xyz="0 0 0" rpy="0 0 0" />
             <geometry>
                 <sphere radius="0.03" />
             </geometry>
             <material name="black">
                 <color rgba="0 0 0 0.95"/>
             </material>
        </visual>
   </link>
   
</robot>

效果:

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.11.08 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档