Puma Light Painting
computer-controlled serial manipulator

November 10, 2014

As part of an introductory robotics class, this project involved Matlab programming skills to control the motion of a PUMA 260 robot in order to draw something interesting in the air with a colored light. The motion of the robot is captured by taking a long-exposure photograph.

Solving the robot's full inverse kinematics (IK) was the first step; the PUMA is an articulated (RRR) robot with lateral offsets plus a spherical wrist (RRR).

Our next step was to draw a picture that has discrete points that can be translated into joint angles for the robot (using the IK solution). Our group traced lines from an existing image of a lion's head. Once we had our simplified reference drawing (below-left), we imported it into Matlab and converted the image into an array of coordinates that would correspond to the points on the lion's face that the PUMA would trace (below-middle). We did this through the use of the "ginput" function and custom-written code to help smooth the contours of the face.

Once the points were generated and fed to the robot, we recorded the light painting with the actual robot; as can be seen below. Our final product is shown above-right.