Robot Kinematics Notes FE Sem 1 Engineering Mechanics | MU
On this page
Robot kinematics applies the ideas of position and motion of rigid bodies to chains of links joined by motorised joints. This module explains the basic anatomy of a robot manipulator, joint types and degrees of freedom, and the Denavit-Hartenberg (D-H) convention for attaching coordinate frames to links. Using 4 x 4 homogeneous transformation matrices, the position and orientation of the end effector are obtained from the joint values, which is the forward kinematics problem. The syllabus limits numerical work to 2-DOF serial robots, typically a two-link planar arm.
Summary
Fundamentals of robot mechanics: an industrial robot manipulator is a serial chain of rigid links connected by joints, starting from a fixed base and ending in an end effector (gripper or tool) attached at the wrist. Joints are driven by actuators, and sensors measure the joint variables. Common joints are revolute (R), which allow rotation about an axis, and prismatic (P), which allow sliding along an axis. Based on the first three joints, robots are classified as Cartesian (PPP), cylindrical (RPP), spherical or polar (RRP), SCARA (RRP with parallel vertical axes) and articulated (RRR). The set of points the end effector can reach is the work envelope or workspace.
Degree of freedom: the degree of freedom (DOF) of a body or mechanism is the number of independent coordinates needed to define its configuration. A free rigid body has 6 DOF in space (3 translations and 3 rotations) and 3 DOF in a plane. For an open serial robot each R or P joint adds one DOF, so DOF equals the number of such joints; six DOF are needed to place a tool at any position with any orientation. For planar mechanisms, Grubler's criterion gives F = 3(n - 1) - 2j1 - j2, where n is the number of links including the fixed link, j1 the number of lower-pair (one-DOF) joints and j2 the number of higher pairs.
Coordinate frames and homogeneous transformation: the position and orientation of one frame relative to another are expressed together in a 4 x 4 homogeneous transformation matrix T = [R p; 0 0 0 1], where R is a 3 x 3 rotation matrix (columns are the unit vectors of the new axes in the old frame) and p is the position vector of the new origin. A point with coordinates p_B in frame B has coordinates p_A = T p_B in frame A, using homogeneous coordinates [x y z 1]. Successive transformations relative to the current (moving) frame are combined by post-multiplication, so T_0^2 = T_0^1 T_1^2. The rotation matrix is orthogonal, so its inverse equals its transpose.
Denavit-Hartenberg parameters: the D-H convention places a z axis along each joint axis and describes each link by four parameters. Link length a_i is the distance from z_(i-1) to z_i measured along x_i; link twist alpha_i is the angle from z_(i-1) to z_i about x_i; link offset d_i is the distance from x_(i-1) to x_i along z_(i-1); joint angle theta_i is the angle from x_(i-1) to x_i about z_(i-1). For a revolute joint theta_i is the joint variable; for a prismatic joint d_i is the variable. The link transformation is A_i = Rot(z, theta_i) Trans(z, d_i) Trans(x, a_i) Rot(x, alpha_i).
Forward kinematics of a 2-DOF serial robot: forward kinematics finds the end effector position and orientation from known joint variables by multiplying the link matrices, T_0^2 = A_1 A_2. For a two-link planar RR arm with link lengths L1, L2 and joint angles theta1, theta2 the D-H rows are (theta1, 0, L1, 0) and (theta2, 0, L2, 0), giving x = L1 cos theta1 + L2 cos(theta1 + theta2), y = L1 sin theta1 + L2 sin(theta1 + theta2) and orientation phi = theta1 + theta2. For a planar RP arm with a revolute joint followed by a radial prismatic joint of extension d, x = d cos theta and y = d sin theta. These relations establish how robot joint values determine the tool position, which is the course outcome for this module.
Mind map
Introduction to Robot Kinematics
- Robot anatomy
- Base, links, joints
- Wrist and end effector
- Actuators and sensors
- Work envelope
- Joints and configurations
- Revolute R
- Prismatic P
- Cartesian, cylindrical, spherical
- SCARA, articulated
- Degree of freedom
- 6 in space, 3 in plane
- Serial robot: one per joint
- Grubler's criterion
- Homogeneous transformation
- Rotation matrix
- Translation vector
- 4 x 4 matrix
- Post-multiplication
- D-H parameters
- theta: joint angle
- d: link offset
- a: link length
- alpha: link twist
- Forward kinematics
- T = A1 A2
- 2R planar arm
- RP planar arm
Forward kinematics of a 2-DOF serial robot by the D-H method
- Sketch the robot and identify the joints, their types (R or P) and the link dimensions.
- Assign z_(i-1) along the axis of joint i (for a planar arm all z axes are perpendicular to the plane).
- Fix the base frame x_0 and assign each x_i along the common normal from z_(i-1) to z_i; place the end frame at the tool tip.
- Fill the D-H table with theta_i, d_i, a_i, alpha_i for each link, marking the joint variable.
- Write each link matrix A_i = Rot(z, theta_i) Trans(z, d_i) Trans(x, a_i) Rot(x, alpha_i).
- Multiply T_0^2 = A_1 A_2 and simplify using sum-of-angle identities.
- Read the end effector position from the last column and orientation from the rotation part; substitute the given joint values.
Important definitions
| Term | Meaning |
|---|---|
| Robot manipulator | A serial chain of rigid links connected by actuated joints, fixed at a base and carrying an end effector. |
| Link | A rigid member of the robot connecting two joints. |
| Joint | A connection between two links allowing relative motion; revolute joints allow rotation and prismatic joints allow sliding. |
| End effector | The tool or gripper at the end of the manipulator that interacts with the work. |
| Degree of freedom | The number of independent coordinates or joint variables required to completely specify the configuration of a body or robot. |
| Work envelope | The region of space that the end effector can reach. |
| Homogeneous transformation matrix | A 4 x 4 matrix combining a 3 x 3 rotation and a position vector, used to transform point coordinates between frames. |
| Rotation matrix | A 3 x 3 orthogonal matrix whose columns are the unit vectors of a rotated frame expressed in the reference frame. |
| D-H parameters | The four parameters theta, d, a and alpha that describe the relationship between successive link frames in the Denavit-Hartenberg convention. |
| Forward kinematics | Finding the position and orientation of the end effector from known joint variables. |
| Joint variable | The changing D-H parameter of a joint: theta for revolute and d for prismatic joints. |
Formulas
| Formula | Meaning |
|---|---|
| \( F = 3(n-1) - 2j_1 - j_2 \) | Grubler's criterion for planar mechanisms: n = number of links including the frame, j1 = lower pairs, j2 = higher pairs. |
| \( R_z(\theta) = \begin{bmatrix} \cos\theta & -\sin\theta & 0 \\ \sin\theta & \cos\theta & 0 \\ 0 & 0 & 1 \end{bmatrix} \) | Rotation about the z axis by angle theta (anticlockwise positive). |
| \( T = \begin{bmatrix} R & p \\ 0\;0\;0 & 1 \end{bmatrix},\quad \begin{bmatrix} p_A \\ 1 \end{bmatrix} = T \begin{bmatrix} p_B \\ 1 \end{bmatrix} \) | Homogeneous transformation from frame B to frame A; R is the orientation and p the origin of B in A. |
| \( T^{-1} = \begin{bmatrix} R^T & -R^T p \\ 0\;0\;0 & 1 \end{bmatrix} \) | Inverse of a homogeneous transformation (frame A described in frame B). |
| \( A_i = \begin{bmatrix} \cos\theta_i & -\sin\theta_i\cos\alpha_i & \sin\theta_i\sin\alpha_i & a_i\cos\theta_i \\ \sin\theta_i & \cos\theta_i\cos\alpha_i & -\cos\theta_i\sin\alpha_i & a_i\sin\theta_i \\ 0 & \sin\alpha_i & \cos\alpha_i & d_i \\ 0 & 0 & 0 & 1 \end{bmatrix} \) | Standard D-H link transformation Rot(z, theta) Trans(z, d) Trans(x, a) Rot(x, alpha). |
| \( T_0^2 = A_1 A_2 \) | Forward kinematics of a 2-DOF serial robot. |
| \( x = L_1\cos\theta_1 + L_2\cos(\theta_1+\theta_2),\quad y = L_1\sin\theta_1 + L_2\sin(\theta_1+\theta_2),\quad \phi = \theta_1+\theta_2 \) | End effector position and orientation of a 2R planar arm with link lengths L1, L2. |
| \( x = d\cos\theta,\quad y = d\sin\theta \) | End point of a planar RP arm: rotation theta followed by radial extension d. |
Key points to remember
- A serial robot has DOF equal to the number of its one-DOF joints (R or P).
- Six DOF are needed for arbitrary position and orientation in space; three for arbitrary position and orientation in a plane.
- In a homogeneous matrix, the upper-left 3 x 3 block is rotation and the last column (first three entries) is position.
- Transformations about the current (moving) frame are post-multiplied; about the fixed frame they are pre-multiplied.
- The inverse of a rotation matrix is its transpose; the determinant of a rotation matrix is +1.
- Revolute joint variable is theta; prismatic joint variable is d in the D-H table.
- For a planar arm all joint axes are parallel, so every alpha_i = 0 and every d_i = 0.
- The D-H convention needs only four parameters per link because x axes are chosen along common normals.
- Only forward kinematics of 2-DOF serial robots is in the syllabus; inverse kinematics is not.
Solved examples
Example 1. A two-link planar RR robot has L1 = 0.5 m and L2 = 0.3 m. Find the position and orientation of the end effector when theta1 = 30 degrees and theta2 = 45 degrees.
theta1 + theta2 = 75 degrees; cos 75 = 0.2588, sin 75 = 0.9659. x = 0.5 cos 30 + 0.3 cos 75 = 0.4330 + 0.0776 = 0.5106 m. y = 0.5 sin 30 + 0.3 sin 75 = 0.2500 + 0.2898 = 0.5398 m. Orientation of the end effector (link 2) with the x0 axis phi = 75 degrees. End effector at (0.511 m, 0.540 m).
Example 2. Write the D-H parameter table for the two-link planar RR arm and derive the overall transformation matrix T_0^2.
Both joint axes are perpendicular to the plane, so all alpha = 0 and d = 0. D-H table: link 1: theta1 (variable), d1 = 0, a1 = L1, alpha1 = 0; link 2: theta2 (variable), d2 = 0, a2 = L2, alpha2 = 0. With alpha = 0, A_i = [[c_i, -s_i, 0, L_i c_i], [s_i, c_i, 0, L_i s_i], [0, 0, 1, 0], [0, 0, 0, 1]]. Multiplying A1 A2: the rotation part becomes [[c1c2 - s1s2, -(c1s2 + s1c2), 0], [s1c2 + c1s2, c1c2 - s1s2, 0], [0, 0, 1]] = [[c12, -s12, 0], [s12, c12, 0], [0, 0, 1]]. Position column: x = c1(L2c2) - s1(L2s2) + L1c1 = L1c1 + L2c12, y = s1(L2c2) + c1(L2s2) + L1s1 = L1s1 + L2s12, z = 0. So T_0^2 = [[c12, -s12, 0, L1c1 + L2c12], [s12, c12, 0, L1s1 + L2s12], [0, 0, 1, 0], [0, 0, 0, 1]], where c12 = cos(theta1 + theta2) and s12 = sin(theta1 + theta2).
Example 3. For the arm of the first example (L1 = 0.5 m, L2 = 0.3 m, theta1 = 30 degrees, theta2 = 45 degrees), write the numerical matrix T_0^2.
c12 = cos 75 = 0.2588, s12 = sin 75 = 0.9659, x = 0.5106, y = 0.5398. T_0^2 = [[0.2588, -0.9659, 0, 0.5106], [0.9659, 0.2588, 0, 0.5398], [0, 0, 1, 0], [0, 0, 0, 1]]. The first column is the direction of x2 (along link 2) in the base frame, and the last column gives the tool tip position.
Example 4. Frame B is obtained by rotating frame A through 90 degrees about z_A and then translating its origin to (3, 4, 0) in frame A. A point has coordinates (2, 1, 0) in frame B. Find its coordinates in frame A.
R = Rz(90) = [[0, -1, 0], [1, 0, 0], [0, 0, 1]], p = (3, 4, 0). T = [[0, -1, 0, 3], [1, 0, 0, 4], [0, 0, 1, 0], [0, 0, 0, 1]]. p_A = T [2, 1, 0, 1]^T: x = 0(2) - 1(1) + 0 + 3 = 2, y = 1(2) + 0(1) + 0 + 4 = 6, z = 0. The point is at (2, 6, 0) in frame A.
Example 5. Using Grubler's criterion find the degrees of freedom of (a) a four-bar linkage, (b) a planar five-bar linkage, (c) a planar two-link RR robot arm.
(a) Four-bar: n = 4 links including the frame, j1 = 4 revolute joints, j2 = 0. F = 3(4 - 1) - 2(4) = 9 - 8 = 1. (b) Five-bar: n = 5, j1 = 5. F = 3(4) - 10 = 2. (c) Open 2R arm: n = 3 (base, link 1, link 2), j1 = 2. F = 3(2) - 4 = 2, matching one DOF per joint.
Example 6. A planar RP robot has a revolute joint at the base followed by a prismatic joint that extends the arm radially. Find the end point when theta = 60 degrees and the extension d = 0.8 m, and write its homogeneous transformation.
The end frame is obtained by Rot(z, theta) followed by Trans(x, d) in the rotated frame: T = Rz(theta) Tx(d) = [[cos theta, -sin theta, 0, d cos theta], [sin theta, cos theta, 0, d sin theta], [0, 0, 1, 0], [0, 0, 0, 1]]. With theta = 60 degrees and d = 0.8 m: x = 0.8(0.5) = 0.4 m, y = 0.8(0.866) = 0.693 m. T = [[0.5, -0.866, 0, 0.4], [0.866, 0.5, 0, 0.693], [0, 0, 1, 0], [0, 0, 0, 1]].
Example 7. A 2R planar arm has L1 = 1 m and L2 = 0.6 m. Find the end effector position and orientation for theta1 = 90 degrees and theta2 = -30 degrees.
theta1 + theta2 = 60 degrees. x = 1 cos 90 + 0.6 cos 60 = 0 + 0.3 = 0.3 m. y = 1 sin 90 + 0.6 sin 60 = 1 + 0.520 = 1.520 m. Orientation phi = 60 degrees from the x0 axis. End effector at (0.3 m, 1.52 m).
Important questions and answers
Q1. Define degree of freedom. How many DOF does a rigid body have in space and in a plane? (3 marks)
Degree of freedom is the number of independent coordinates required to completely specify the position of a body or mechanism. A free rigid body in space has 6 DOF: translations along x, y, z and rotations about x, y, z. In a plane it has 3 DOF: translations along x and y and rotation about z. A serial robot's DOF equals the number of its independent joints.
Q2. Explain the basic components of a robot manipulator. (4 marks)
Base: fixed support of the robot. Links: rigid members forming the arm. Joints: revolute (rotary) or prismatic (sliding) connections giving relative motion between links. Wrist: the last few joints that orient the tool. End effector: gripper or tool that does the task. Actuators: electric, hydraulic or pneumatic drives that move the joints. Sensors: measure joint positions and the environment. Controller: computes and commands the motion.
Q3. Explain the four D-H parameters with a sketch. (5 marks)
With z_(i-1) along joint i and x_i along the common normal between z_(i-1) and z_i: (1) Joint angle theta_i: angle from x_(i-1) to x_i measured about z_(i-1); variable for a revolute joint. (2) Link offset d_i: distance from x_(i-1) to x_i measured along z_(i-1); variable for a prismatic joint. (3) Link length a_i: distance between z_(i-1) and z_i measured along x_i. (4) Link twist alpha_i: angle from z_(i-1) to z_i measured about x_i. a_i and alpha_i are fixed by link geometry. The sketch shows two joint axes, their common normal and the four parameters.
Q4. What is a homogeneous transformation matrix? Explain its parts. (4 marks)
It is a 4 x 4 matrix that describes both the orientation and the position of one frame relative to another: T = [R p; 0 0 0 1]. The upper-left 3 x 3 block R is the rotation matrix whose columns are the unit vectors of the new frame expressed in the reference frame. The upper-right 3 x 1 column p is the position of the new origin. The bottom row [0 0 0 1] is the perspective and scale part (trivial in robotics). It allows rotation and translation to be applied together by one matrix multiplication and allows chaining of frames by multiplication.
Q5. Differentiate between forward and inverse kinematics. (3 marks)
Forward kinematics computes the position and orientation of the end effector from known joint variables; it has a unique solution obtained by multiplying link transformation matrices. Inverse kinematics finds the joint variables that place the end effector at a desired position and orientation; it is nonlinear and may have multiple solutions or none. Only forward kinematics is in this syllabus.
Q6. Explain revolute and prismatic joints and robot configurations based on them. (4 marks)
A revolute joint (R) permits rotation about an axis; its variable is an angle. A prismatic joint (P) permits linear sliding along an axis; its variable is a length. Configurations by the first three joints: Cartesian PPP with a rectangular box workspace; cylindrical RPP with a cylindrical workspace; spherical or polar RRP with a spherical shell workspace; SCARA with two parallel vertical revolute axes and a vertical prismatic joint, used for assembly; articulated RRR, like a human arm, with the largest workspace for its size.
Q7. Derive the forward kinematics of a two-link planar manipulator. (6 marks)
D-H table: (theta1, 0, L1, 0) and (theta2, 0, L2, 0). A1 = [[c1, -s1, 0, L1c1], [s1, c1, 0, L1s1], [0, 0, 1, 0], [0, 0, 0, 1]], A2 = [[c2, -s2, 0, L2c2], [s2, c2, 0, L2s2], [0, 0, 1, 0], [0, 0, 0, 1]]. T = A1 A2 = [[c12, -s12, 0, L1c1 + L2c12], [s12, c12, 0, L1s1 + L2s12], [0, 0, 1, 0], [0, 0, 0, 1]], using c1c2 - s1s2 = c12 and s1c2 + c1s2 = s12. So the end effector is at x = L1 cos theta1 + L2 cos(theta1 + theta2), y = L1 sin theta1 + L2 sin(theta1 + theta2), with orientation theta1 + theta2.
Q8. Write the rotation matrices about the x, y and z axes. (3 marks)
Rx(theta) = [[1, 0, 0], [0, c, -s], [0, s, c]]; Ry(theta) = [[c, 0, s], [0, 1, 0], [-s, 0, c]]; Rz(theta) = [[c, -s, 0], [s, c, 0], [0, 0, 1]], where c = cos theta and s = sin theta and theta is positive anticlockwise when viewed from the positive end of the axis.
Q9. Why are homogeneous transformations multiplied in a particular order? (3 marks)
Matrix multiplication is not commutative, so rotating then translating gives a different result from translating then rotating. In the D-H convention each link transformation is defined relative to the previous (moving) frame, so the matrices are post-multiplied in sequence from base to tool: T_0^n = A1 A2 ... An. Transformations about the fixed base frame are instead pre-multiplied.
Exam tips
- Draw the robot with frames and label theta, a, d and alpha; a sketch is expected in theory answers.
- Write the D-H table neatly and mark which parameter is the joint variable.
- In matrix multiplication show at least one row-by-column step, then simplify with sum-of-angle identities.
- Check the final position with the simple geometric formula for a 2R arm.
- Keep angles in degrees consistently and evaluate sines and cosines to four decimal places.
FAQs
Is inverse kinematics included?
No. The syllabus covers forward kinematics and homogeneous transformation limited to 2-DOF serial robots.
Why use 4 x 4 matrices instead of 3 x 3?
A 3 x 3 matrix can represent only rotation. Adding a fourth row and column lets rotation and translation be combined in one matrix, so a chain of frames is handled by multiplication.
How many marks does this module carry?
It has only 2 teaching hours, so expect a short theory question or a small 2-DOF forward kinematics numerical.
These notes follow the University of Mumbai first-year engineering syllabus (NEP 2020, Engineering Mechanics) and were prepared with AI help and checked.
More in Engineering Mechanics
See all →- System of Forces Notes FE Sem 1 Engineering Mechanics | MU MU FE Sem 1 Engineering Mechanics System of Forces notes: resultants of concurrent, parallel and general forces, moments, couples, Varignon,...
- Centroid Notes FE Sem 1 Engineering Mechanics | Mumbai University Centroid of plane laminas for MU FE Sem 1 Engineering Mechanics: standard shapes, composite and cut-out areas, T, L, I sections with solved...
- Equilibrium and Friction Notes FE Sem 1 Mechanics | Mumbai Univ MU FE Sem 1 Engineering Mechanics Module 3: equilibrium conditions, free body diagrams, beam support reactions, laws of friction, inclined p...
- Kinematics of Particles and Rigid Bodies Notes FE Sem 1 | MU MU FE Sem 1 Engineering Mechanics Module 4: variable acceleration, curvilinear motion, tangential and normal acceleration, ICR for plane mot...
- Kinetics of Particle Notes FE Sem 1 Engineering Mechanics | MU MU FE Sem 1 Engineering Mechanics Module 5: D'Alembert's principle, inertia force, impulse-momentum, restitution, direct and oblique impact.