Package Summary

Tags No category tags.
Version 0.1.12
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/robotics-in-concert/concert_services.git
VCS Type git
VCS Version indigo
Last Updated 2015-07-09
Dev Status DEVELOPED
CI status Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Sets up the gazebo robot manager as a service to assist in spawning/killing robots as concert clients.

Additional Links

Maintainers

  • Daniel Stonier
  • Piyush Khandelwal

Authors

  • Daniel Stonier
  • Piyush Khandelwal

Using the Concert Framework with Gazebo (the short short version)

There is some code that is robot-agnostic. All that code is in this package in the GazeboRobotManager Module

GazeboRobotManager

  • Creates concert clients for each robot
  • Flips necessary information to that robot's concert client, so that it can pretend to be a real robot.

Unfortunately, a lot of code depends on the robot that you are going to simulate. For each robot, you'll have to implement a module specific to that robot. An abstract module detailing this API is RobotManager

RobotManager

  • Specifies how to spawn the robot in Gazebo
  • Specifies how to delete the robot in Gazebo
  • Specifies which information needs to be flipped over. If you're doing teleop, cmd_vel is sufficient. If you want to do full navigation, you'll have to supply tf,map,sensory information and odometry as well.
  • Specifies how each concert client for these simulated robots should be created.

Some other things to consider

  • The concert solution and all subsequent concert clients need to be started with /use_sim_time set to true.
  • Since all robots are being simulated on a single master, the tf tree needs tobe properly namespaced for each robot. Furthermore, applications run by this spawned concert clients need to use this namespaced tf tree.

Robot configuration Parameter

Example parameter

robots:
  - name: guimul
    type: kobuki
    robot_rapp_whitelist: [rocon_apps, concert_service_gazebo]
    location: [0.0, 0.0, 0.0]
  - name: gamza 
    type: turtlebot
    robot_rapp_whitelist: [rocon_apps, concert_service_gazebo]
    location: [0.0, -2.0, 3.14159265359]
  - name: doldol
    type: segbot
    robot_rapp_whitelist: [rocon_apps, concert_service_gazebo]
    location: [0.0, 4.0, 0.0]
types:
  - name: kobuki 
    launch: concert_service_gazebo/kobuki.launch
    flip_rule:
      pub:
        - odom
      sub:
        - mobile_base/.*
  - name: turtlebot
    launch: concert_service_gazebo/turtlebot.launch
    flip_rule:
      pub:
        - odom
        - camera/.*
      sub:
        - cmd_vel_mux/.*
  - name: segbot
    launch: concert_service_gazebo/segbot.launch 
    flip_rule:
      pub:
        - odom
        - scan_filtered
      sub:
        - cmd_vel
world_file: concert_service_gazebo/empty_world.world

An example

Take a look at the concert_tutorials/gazebo_concert demo in the rocon_tutorials repository.

  • Install Rocon:

wstool init . https://raw.githubusercontent.com/robotics-in-concert/rocon_demos/gazebo_concert/gazebo_solution.rosinstall

  • Run the demo:
> roslaunch gazebo_solution concert.launch --screen
> rocon_remocon # Teleop..

> roslaunch office_sim_solution concert.launch --screen
> rocon_remocon # Teleop..

CHANGELOG

Changelog for package concert_service_gazebo

0.1.12 (2015-07-09)

  • gazebo is now headless. viewer is now interactions closes #32
  • Contributors: Jihoon Lee

0.1.11 (2015-04-27)

0.1.10 (2015-04-06)

0.1.9 (2015-03-23)

0.1.8 (2015-02-27)

0.1.7 (2015-02-09)

0.1.6 (2015-01-05)

  • add robot gazebos as runpdend fixes #36
  • update install rule for concert service gazebo fixes #34
  • remove topic_relay closes #35
  • Contributors: Jihoon Lee

0.1.5 (2014-12-05)

  • rename gazebo service
  • Contributors: Jihoon Lee

0.1.4 (2014-11-21)

0.1.3 (2014-11-21)

