roslaunch for multi-robot team
Hello all:
I want to write a roslaunch file to launch the same set of nodes, identically configured, on a number of robots. What's the most economical way to write a launch file or files to do that? The requirements are:
- There are about 20 parameters to configure each node. I want to set the parameters in only one place, so I don't want these to be renamed/remapped.
- Each robot runs six nodes that publish four topics and provide one service. These were not written with multiple robots in mind, so they must each be renamed, e.g. from "/cmd_vel" to "/machine1/cmd_vel."
In this case "economical" means not only short, but requiring the least work to add and subtract robots from the ensemble. I thought of writing a launch file for a single robot and then including it multiple times in a master file:
<group ns="machine1"> <include file="individual.launch"/> </group>
Wouldn't that change the parameter names along with the topic and service names? It also seems a little clunky. Is there a better way?
Bonus question: I wish I knew an easy way to supply each robot with a list of all the others in the launch file, or even just a list of all the robots on the team.
Thank you.