Pizza Cutter Manipulator

Objective: Implement an automated pizza cutting system using a FANUC LR Mate 200id/4sh industrial robot arm that:

  1. Locates the pizza’s center and diameter from overhead images
  2. Converts those measurements into robot base‐frame coordinates for precise slicing
  3. Executes straight‐line cuts to divide the pizza into equal slices

Mechanical Design

Process:    

  • Modelled the end-effector pizza cutter mount in SolidWorks, 3-D printed and assembled it.

Technical Design - Vision System

Step 1: Camera Intrinsic Parameters

Process:    

  • Used checkerboard with known dimensions in many positions to determine intrinsic parameters.
  • Determined intrinsic parameters with OpenCV “findChessboardCorners” and “calibrateCamera”.
 
Step 2: Processing Image

Process:    

  • Heavily blurred the image periphery to remove non-relevant features and suppress noise around the frame edges.

  • Applied a color-based mask to filter out yellow regions corresponding to the robot arm and background, isolating the pizza area.

  • Converted the masked image to grayscale and applied a light Gaussian blur to reduce high-frequency noise and improve edge detection.

  • Ran the OpenCV Canny edge detector to extract boundary edges, then merged fragmented contours to form continuous outlines that ignore internal topping artifacts.

  • Used a RANSAC-based circle-fitting algorithm on the cleaned contour set to robustly identify the pizza’s outer boundary, yielding its center coordinates and diameter in pixels.

Step 3: Apply Transformations

Process:    

  • Transformed the pixel-based center and diameter measurements into the robot’s base frame using calibrated camera intrinsics and extrinsics for precise slicing path generation.

Vision System - Challenge 1

The robot arm’s many surface details created visual noise, so a color-matched mask was applied to eliminate confusion for pizza detection.

Vision System - Challenge 2

Noise from cheese and toppings obscures the pizza’s edges, hindering accurate determination of its center and diameter. To solve this: 

  • Merged fragmented contours into continuous outlines to form coherent boundaries.
  • Employed a RANSAC based circle fitting algorithm on the cleaned contour set to accurately determine the pizza center and diameter despite residual noise.

Technical Design - Inverse Kinematics

Step 1: Inverse Kinematics Equations
Step 2: Inverse Kinematic Script

Process:    

  • Forward kinematic equations were found using the standard D-H convention table. 
  • Inverse kinematic equations were found using the geometric approach.
  • Robot arm control script was written to take inputs of X,Y, and Diameter from camera’s script output. 

Results & Demonstration