0.1.2 (2014-11-21)

  • add workflow description closes #29
  • rename sim to simulation
  • remove unncessary rapps. they are now together with rapps for real robots
  • now use turtlebot_rapps. add playground
  • sim param passing
  • typo in camera flipping
  • Merge branch \'indigo\' into use_package_export
  • topic_relay script has migrated to rocon_python_utils
  • leave segbot export as an example
  • use package export to load robot types
  • disable mux for smoother for now.
  • make a map service with scan and robot pose remapping
  • add make a map service
  • now velocity smoother works in turtlebot. /clock flips by default
  • now gazebo uses world_file in service parameter
  • update readme
  • tf fix
  • now teleoping three robots are working
  • Merge branch \'indigo\' into gazebo_upgrade
  • flips working
  • flip_rule added
  • now all three models are loading
  • Contributors: Daniel Stonier, Jihoon Lee

0.1.1 (2014-08-26)

  • update for the new rocon launch api, closes #15
  • use proper lists for hubs/concerts now roslaunch can handle it.
  • updated robot.launch to reflect recent changes to concert_client.launch
  • Updating readme to reflect package name changes After a bit of thought, I\'ve renamed the segbot specific packages. I\'ve updated the readme here to reflect that change.
  • minor bugfix for the teleop app due to recent refactoring.
  • eclipse files and add to metapackage.
  • Revert \"renamed segbot_rocon to rocon_segbot\" This reverts commit 31fa619b08f7798f48bef7f8004a618c3f106c17.
  • renamed segbot_rocon to rocon_segbot
  • changed to an unordered list
  • added a README
  • added documentation
  • all concerts started through this service should use simulated time
  • fixed package.xml and remove dependencies that were not needed
  • removed segbot and turtlebot specific components, moved segbot components to segbot specific repository
  • added new icon file
  • gazebo service now up and running! need to orchestrate teleoperation and navigation
  • ready to test with full concert service scenario
  • basic version is working, but correct running is order dependent. needs investigation...
  • started some initial tests of the gazebo segbot manager, although outside the services framework
  • some changes from yesterday for the gazebo service. Need to look at this in more detail tonight
  • ready for testing on the concert
  • a bit more work towards adding the gazebo service
  • separating robot specific components from the gazebo_robot_manager
  • separated turtlebot and segbot files. now ready to implement segbot_robot_manager
  • some initial testing with launch multiple turtlebots and segbots in gazebo outside the concert framework
  • initial commit for concert_service_gazebo
  • Contributors: Daniel Stonier, Piyush Khandelwal

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Launch files

  • robots/turtlebot/turtlebot.launch
      • name
      • loc_x
      • loc_y
      • loc_z
      • loc_roll
      • loc_pitch
      • loc_yaw
      • world_namespace
      • base_prefix [default: mobile_base]
      • base [default: kobuki]
      • stacks [default: hexagons]
      • 3d_sensor [default: kinect]
      • urdf_file [default: $(find xacro)/xacro.py '$(find turtlebot_description)/robots/$(arg base)_$(arg stacks)_$(arg 3d_sensor).urdf.xacro']
  • robots/kobuki/kobuki.launch
      • name
      • loc_x
      • loc_y
      • loc_z
      • loc_roll
      • loc_pitch
      • loc_yaw
      • world_namespace
      • use_full_gazebo_model [default: true]
      • base_prefix [default: mobile_base]
  • robots/segbot/segbot.launch
      • name
      • loc_x
      • loc_y
      • loc_z
      • loc_roll
      • loc_pitch
      • loc_yaw
      • world_namespace
      • robot_name [default: $(arg name)]
      • use_full_gazebo_model [default: true]
      • urdf_file [default: $(find segbot_description)/robots/segbot_hokuyo.urdf.xacro]
  • launch/robot.launch
    • Launches the infrastructure running on a robot.
      • robot_name [default: robot]
      • robot_type [default: pc]
      • robot_rapp_whitelist [default: []]
      • robot_concert_whitelist [default: []]
  • services/gazebo_robot_world/gazebo_robot_world.launch
      • use_sim_time [default: true]
      • world [default: gazebo]
      • debug [default: false]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged concert_service_gazebo at Robotics Stack Exchange