Training Industrial Robotics — Kinematics, Jacobians & Motion Planning DH Parameters, Forward Kinematics & the Geometric Jacobian
1 / 2

DH Parameters, Forward Kinematics & the Geometric Jacobian

60 min Industrial Robotics — Kinematics, Jacobians & Motion Planning

DH Parameters, Forward Kinematics & the Geometric Jacobian

The Denavit–Hartenberg (DH) convention provides a systematic 4-parameter description of each link-joint pair in a serial manipulator. From the DH table, the forward kinematic map is constructed as a chain of $4\times 4$ homogeneous transformation matrices. The geometric Jacobian then maps joint-space velocities to Cartesian end-effector velocities — the central object of robot velocity kinematics.

1. Denavit–Hartenberg Convention

For joint $i$, four parameters describe the geometry between frames $\{i-1\}$ and $\{i\}$:

  • $a_i$ — link length (distance along $x_i$ from $z_{i-1}$ to $z_i$)
  • $\alpha_i$ — link twist (angle from $z_{i-1}$ to $z_i$ about $x_i$)
  • $d_i$ — link offset (distance along $z_{i-1}$ from $x_{i-1}$ to $x_i$)
  • $\theta_i$ — joint angle (angle from $x_{i-1}$ to $x_i$ about $z_{i-1}$) — the variable for revolute joints

The homogeneous transformation from frame $i-1$ to frame $i$:

$${}^{i-1}T_i = \begin{pmatrix} c_{\theta_i} & -s_{\theta_i}c_{\alpha_i} & s_{\theta_i}s_{\alpha_i} & a_i c_{\theta_i} \\ s_{\theta_i} & c_{\theta_i}c_{\alpha_i} & -c_{\theta_i}s_{\alpha_i} & a_i s_{\theta_i} \\ 0 & s_{\alpha_i} & c_{\alpha_i} & d_i \\ 0 & 0 & 0 & 1 \end{pmatrix}$$

The forward kinematic map is the product: ${}^0T_n = {}^0T_1 \cdot {}^1T_2 \cdots {}^{n-1}T_n$.

2. Geometric Jacobian for a 2R Planar Robot

For an $n$-DOF robot with revolute joints, the geometric Jacobian $J \in \mathbb{R}^{6\times n}$ has columns:

$$J_i = \begin{pmatrix} z_{i-1} \times (p_e - p_{i-1}) \\ z_{i-1} \end{pmatrix}$$

where $z_{i-1}$ is the joint axis unit vector, $p_e$ is the end-effector position, and $p_{i-1}$ is the origin of frame $i-1$. For the 2R planar robot with links $L_1, L_2$ and joint angles $\theta_1, \theta_2$:

$$J = \begin{pmatrix} -L_1 s_1 - L_2 s_{12} & -L_2 s_{12} \\ L_1 c_1 + L_2 c_{12} & L_2 c_{12} \end{pmatrix}$$

The Jacobian maps $\dot{\mathbf{q}} = (\dot{\theta}_1, \dot{\theta}_2)^T$ to end-effector velocity $\dot{\mathbf{x}} = J \dot{\mathbf{q}}$. Singularities occur when $\det J = L_1 L_2 s_2 = 0$, i.e., when $\theta_2 = 0°$ (fully stretched) or $\theta_2 = \pm 180°$ (fully folded).

3. Singularity Analysis via SVD

The singular value decomposition $J = U \Sigma V^T$ reveals the manipulability ellipsoid. The smallest singular value $\sigma_{\min}$ measures distance to singularity; the manipulability measure is:

$$w = \sqrt{\det(JJ^T)} = \sigma_1 \sigma_2 \cdots \sigma_r$$

Motion planning algorithms avoid configurations where $w < w_{threshold}$, typically 5–10% of the maximum manipulability, to prevent joint velocity saturation.

Worked Example — 2R Robot Forward Kinematics

$L_1 = 0.5$ m, $L_2 = 0.4$ m, $\theta_1 = 45°$, $\theta_2 = -30°$. Then $s_1 = 0.7071$, $c_1 = 0.7071$, $s_{12} = s_{15°} = 0.2588$, $c_{12} = 0.9659$.

$$p_x = 0.5(0.7071) + 0.4(0.9659) = 0.3536 + 0.3864 = 0.7400\text{ m}$$

$$p_y = 0.5(0.7071) + 0.4(0.2588) = 0.3536 + 0.1035 = 0.4571\text{ m}$$

$\det J = L_1 L_2 s_{\theta_2} = 0.5 \times 0.4 \times \sin(-30°) = -0.1$ m² — well away from singularity. ✓

2R Planar Robot — Forward Kinematics & Jacobian
x_e =0.740m
y_e =0.457m
Reach r =0.860m
det(J) =−0.100(0 = singular)

Practice Problems

1. Derive the DH table for a 3R planar robot with link lengths $L_1=L_2=L_3=1$ m. Write the forward kinematic expression for $p_x, p_y$ as a function of $\theta_1, \theta_2, \theta_3$.
2. For the 2R robot with $L_1=0.6$ m, $L_2=0.4$ m, find both inverse kinematic solutions (elbow-up and elbow-down) for the end-effector target $(0.5, 0.5)$ m.
3. Compute $\det J$ for the 2R robot as a function of $\theta_2$ alone and sketch the manipulability measure $w$ over $\theta_2 \in [-180°, 180°]$. Identify singular configurations.