Robot Classification, Rotation Matrices, Homogeneous Transformations and Forward Kinematics
1. Classification: serial and parallel manipulators, configurations, links and joints
A serial manipulator is an open chain: base, link, joint, link, … to the end-effector, each joint moving everything beyond it. It has a large workspace, but errors and compliance accumulate along the chain. A parallel manipulator connects the moving platform to the base through several chains at once — the Stewart–Gough platform, the delta robot — so it is stiffer, more accurate and faster for its mass, with a smaller workspace and more complex kinematics. The basic joints are revolute (R), a rotation, and prismatic (P), a sliding translation, each of one degree of freedom; a cylindrical joint has two and a spherical joint three.
| Configuration | Joints | Workspace |
|---|---|---|
| Cartesian (gantry) | PPP | A rectangular box |
| Cylindrical | RPP | A portion of a hollow cylinder |
| Spherical (polar) | RRP | A portion of a hollow sphere |
| SCARA | RRP, two revolute axes vertical and parallel | A thick annular region; compliant sideways, stiff vertically |
| Articulated (anthropomorphic) | RRR | Nearly spherical, the largest for its size |
Degrees of freedom. A rigid body in space has six — three of position, three of orientation — so a general-purpose arm has six joints, usually three in the arm to place the wrist and three in the wrist to orient the tool; more than six is redundant. The mobility of a mechanism of n links (ground included) follows Grübler: M = 3(n − 1) − 2j₁ − j₂ in the plane, j₁ the one-freedom joints and j₂ the two-freedom ones; in space, M = 6(n − 1) − 5j₁ − 4j₂ − 3j₃ − …. A planar five-bar with five revolute joints has M = 3 × 4 − 10 = 2. Coordinate systems are attached to the world, the base, every joint and the tool, and kinematics is the bookkeeping between them.
Workspace is the set of points the tool can reach. A planar two-link arm with lengths l₁ ≥ l₂ and unrestricted revolute joints reaches the annulus between radii l₁ − l₂ and l₁ + l₂; with l₁ = 0.5 m and l₂ = 0.3 m that is π(0.8² − 0.2²) = 0.6π ≈ 1.88 m². Equal link lengths close the hole and let the tool reach the base; joint limits cut the annulus into a smaller region.
2. Rotation matrices in 2D and 3D
A rotation by θ in the plane is R(θ) = [[cos θ, −sin θ], [sin θ, cos θ]]; its columns are the rotated unit vectors. In space the three elementary rotations are R_z(θ) = [[c, −s, 0], [s, c, 0], [0, 0, 1]], R_y(θ) = [[c, 0, s], [0, 1, 0], [−s, 0, c]] and R_x(θ) = [[1, 0, 0], [0, c, −s], [0, s, c]], with c = cos θ and s = sin θ. Every rotation matrix is orthogonal with determinant +1: R⁻¹ = Rᵀ, its columns (and rows) are orthonormal, and it preserves lengths and angles. R_z(90°) takes (1, 0, 0) to (0, 1, 0).
Rotations do not commute, so the order of composition matters, and it depends on the axes used. For successive rotations about the fixed (world) axes, each new rotation premultiplies: rotate about fixed x, then about fixed z, gives R = R_z R_x. For successive rotations about the current (moving) axes, each postmultiplies: rotate about x, then about the new z, gives R = R_x R_z. Roll–pitch–yaw and Euler angles are named sequences of three such rotations.
3. Homogeneous transformations
A frame B located relative to frame A by a rotation R and a translation d of its origin maps a point as p_A = R p_B + d. Writing points as (x, y, z, 1) folds this into one 4 × 4 matrix, T = [[R, d], [0 0 0, 1]], so p_A = T p_B, and a chain of frames composes by multiplication: ⁰T₃ = ⁰T₁ ¹T₂ ²T₃. The inverse is not found by general inversion: T⁻¹ = [[Rᵀ, −Rᵀd], [0 0 0, 1]].
Worked: frame B is rotated 90° about z_A and its origin is at (2, 1, 0) in A. The point (3, 1, 0) in B is R_z(90°)(3, 1, 0) + (2, 1, 0) = (−1, 3, 0) + (2, 1, 0) = (1, 4, 0) in A. Rotating first and translating second is built into T: the translation d is expressed in A, not in B.
4. Forward kinematics and the Denavit–Hartenberg convention
Forward kinematics gives the pose of the end-effector from the joint variables. For the planar two-link arm: x = l₁ cos θ₁ + l₂ cos(θ₁ + θ₂) and y = l₁ sin θ₁ + l₂ sin(θ₁ + θ₂), with orientation φ = θ₁ + θ₂. With l₁ = 1 m, l₂ = 0.5 m, θ₁ = 30° and θ₂ = 60°: x = 0.866 + 0.5 cos 90° = 0.866 m and y = 0.5 + 0.5 sin 90° = 1.0 m. The distance from the base depends on θ₂ alone: r² = l₁² + l₂² + 2l₁l₂ cos θ₂.
For a general chain the Denavit–Hartenberg (DH) convention attaches frame i to link i with zi−1 along joint i’s axis, and describes each link by four numbers: θᵢ, the angle about zi−1 from xi−1 to xᵢ; dᵢ, the offset along zi−1; aᵢ, the link length along xᵢ between zi−1 and zᵢ; and αᵢ, the twist about xᵢ from zi−1 to zᵢ. For a revolute joint θᵢ is the variable, for a prismatic joint dᵢ. Each link contributes Aᵢ = Rot_z(θᵢ) Trans_z(dᵢ) Trans_x(aᵢ) Rot_x(αᵢ), and ⁰Tₙ = A₁A₂…Aₙ.
| Link | θᵢ | dᵢ | aᵢ | αᵢ |
|---|---|---|---|---|
| 1 | θ₁ (variable) | 0 | l₁ | 0 |
| 2 | θ₂ (variable) | 0 | l₂ | 0 |
Multiplying out, the position column of Aᵢ is (aᵢ cos θᵢ, aᵢ sin θᵢ, dᵢ) — so a link with θ = 60°, d = 0.1 m, a = 0.4 m places the next origin at (0.2, 0.346, 0.1) in its own base frame, whatever its twist — and A₁A₂ for the table above reproduces the two-link equations.
5. Applications: control modes, end-effectors, accuracy and repeatability
Point-to-point (PTP) control cares only about the taught end positions, not the path between: spot welding, pick-and-place, palletising, machine loading. Continuous-path (CP) control makes the tool follow a specified path at a specified speed, which requires coordinated motion of all the joints and interpolation between points: arc welding, spray painting, sealing, deburring. End-effectors are either grippers — two- or three-finger mechanical grippers holding by friction or by enclosing the part, vacuum cups for flat and smooth parts, magnetic grippers for ferrous parts, adhesive grippers for fabrics — or tools: a welding gun or torch, a spray gun, a spindle.
A friction gripper must hold the weight with margin: n fingers each pressing with F give friction nμF ≥ mg, so a 2 kg part held by two fingers with μ = 0.4 needs F = mg/(nμ) = 2 × 9.81/(2 × 0.4) ≈ 24.5 N per finger, before any allowance for acceleration. Repeatability is how closely the robot returns to a taught point, commonly quoted as ±3σ of the scatter; accuracy is how closely it reaches a commanded point it was never taught, and it is worse, because kinematic-model errors, link deflection and calibration add to the scatter. A robot can be highly repeatable and inaccurate. Control resolution is the smallest increment the controller can command, set by the bits of the joint’s position encoding, and it bounds both.
Key takeaways
- Serial arms are open chains with large workspaces; parallel manipulators are stiffer and more accurate with smaller workspaces.
- Cartesian PPP, cylindrical RPP, spherical RRP, SCARA RRP with parallel vertical axes, articulated RRR; planar mobility M = 3(n − 1) − 2j₁ − j₂.
- A rotation matrix is orthogonal with determinant +1; fixed-axis rotations premultiply, current-axis rotations postmultiply.
- T = [[R, d], [0, 1]] and T⁻¹ = [[Rᵀ, −Rᵀd], [0, 1]]; DH: A = Rot_z(θ) Trans_z(d) Trans_x(a) Rot_x(α).
- Two-link reach: annulus from |l₁ − l₂| to l₁ + l₂; PTP for spot welding, CP for arc welding; repeatability is not accuracy.
Practice questions (16)
Attempt each one before opening the answer. Every explanation names the tempting wrong option as well as the right one, because that is where marks are lost.
The joint configuration of the first three axes of a SCARA robot is:
Show answer
Answer: A — RRP
A SCARA has two revolute joints with parallel vertical axes, moving the arm in a horizontal plane, and a prismatic vertical axis. PPP is Cartesian, RPP cylindrical and RRR articulated. The spherical robot is also RRP, but with its two revolute axes perpendicular.Compared with a serial manipulator of similar size, a parallel manipulator generally has:
Show answer
Answer: A — higher stiffness and a smaller workspace
Several chains share the load in parallel, so deflections do not accumulate as they do along a serial chain — but the chains constrain each other, which shrinks the reachable region. A parallel manipulator is by definition a closed chain.A planar closed-loop mechanism has five links, including the fixed link, connected by five revolute joints. Its degree of freedom by Grübler’s criterion is ____.
Numerical answer — type the value.
Show answer
Answer: 2
M = 3(n − 1) − 2j₁ − j₂ = 3 × 4 − 2 × 5 − 0 = 2: two inputs are needed to fix the five-bar. Counting the links without subtracting the ground (3 × 5) gives 5.A planar two-link arm has link lengths 0.5 m and 0.3 m and revolute joints free to rotate through 360°. The area of its reachable workspace, correct to one decimal place, is ____ m².
Numerical answer — type the value.
Show answer
Answer: 1.9
The tip reaches every radius from l₁ − l₂ = 0.2 m (elbow folded) to l₁ + l₂ = 0.8 m (stretched), so the workspace is an annulus of area π(0.64 − 0.04) = 0.6π ≈ 1.885, which is 1.9 to one place. Taking the full disc of radius 0.8 m gives 2.01 m².Which property does every 3 × 3 rotation matrix R have?
Show answer
Answer: A — R⁻¹ = Rᵀ and det R = +1
Its columns are orthonormal, so RᵀR = I, and it preserves handedness, so the determinant is +1 (−1 would be a reflection). R is symmetric only for rotations of 0° or 180°, and its trace is 1 + 2 cos θ, which is 3 only for the identity.Frame B is obtained from frame A by a rotation of 90° about z_A followed by placing its origin at (2, 1, 0) in A. A point has coordinates (3, 1, 0) in B. Its y-coordinate in A is ____.
Numerical answer — type the value.
Show answer
Answer: 4
p_A = R_z(90°)p_B + d. R_z(90°)(3, 1, 0) = (0·3 − 1·1, 1·3 + 0·1, 0) = (−1, 3, 0); adding (2, 1, 0) gives (1, 4, 0), so y = 4. Adding the translation before rotating would give R_z(90°)(5, 2, 0) = (−2, 5, 0).A body is rotated first about the fixed world x-axis by α and then about the fixed world z-axis by γ. Its resulting orientation matrix is:
Show answer
Answer: A — R_z(γ) R_x(α)
Rotations about fixed axes premultiply: after R_x(α), the second rotation is applied in the world frame, giving R_z(γ)R_x(α). R_x(α)R_z(γ) is the result when the second rotation is about the body’s own (current) z-axis. Rotation matrices are never added.For the homogeneous transformation T = [[R, d], [0 0 0, 1]], the inverse T⁻¹ is:
Show answer
Answer: A — [[Rᵀ, −Rᵀd], [0 0 0, 1]]
From p_A = Rp_B + d, p_B = Rᵀ(p_A − d) = Rᵀp_A − Rᵀd. The translation must be rotated back into B as well as negated; −d alone is correct only when R = I.A planar two-link arm has l₁ = 1 m and l₂ = 0.5 m. At θ₁ = 30° and θ₂ = 60° (θ₂ measured from link 1), the x-coordinate of its tip, correct to two decimal places, is ____ m.
Numerical answer — type the value.
Show answer
Answer: 0.87
x = l₁ cos θ₁ + l₂ cos(θ₁ + θ₂) = cos 30° + 0.5 cos 90° = 0.866 + 0 ≈ 0.87 m (and y = 0.5 + 0.5 = 1.0 m). Using cos θ₂ for the second link, as if θ₂ were measured from the base, gives 0.866 + 0.25 = 1.12.A planar two-link arm has l₁ = 0.4 m and l₂ = 0.3 m. With the elbow angle θ₂ = 60°, the distance from the base joint to the tip, correct to two decimal places, is ____ m.
Numerical answer — type the value.
Show answer
Answer: 0.61
r² = l₁² + l₂² + 2l₁l₂ cos θ₂ = 0.16 + 0.09 + 2 × 0.12 × 0.5 = 0.37, so r = 0.608 ≈ 0.61 m, whatever θ₁ is. The minus sign of the triangle’s cosine rule belongs to the interior angle 180° − θ₂ and gives √0.13 ≈ 0.36 if applied to θ₂ itself.In a Denavit–Hartenberg link transformation, a link has θ = 60°, d = 0.1 m, a = 0.4 m and α = 90°. The x-coordinate of the origin of frame i in frame i − 1 is ____ m.
Numerical answer — type the value.
Show answer
Answer: 0.2
The position column of A = Rot_z(θ)Trans_z(d)Trans_x(a)Rot_x(α) is (a cos θ, a sin θ, d) = (0.4 × 0.5, 0.4 × 0.866, 0.1) = (0.2, 0.346, 0.1). The twist α orients the new frame but does not move its origin, so the 90° is a distractor.In the standard Denavit–Hartenberg convention, the distance measured along xᵢ from the axis zi−1 to the axis zᵢ is the:
Show answer
Answer: A — link length aᵢ
aᵢ is the common-normal distance between successive joint axes, along xᵢ. dᵢ is measured along zi−1, θᵢ is an angle about zi−1, and αᵢ an angle about xᵢ.Which task requires continuous-path rather than point-to-point control?
Show answer
Answer: A — Arc welding along a seam
Arc welding deposits metal all along the path, so the path and speed between points decide the weld. Spot welding, machine loading and palletising need only the end positions, and the path between them is free.A two-finger friction gripper holds a 2 kg part with its fingers pressing on opposite faces; the coefficient of friction is 0.4. Taking g = 9.81 m/s² and neglecting acceleration, the minimum gripping force each finger must apply, correct to one decimal place, is ____ N.
Numerical answer — type the value.
Show answer
Answer: 24.5
Both finger contacts supply friction: 2μF ≥ mg, so F = 2 × 9.81/(2 × 0.4) = 24.525 ≈ 24.5 N. Forgetting that there are two friction surfaces gives 49.1 N; practice adds a safety factor and an allowance for acceleration.Which statements about robot accuracy and repeatability are true?
Show answer
Answer: A — Repeatability is the ability to return to a previously taught point; B — A robot can be highly repeatable and yet inaccurate; D — Control resolution depends on the number of bits used to encode joint position
(A) The definition. (B) Consistent scatter about the wrong point: good repeatability, poor accuracy. (C) False: reaching an untaught point adds model and calibration errors to the scatter, so accuracy is the larger number. (D) n bits divide a joint’s range into 2ⁿ increments.Which statements about robot configurations are true?
Show answer
Answer: B — The workspace of a cylindrical robot is a portion of a hollow cylinder; C — A Cartesian robot has three prismatic joints; D — An articulated robot’s first three joints are all revolute
(A) False: a spherical robot is RRP — two revolute joints and one prismatic. (B) Base rotation, vertical slide and radial slide sweep a thick cylindrical shell. (C) PPP. (D) RRR, like a human arm.