Installation Guide

QUT REF Collection License

The docker based installation should be the easier than the non-docker counterpart, especially if you already have docker desktop already installed on your computer.

Software Requirements

Installation (Docker)

The Dockerfile for building the environment is in the root directory of this repository. It has been tested with Docker 25.0.3 and Ubuntu 20.04. Download the file to your local disk and change directory to where the file is located.

docker build --tag arm_commander - < Dockerfile

The image building may take some time. When the build is completed, execute the following to check if the image arm_commander is there.

docker image ls

Execute below to allow RViz in the container to display a GUI on the host.

xhost +

Start a container based on the image.

docker run -it --net=host \
    --env="DISPLAY" \
    --env="QT_X11_NO_MITSHM=1" \
    --volume="/tmp/.X11-unix:/tmp/.X11-unix:rw" arm_commander

Inside the container, start the panda robot arm model in RViz

roslaunch panda_moveit_config demo.launch

Then execute the demo program.

cd ~/arm_commander_ws
source devel/setup.bash
rosrun arm_commander commander_demo.py

Installation (Non-Docker)

Install Moveit

The non-docker method assumes the starting point of having ROS Noetic installed.

sudo apt-get update
sudo apt-get install ros-noetic-moveit -y

Install the Arm Commander

Create a catkin workspace.

mkdir -p ~/arm_commander_ws/src
cd ~/arm_commander_ws/src

Clone this repository to the src directory.

git clone git@github.com:REF-RAS/arm_commander.git

Install a Robot Arm Model

The demo program and the tutorial programs are designed to work with the dimension of a Panda.

cd ~/arm_commander_ws/src
git clone https://github.com/ros-planning/panda_moveit_config.git -b noetic-devel 

Build the Packages

rosdep install --from-paths src --ignore-src -r -y --rosdistro noetic
source /opt/ros/noetic/setup.bash
catkin_make -DPYTHON_EXECUTABLE=/usr/bin/python3

The Demonstration Program

The demo program is located at examples/commander_demo.py. To look at the demo, fire up the Panda model on RViz.

roslaunch panda_moveit_config demo.launch

Then execute the demo program.

cd ~/arm_commander_ws
source devel/setup.bash
/usr/bin/python3 ./src/arm_commander/arm_commander/commander_demo.py

Watch the demo

Tutorial Programs

The tutorial programs are stored under the examples folder. They are divided into 6 folder.

├── examples
|  ├── collision    examples on collision avoidance and collision objects
|  ├── framenove    examples on custom frames and movememnt with reference to custom frames
|  ├── config       the config files for running the commander_demo.py on different robot arm models
|  ├── move         examples on basic movement
|  ├── multimove    examples on multi-waypoint movement
|  ├── named_poses  examples on movement to named poses and the loading of named poses specification

Latest update: Feb 2024