- Install singularity.
- Create the container:
sudo singularity build container.sif container.def
. The container will have all the pre-requisites including ROS and AIKIDO. - Create a singularity shell:
SINGULARITYENV_DISPLAY=$DISPLAY singularity shell --cleanenv container.sif
.$DISPLAY
environment variable is passed to allow rviz to work correctly both on a local computer and when using X11 through SSH. The following commands can also be run throughsingularity run ...
orsingularity exec ...
but it is easier to create a singularity shell and execute the commands inside.
Run the following commands inside the singularity shell:
- Create a catkin workspace in the current directory:
catkin init
- Build the
aikido_tutorials
package:catkin build
- Source setup file:
. devel/setup.bash
- Install all the apt packages in the
%post
section ofcontainer.def
. - Create a catkin workspace and install the dependencies:
# Catkin dependencies
cd src
wstool init
wstool merge ../ros_requirements.rosinstall
wstool up
# Build catkin workspace
cd ..
catkin init
catkin config --extend /opt/ros/noetic
catkin build
- Source setup file:
. devel/setup.bash
- Run
roscore
,rosrun rviz rviz
androsrun aikido_tutorials aikido_tutorials
in three separate shells (singularity shells if using singularity). - In the rviz window, add
InteractiveMarkers
with update topic/dart_markers/aikido_tutorial/update
- Pressing "Y" when prompted in
rosrun aikido_tutorials aikido_tutorials
shell should make the robot move between two configurations.