MEAM.Design - MEAM520 - P01 : Graffiti


Feb 7      Project begins
Feb 8 Team formation (deadline at 6:00 p.m.)
Feb 10 Robot training signup (deadline at 6:00 p.m.)
Feb 11 & 14 Robot training
Feb 18 Final submission (deadline at 6:00 p.m.)

Team Formation

Before you begin on the project, you will need to form a team with two other people. Each team must have at least one graduate student (roughly 1/3 of the class are registered graduate students, so you will likely only have 1 grad student per team). We STRONGLY encourage you to make sure that at least one person on the team is very comfortable with Matlab. Once you have found a group, place your names on the team forming page. Those not listed on the page by the deadline will be randomly assigned.

Full IK Solution

As a team, you need to solve the full inverse kinematics for the PUMA260 and create a function, puma_ik.m in Matlab. This function needs to output the six joint angles (in radians) given the desired position (in millimeters) and Euler angles (in radians) of the LED with respect to the base coordinate frame (zero degrees is the configuration shown here). In addition to solving the general inverse kinematics, your function should also ensure that it does not violate the joint or workspace limits listed on the PUMA260 page. Your code should intelligently handle singularities, redundancies, and null solutions.

Simulated Drawing

Using your IK solver and any of the robot-control commands listed on the PUMA260 page, write a script called puma_line.m to move the LED from (350,-150,400) to (350,-50,400) while keeping the axis of the LED (Z7) pointing in the X0 direction.

To test your algorithm, we have developed a robot emulator that accepts the same Matlab commands as the real robot and returns a graphical representation of the PUMA260. You can download this emulator from the PUMA260 page.

Verify that your line-drawing script works using the emulator, then zip your files together, rename the folder as (where N is your team number), and send it via email to We will check over your solution and send your team a go/no-go email for progression to the robot training phase below.

Robot training

Once you've received confirmation that your line drawing simulation passed, your entire team will need to meet with one of the teaching staff to learn how to safely use our robot. This will take approximately ten minutes, and you must sign up here before 6:00 p.m. on Thursday, Feb 10th.

Time on the Robot

After you have been trained, you are cleared to work with the robot. Please, please, please be careful, and remember the big red button. As there are 16 teams, and you all have to use the robot, you must sign up for time to run the robot. You can sign up for 2 slots. Each slot is 30 minutes. If you need more time than 1 hour, let us know, but you should be simulating everything before touching the robot. As such, 1 hours hould be plenty. You can sign up for time here: here

Light Painting

Now it's time to make something beautiful. First, develop a path plan and test it using the emulator. Once you are quite certain that there aren't any bugs in your routine, you can test it using the robot. A medium-resolution video camera will allow you to preview your art. Once you are satisfied with your results, send an email to letting us know that you are ready for final capture. We will respond to set up a time to observe your work and take a high-resolution image using the Nikon D90.