Mec.E. 555 Assignment #1
Transformations and DH Parameters

Date due: Friday, February 16, 1996, 12:00 noon


Questions?

Send a message to roger.toogood@ualberta.ca


You are free to use MATLAB to perform any or all calculations required! In fact, you are encouraged to investigate the Robotics Toolbox MATLAB tools to assist with this assignment. In particular, you should investigate the following Toolbox functions:

rotx
rotation transform (X-axis)
roty
rotation transform (X-axis)
rotz
rotation transform (X-axis)
transl
translation transform
dh
not really a function, but "help dh" will explain how the Toolbox stores a robot's complete set of DH parameters
linktrans
creates an A matrix for a robot link
fkine
computes forward kinematics given vector of joint positions
ikine
computes inverse kinematics given the DH parameters and a position transform T

Note that all the Toolbox functions are numerical. Sometimes we will be interested in the symbolic solutions. A good example of this is the inverse kinematics. The Toolbox function computes this iteratively, given a first guess at the solution. A symbolic solution will be direct. You might like to have a look at what MATLAB can do with symbolic expressions. It would be very useful if some of the above functions could be implemented to deal with the matrices symbolically. Idea for a project?

We will be making more extensive use of the Toolbox in coming assignments. For now, you should become comfortable with the basic functions dealing with homogeneous transformations and link A matrices. Most of this assignment can be done from the command line in MATLAB. If you want to save a copy of your MATLAB session, see the diary command.


Problem 1:

The positions of the vertices of a prism, relative to the world X-Y-Z axes, are shown in the figure below. From its current position, the following operations are performed on the prism:

  1. rotate 90 degrees about the X axis
  2. translate -2 units in the X direction
  3. rotate 90 degrees about the Z axis

a) Performing each transformation relative to the world axes in the order 1-2-3, calculate and sketch the position of the prism after each move. Some isometric graph paper would be useful for this if your sketching techniques are a bit rough!

b) Obtain the composite transformation and calculate the final position of the prism directly from its initial position. Does this agree with part (a)?

c) Perform the same transformations in a reverse order (3-2-1) but relative to a coordinate frame x-y-z fixed in the prism that initially coincides with the world frame. Should this agree with parts (a) and (b)?

d) By inspection, determine a transformation sequence and obtain the composite transformation which will return the prism to its initial position. Try not to just go backward through the original transforms - come up with a totally different sequence.

e) Using the formula for the inverse of a transformation matrix, find the inverse of the matrix obtained in (b). How does this relate to the transform of part (d)?


Problem 2:

By inspection (ie. don't devise and compute a transformation sequence, just look at the final position/orientation), determine the transformation matrices for the coordinate frames A, B, and C shown in the figure below.


Problem 3:

A common robot geometry used for assembly of small parts is the SCARA (Selective Compliance Arm for Robotic Assembly) robot, shown below. This consists of three consecutive parallel revolute joints and a final prismatic joint. Determine the Denavit-Hartenberg parameters and the A matrices for each link. Note the positive direction of rotation of joint 3. Obtain the symbolic transformation, T4, from the world X-Y-Z system to the tip of the end effector. Verify your solution.


THE END (at last!)

Return to Assignment List