ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Controlling individual robots in stage (fuerte)

asked 2012-10-30 12:33:43 -0600

kerursiv gravatar image

updated 2012-10-30 12:34:46 -0600

Hello. I recently installed the latest ROS version (Fuerte) and stage (v4.1.1), running it through stageros of course. However, I am noticing that issuing robot-specific cmd_vel messages causes all of the robots in the world to move. For example:

rosrun stage stageros /opt/ros/fuerte/stacks/stage/share/stage/worlds/
rostopic pub /robot_0/cmd_vel geometry_msgs/Twist -r 10000 '[10, 0, 0]' '[0, 0, 5]'

This causes all of the robots in the flock to move! This is despite the fact that rostopic list shows cmd_vel versions for all of the robots (up to robot_99).

Is this a bug in the latest versions or am I misunderstanding something about the way this should work?


edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2012-11-05 07:14:47 -0600

Graham gravatar image


The robots in this stage world have "stage controllers" (look for the ctrl elements in the world file) which implement the flocking behaviour, so it is not surprising that they all move. If you want to control a robot from ROS then you probably don't want that robot to also have a stage controller.

Stage controllers can be useful if you want other robots in your environment that move according to simple rules, e.g. as dynamic obstacles. I've found that there are some issues with using them in Fuerte which led me to make several edits to the stageros wrapper (and to Stage). The wander controller example in the ROS tutorial on stage controllers doesn't work under Fuerte.



edit flag offensive delete link more

Question Tools



Asked: 2012-10-30 12:33:43 -0600

Seen: 553 times

Last updated: Nov 05 '12