在ROS answers上有这样一条链接:

How to run multiple Independent Gazebo instances on the same machine?

讨论的是:解决多用户同时使用同一计算平台开启多个ROS+Gazebo核心的问题,这样可以实现部署一个强计算能力核心,用其他终端访问核心同时进行仿真计算的场景。

思路非常简单,设置不同的ROS_MASTER_URI和GAZEBO_MASTER_URI即可,例如链接里所说,在同一计算机下:

打开terminal1:

export ROS_MASTER_URI=http://localhost:11315
roscore -p 11315

terminal2:

export ROS_MASTER_URI=http://localhost:11316
roscore -p 11316

terminal3:
export GAZEBO_MASTER_URI=http://localhost:11355
gazebo

terminal4:

export GAZEBO_MASTER_URI=http://localhost:11356
gazebo

这样就可以同时开启两套ROS+gazebo的核心了。

github上有一套应用这一思路的demo:RosGazeboParallelSimulations,实现在同一计算机上运行两套扫地机器人kobuki仿真。

在这里插入图片描述