Running the Simulator

To run the simulator, the basic steps are: start a roscore and ros bridge, start Unity in play mode and then bring up the rest of the ROS robot communication robot control nodes.

  • Start all the ROS with the command roslaunch social_sim_ros jackal_demo.launch.

Note in development, it may be useful to run the necessary commands in their own shell windows, in which case the tmuxinator configurations in the sim_ws project may be used.

  • Open the Unity editor, open the Assets/Scenes/IndoorLabScene.unity scene file.

Alternatively, if you have the Unity binary, running the binary replaces the editor play button

  • Press the play button.

  • You should see a map in rviz.

*If you don’t see a map, first check the Unity editor console for the “Connect to RosBridge” message. If instead, you see a “Failed to connect to RosBridge” message, then press the play button to stop the simulation and then press play again to restart it.

  • Set a goal position using the 2D Nav Goal button.

The robot should move to the goal position!

You’re now ready to run a trial.

Avatar Control

A user can control a human avatar by launching an AgentControl* scene. For example, open Scenes/AgentControlLabScene or Scenes/AgentControlSmallWarehouseScene


Allow the robot to move around the person by launching the Kuri Demo:

roslaunch social_sim_ros kuri_demo.launch