The Cutlery Sorting Arm is a fully ROS-integrated 4-DOF robotic arm designed to sort various types of cutlery, including spoons, forks, and chopsticks. The arm features a base capable of yaw motion, while the other three degrees of freedom (DOFs) are planar. This project was developed in collaboration with NTU, Singapore. My primary role involved arm control using MoveIt and the ROS framework. Cutlery identification is achieved through an on-arm camera combined with deep learning-based models. The complete package, including the URDF and MoveIt configurations, is available on GitHub.

Arm Control

The arm control system implements the MoveIt planning framework on a custom URDF. Additionally, a custom inverse kinematics (IK) algorithm was developed, as MoveIt does not provide an IK solver for a 4-DOF arm.

Below is a short demonstration showcasing the functionality of the arm control system:

Figure 2: Short Demonstration of MoveIt

  • The system provides an end goal to MoveIt, which computes all possible paths and selects the shortest and most feasible one. This path is then published to the arm controllers, resulting in movement within Gazebo.

Hardware Design and Object Identification

We developed a custom design using SolidWorks and conducted multiple tests in simulators like Gazebo and PyBullet to ensure physical durability.

Cutlery Sorting Arm Design

Figure 3: Cutlery Sorting Arm Design

For object identification, we utilized Mask R-CNN (Region-Based Convolutional Neural Network), which achieves state-of-the-art results in various object detection tasks. The model determines the position and type of each object, which the ROS framework then uses to calculate the start and end goals accordingly.

Knife Detection

Figure 4: Knife Detection