Rosanswers logo

I am using hector_quadrotor package but I need to control multiple uavs at the same time. Could someone help me on solving this issue? I can control if only one uav is used, but not many of them simultaneously

Thanks in advance

Originally posted by Humberto Beltrao on ROS Answers with karma: 30 on 2014-10-29

Post score: 0

Original comments

Comment by Kurt Leucht on 2014-11-03:
Controlling multiple robots is not for the faint of heart. Do you have automated control software that you want to connect to multiple robots or do you have a manual human interface that you want to use to control multiple robots?

Comment by Humberto Beltrao on 2014-11-03:
An automated control software is aimed to be used to. Initially, I am trying to use Gazebo to make them (the robots) act like particles, changing info with one another and so on. I've got the spawning of multiple uavs successfully on the simulator, but not their flight at the same time.

Comment by SL Remy on 2015-01-15:
For completeness sake, what version of ROS/Gazebo are you using? How did you install the hector_quadrotor_gazebo package (e.g. apt-get, source etc.)? Were you successful and did the answer below help you?

Comment by Humberto Beltrao on 2015-01-19:
I'm using Gazebo 2.x version hosted by ROS Indigo. I got the hector package following the package summary described on ROS.org. And yes, the answer below worked for me.


1 Answer 1


Rosanswers logo

Assuming that you have some automated robot control software that reads sensors from one robot and sends control commands to one robot, in order to scale up to multiple robots, you need to have all the communication Topics use a different or unique namespace.

So instead of having the IMU sensor published on a Topic called /imu, for example, just launch that publisher node with a robot name argument or use Topic name remapping from the command line or from a launch file so the IMU data ends up published on Topic name /robot1/imu instead. Of course, your automated robot control software will also need to be launched with an argument or Topic name remapping so it will listen for /robot1/imu rather than /imu. This means that you will launch as many automated robot control nodes as you have robots.

Here is a picture that summarizes the scheme. Green indicates sensor Topics and red indicates command or control Topics.

image description

Originally posted by Kurt Leucht with karma: 486 on 2014-11-04

This answer was ACCEPTED on the original site

Post score: 1

Original comments

Comment by Humberto Beltrao on 2014-11-04:
Thanks so much for the detailed information. I'll let the community to know the result as soon as I try the solution.

Comment by Johannes Meyer on 2014-11-04:
hector_quadrotor should definitely support this. There is a spawn_two_quadrotors.launch example in the hector_quadrotor_gazebo package, but I have not used it recently. Other nodes controlling the quadrotors have to be run in the respective namespace.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.