Workcell Installation Manual¶
Overview of Docker images¶
The ReconCycle workcell components are implemented within a set of Docker images containing key components, which facilitates quick setup & deployment. The reconcycle dockers repository contains the information required to build Docker images (using Dockerfiles), and run/instantiate them to create Docker containers (using Compose files).
A brief description of Docker images and their functionality:
roscore - runs the ROS master server
reconcycle-base - base image for various other downstream images
reconcycle-rviz - enables visualization of the ReconCycle workcell
reconcycle-flexbe - runs the FlexBe software stack or runs scripts
reconcycle-moveit - runs the MoveIt ROS package to enable motion planning
qb-vsa - runs the software for controlling qbRobotic Variable Stiffness Gripper
Vision system:¶
ros-basler - enables interfacing Basler camera with ROS network
ros-realsense - enables interfacing Realsense camera(s) with ROS network
Robot control:¶
reconcycle-controller - contains the JointImpedance and CartesianImpedance controllers for the Franka Emika Panda robots
Peripheral devices (CNC machine and Raspberry PIs within the modular tables):¶
reconcycle-cnc - enables controlling the CNC machine over ROS
reconcycle-raspi - enables controlling (pneumatic) valves within the workcell tables and on the robots, using a Raspberry PI’s GPIO pins
Overview of ReconCycle packages¶
In general, ReconCycle components can also be run outside of a Docker container, however in this case dependency management is more difficult. A brief description of packages and their purpose:
robotblocket_python - enables control of Franka Emika Panda robots using Python code
rbs_action_server - enables control of Franka Emika Panda over ROS
disassembly_toolkit - contains robotic skills, various utilities for controlling the workcell, and scripts to run demos
reconcycle_flexbe - contains the FlexBe states and behaviors to enable Task-level programming
vision_pipeline - contains the Vision System elements
ros_vision_pipeline - enables interfacing the Vision System with the ROS network
context_action_framework - contains elements to enable interfacing/receiving results from the Vision System using ROS
cnc_manager - enables control of the CNC mill over ROS
workcell_lifecycle_manager - utilities to start and stop the entire workcell and the components
Installation Prerequisites¶
Using a Linux-based operating system (distribution) is recommended. For example, Ubuntu can be used as it’s known to be a user-friendly and well-supported distribution. We recommend using a Long-term Support (LTS) release, so key security updates will be available for several years to come.
To run the Docker images/containers, Docker must be installed as per instructions. Installation using the APT repository is recommended.
For computers running the Vision system, using a modern nvidia graphics card is required (nvidia 1080Ti or better) to speed up the processing of images. The CUDA toolkit must be installed as per instructions.
For computers running robot controllers, it is necessary to apply a real-time kernel patch.