Software


Dependencies

Our software stack is built upon the FrankaPy library developed by the Carnegie Mellon Intelligent Autonomous Manipulation Lab. Specifically, we are using the ROS2 Humble branch. Additionally, we have dependencies on the ROS2 RealSense package. Table 1 contains the link to each of these dependencies, including the installation instructions.

FrankaPyFrankaPy
Franka-Interface (Server side of FrankaPy)Franka-Interface
Realsense ROS2Realsense-ROS
ROS2 HumbleROS2
Table 1: Software Dependencies Installation Instructions

SNAAK Software

All software for the SNAAK project is located in a GitHub organization, the link to which will be atop Table 2. There are numerous repositories in this organization, one for each subsystem. Each repository contains one specific ROS2 package. Table 2 contains a list of all the needed packages, and a link to their repository. Note that the main branch of each repository will contain the latest stable version of each repository.

Overall Organizationhttps://github.com/SNAAK-CMU
Manipulationhttps://github.com/SNAAK-CMU/snaak_manipulation
State Machinehttps://github.com/SNAAK-CMU/snaak_state_machine
Pneumatichttps://github.com/SNAAK-CMU/snaak_pneumatic
Visionhttps://github.com/SNAAK-CMU/snaak_vision
Hand-Eye Calibrationhttps://github.com/SNAAK-CMU/handeye_calibration_ros2
Weighing Scalehttps://github.com/SNAAK-CMU/snaak_weight_read
Table 2: GitHub Repositories for the SNAAK System.

To run the system, follow the below instructions:

  1. Install all dependencies
  2. From the documents folder, create a new ROS2 workspace inside and src folder
  3. Clone all repositories in Table 2 inside the src folder
  4. Build the workspace using “colcon build”
  5. Copy “snaak_launch.bash” from the snaak_state_machine package to the Documents folder
  6. Run “./snaak_launch.bash –start-frankapy”