ROS专题----机器人模型urdf简明笔记

----ROS机器人模型urdf简明笔记----

ROS专题----机器人模型urdf简明笔记_第1张图片

ROS库--URDF

  1. 使用URDF从头开始构建可视机器人模型

    了解如何构建一个可以在Rviz中查看的机器人的视觉模型

  2. 使用URDF构建可移动机器人模型

    了解如何在URDF中定义活动关节

  3. 向URDF模型添加物理和冲突属性

    了解如何向链接添加碰撞和惯性属性,以及如何为关节添加关节动力学。

  4. 使用Xacro清理URDF文件

    学习一些技巧,以减少使用Xacro URDF文件中的代码量


----

全部源码:http://download.csdn.net/detail/zhangrelay/9775629

ROS专题----机器人模型urdf简明笔记_第2张图片


1 简单的几何形状

这里包括形状,大小,位置,角度和材质等。以下面代码为例,简单介绍一下:




  
    
    
  
    
  
  
    
  
  
    
  
  
    
  

  
    
      
        
      
      
    
  

  
    
      
        
      
      
      
    
  

  
    
    
    
  

  
    
      
        
      
      
    
  

  
    
    
    
  

  
    
      
      
        
      
      
      
    
  
  
    
    
    
    
  

...............

  
    
      
        
      
      
    
  
  
    
    
    
  

  
    
      
        
      
      
    
  

  
    
    
    
  

----

其中,geometry中包含形状和大小,如cylinder box,大小依据形状不同采用不同表示,如length radius size等;

原点是origin;相对于该点的位置和角度分别用xyz rpy表示;parent link是父节点,child link是子节点。fixed frame固定坐标;

当然,还有颜色等其他配置属性。

使用下面命令查看效果,注意model路径:

roslaunch urdf_tutorial display.launch model:=/home/relaybot/ROS_tutorial/src/urdf_tutorial-kinetic/urdf/05-visual.urdf

----

ROS专题----机器人模型urdf简明笔记_第3张图片

----

2 由静到动让模型运动起来

这里只需要注意一个要点,就是关节joint,上节一般是fixed,这里可以有continuous,revolute,prismatic。

还需要补充的是robot_state_publisher和joint_state_publisher。分别如下图所示:

ROS专题----机器人模型urdf简明笔记_第4张图片  ROS专题----机器人模型urdf简明笔记_第5张图片


运行下面命令,注意模型路径:

roslaunch urdf_tutorial display.launch model:=/home/relaybot/ROS_tutorial/src/urdf_tutorial-kinetic/urdf/06-flexible.urdf gui:=True

----

ROS专题----机器人模型urdf简明笔记_第6张图片

----

3 添加物理和碰撞属性

需要注意亮点即可,碰撞collision,物理inertial。

  
    
      
        
      
      
    
    
      
        
      
    
    
      
      
    
  

----

roslaunch urdf_tutorial display.launch model:=/home/relaybot/ROS_tutorial/src/urdf_tutorial-kinetic/urdf/07-physics.urdf

----

ROS专题----机器人模型urdf简明笔记_第7张图片

----

4 使用xacro简化urdf文件

这里给出两个参考网址:xacro和在urdf中使用xacro。

roslaunch urdf_tutorial display.launch model:=/home/relaybot/ROS_tutorial/src/urdf_tutorial-kinetic/urdf/08-macroed.urdf.xacro

----

ROS专题----机器人模型urdf简明笔记_第8张图片

----

5 在Gazebo中使用urdf

参考网址:http://gazebosim.org/tutorials?tut=ros_urdf

完成配置后,启动命令:

roslaunch urdf_tutorial gazebo.launch

----

ROS专题----机器人模型urdf简明笔记_第9张图片

----

6 rviz和Gazebo中实现同步控制

运行下面命令:

roslaunch urdf_tutorial control.launch

----

ROS专题----机器人模型urdf简明笔记_第10张图片  ROS专题----机器人模型urdf简明笔记_第11张图片

----

附录:

TF:

ROS专题----机器人模型urdf简明笔记_第12张图片

Graph:

ROS专题----机器人模型urdf简明笔记_第13张图片

display.launch



  
  
  

  
  

  
  
  



gazebo.launch



  
  
  
  
  
  
  

  
  
    
    
    
    
    
  

  

  
  

  
    
  



control.launch



  
  

  
    
  

  

  
  

  
  

  

    
  



r2d2.xacro




  
  
  
  
  
  
  

  
    
    
  
    
  
  
    
  
  
    
  
  
    
  

  
    
      
      
    
  

  
    
      
        
      
      
    
    
      
        
      
    
    
  
    
    
      Gazebo/Red
    

  

    
      
        
        
          
        
        
        
      
      
        
        
          
        
        
      
      
    
    
      
      
      
      
    

    
    
      
      
      
      
      Gazebo/Black
    

    
    
      transmission_interface/SimpleTransmission
      
        1
      
      
        VelocityJointInterface
      
    

  

  
    
      
        
          
        
        
        
      
      
        
          
        
        
      
      
    
    
    
      Gazebo/Blue
    

    
      
      
      
    

    
      
        
          
        
        
      
      
        
          
        
      
      
    

    
      
      
      
    
    
    
  
  
  

  
    
    
    
    
    
    
  

  
    
      
        
      
      
    
    
      
        
      
      
    
    
  

  
    transmission_interface/SimpleTransmission
    
      1
    
    
      PositionJointInterface
    
  

  
    
      
      
      
      
      
      
      
    
    
      
        
        
          
        
      
      
        
          
        
        
      
      
    
    
      transmission_interface/SimpleTransmission
      
        1
      
      
        PositionJointInterface
      
    

    
      
      
    
    
      
        
        
          
        
      
      
        
          
        
        
      
      
    
  

  
  

  
    
      
        
      
      
    
    
      
        
      
    
    
  

  
    
    
    
    
    
    
  
    
    
      Gazebo/Orange
    
  
  
    transmission_interface/SimpleTransmission
    
      1
    
    
      PositionJointInterface
    
  

  
    
      
        
      
      
      
    
    
      
        
      
    
    
  

  
    
    
    
  

  
  
    
      /
    
  



补充链接与资料:

1urdf http://wiki.ros.org/urdf

2xacro http://wiki.ros.org/xacro

----

End

----





你可能感兴趣的:(机器人仿真,ROS,indigo,学习笔记,ROS,Kinetic,学习笔记)