< >
Home » Turtlebot代码解读 » Turtlebot代码解读-turtlebot_simulator

Turtlebot代码解读-turtlebot_simulator

Turtlebot代码解读-turtlebot_simulator

说明:

  • 介绍Turtlebot的仿真三种方法
  • 介绍Turtlebot gazebo
  • 介绍Turtlebot stage
  • 介绍Turtlebot stdr

文件树及说明:

├── README.md
├── turtlebot_gazebo                   #gazebo仿真包
│   ├── CHANGELOG.rst
│   ├── CMakeLists.txt
│   ├── env-hooks
│   │   └── 25.turtlebot-gazebo.sh.em  #设置gazebo参数环境变量
│   ├── launch
│   │   ├── amcl_demo.launch           #启动定位
│   │   ├── gmapping_demo.launch       #启动建图
│   │   ├── includes
│   │   │   ├── create.launch.xml      #启动create底盘
│   │   │   ├── kobuki.launch.xml      #启动kobuki底盘
│   │   │   └── roomba.launch.xml      #启动roomba底盘
│   │   └── turtlebot_world.launch     #启动gazebo仿真
│   ├── maps                           #用于定位的地图
│   │   ├── playground.pgm
│   │   └── playground.yaml
│   ├── package.xml
│   └── worlds                         #gazebo仿真地图
│       ├── corridor.world
│       ├── empty.world
│       └── playground.world
├── turtlebot_simulator                #元包
│   ├── CHANGELOG.rst
│   ├── CMakeLists.txt
│   └── package.xml
├── turtlebot_simulator.rosinstall     #安装仿真包相关依赖  
├── turtlebot_stage                    #stage仿真包
│   ├── CHANGELOG.rst
│   ├── CMakeLists.txt
│   ├── env-hooks
│   │   └── 25.turtlebot-stage.sh.em   #设置stage参数环境变量
│   ├── launch
│   │   └── turtlebot_in_stage.launch  #启动stage仿真
│   ├── maps                           #stage仿真地图
│   │   ├── maze.png
│   │   ├── maze.yaml
│   │   ├── robopark2.bmp
│   │   ├── robopark_plan.yaml
│   │   └── stage                      
│   │       ├── maze.world
│   │       ├── robopark_plan.world
│   │       └── turtlebot.inc
│   ├── package.xml
│   └── rviz
│       └── robot_navigation.rviz      #stage RVIZ参数
└── turtlebot_stdr                     #stdr仿真包 
    ├── CHANGELOG.rst
    ├── CMakeLists.txt
    ├── documentation
    │   └── architecture_overview.png
    ├── env-hooks
    │   └── 25.turtlebot-stdr.sh.em    #设置stdr参数环境变量
    ├── launch
    │   ├── includes
    │   │   └── relays.launch.xml
    │   └── turtlebot_in_stdr.launch   #启动stdr仿真
    ├── maps                           #stdr仿真地图
    │   ├── frieburg.png
    │   ├── frieburg.yaml
    │   ├── hospital_section.png
    │   ├── hospital_section.yaml
    │   ├── mines.png
    │   ├── mines.yaml
    │   ├── robocup.png
    │   ├── robocup.yaml
    │   ├── simple_rooms.png
    │   ├── simple_rooms.yaml
    │   ├── sparse_obstacles.png
    │   └── sparse_obstacles.yaml
    ├── nodes                          
    │   └── tf_connector.py            #重发布TF话题
    ├── package.xml
    ├── robot
    │   └── turtlebot.yaml
    └── rviz
        └── robot_navigation.rviz      #stdr RVIZ参数
    
    
    

重要知识点说明:

gazebo

  • Gazebo是一个三维多机器人动力学仿真。它能够模拟复杂和现实的环境中关节型机器人。
  • 官网:http://gazebosim.org/
  • 官网教程:http://gazebosim.org/tutorials
  • 官网ROS相关教程:http://gazebosim.org/tutorials?cat=connect_ros
  • ROS相关包:http://wiki.ros.org/gazebo_ros_pkgs
  • Kobuki gazebo,http://wiki.ros.org/kobuki_gazebo

stage

  • stage是一种用于移动机器人和智能传感系统研究的仿真工具。
  • Stage在一个二维的位图环境下模拟移动机器人、传感器和障碍物等对象。
  • Stage在设计中就考虑到了多智能体系统的问题,可以提供对多机器人系统的测试仿真。
  • 需要了解的是Stage只提供了真正简单,可计算的廉价的设备模式,而无法非常精密地仿真任何具体的设备终端。
  • Stage 还允许你利用目前还没有的虚拟机器人设备进行实验。
  • Stage提供了多种传感器和执行器,包括声纳,激光扫描测距仪,色斑显示器,里程计,抓斗,防撞器/触须器以及移动机器人基坐等
  • 官网教程,http://playerstage.sourceforge.net/doc/Stage-3.2.1/
  • ROS包,http://wiki.ros.org/stage_ros

/turtlebot_stage/launch/turtlebot_in_stage.launch

  • Turtlebot 导航仿真分别启动
    • stage
    • map_server
    • move_base
    • static map
    • amcl
    • rviz view

stdr

  • stdr是一个简单灵活和可扩展的2D多机器人仿真器
  • 官网,http://stdr-simulator-ros-pkg.github.io/
  • ROS相关包,http://wiki.ros.org/stdr_simulator
  • stdr教程,http://wiki.ros.org/stdr_simulator/Tutorials

/turtlebot_stdr/launch/turtlebot_in_stdr.launch

  • Turtlebot 导航仿真分别启动
    • stdr
    • move_base
    • amcl
    • map_server
    • rviz view

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

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


标签: turtlebot代码解读