Setting up the docker environment
Start with downloading the EuRoC project archive from here. Extract it in your home folder.
tar -xvf euroc.tar.gz
Create an alias for the dockuro script in your .bashrc
echo "alias dockuro=~/euroc/euroc_launch/docker/dockuro" >> ~/.bashrc && . ~/.bashrc
Initialize your containers with:
dockuro init
NOTE: If you have an nvidia or ATI graphics card, create a new Docker image that has exactly the same driver installed as your system.
cp ~/euroc/euroc_launch/docker/euroc-suturo-custom/Dockerfile.template ~/euroc/euroc_launch/docker/euroc-suturo-custom/Dockerfile
Modify the newly created Dockerfile so that it installs your drivers(examples can be found commented in the template). Build your new image(name is important):
docker build -t suturo/euroc-suturo-custom .
Set a flag to signal the system the use of a custom docker image
export EUROC_CUSTOM_CONT=true
Launch the docker container:
dockuro
All of the following commands are supposed to be executed within docker!! Before you can start hacking, you need to compile the catkin workspace that comes with the docker image
cd ~/catkin_ws catkin_make
To start the experiment run:
/opt/euroc_c2s1/start_euroc_task_selector
In another terminal run dockuro again and start the simulator by running(copy paste both lines together):
rosservice call /euroc_c2_task_selector/start_simulator "user_id: '' scene_name: 'task1_v1'"
Publish the joint states of the robot:
roslaunch suturo_manipulation_moveit publish_joint_state.launch
Start a node to publish point clouds:
roslaunch pointcloud_publisher run_pointcloud_publisher.launch
Use rviz to check the camera data and the tf tree. All set. Enjoy!