Installation Guide
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
Python 3.8 or above
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
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