This repository simulates a Gopher robot in unity simulation, which autonomously navigates to a target location maintaining a social distance from people in its way.
PLEASE MAKE SURE YOU HAVE A STABLE INTERNET CONNECTION WHILE RUNNING THE SIMULATION.
- Human Aware Robot Navigation
This repo contains the Unity simulation for hospital scenario provided by WPI HiRO Lab Gopher-In-Unity-Simulation and a gopher social robot that can navigate using the social navigation cues. The robot predicts the future positions of the moving human and generates a social costmap around those predictions. The global planner plans a path considering all the costs. More information about working can be found here.
In order to setup the repo follow the instruction in SETUP.md.
This section discusses the setup of parameters and running different launch files.
This section discusses the basic parameters that needs to be configured and other parameters that can be configured for custom performance.
- Gopher Unity Endpoint Parameters:
- In
catkin_ws/human_aware_robot_navigation/ROS/src/Gopher-ROS-Unity/gopher_unity_endpoint/launch/gopher_presence_server.launch
set thetcp_ip
to the IP address of your ROS machine. Same as the one set in UnityHospital -> TCPROSConnection
.
- Gopher Navigation Parameters:
- In
catkin_ws/human_aware_robot_navigation/ROS/src/Gopher-ROS-Unity/gopher_navigation/config
all navigation parameters can be found. - All navigation parameters need not be changed for default functionality but can be changed for custom performance.
This section discusses on how to run the Unity simulation.
- If the Unity simulation is not running then run the simulation following the instructions in setup. Since the simulation is already setup you only follow the points 3, 6 and 7.
- Click on the play button in the Unity simulation to start the simulation (If you click on the play button again then the simulation will stop).
- Then you can click on
connect
button to connect to the ROS part of the simulation.
This section discusses on how to run the gopher navigation. In order to run navigation, open a new terminal and follow the instructions below.
cd catkin_ws/human_aware_robot_navigation/ROS
source devel/setup.bash
roslaunch gopher_unity_endpoint gopher_presence_server.launch
On running the launch file you will see the following output on screen.
This section discusses the output of the simulation. Once the simulation is running, you can follow the instructions below.