Back to all posts
Tutorial

Part 2: The Skeleton of Robotics (Kinematics)

Ensemble AI
June 20, 2026
3 min read

Welcome to Part 2 of our "Robotics Zero to Hero" series. In our last post, we discussed the mathematics of rigid body transformations. Now, we string those transformations together to form the "skeleton" of a robot. This is the study of Kinematics.

The Math: Forward Kinematics and D-H Parameters

Forward Kinematics (FK) is the process of calculating the position and orientation of the robot's end-effector (the "hand" or "tip") given the current angles or displacements of its joints.

If a robot has nn joints, we can describe the transformation from the base frame to the end-effector frame as a chain of matrix multiplications:

Tbasetip=T01(q1)T12(q2)Tn1n(qn)T_{base}^{tip} = T_0^1(q_1) \cdot T_1^2(q_2) \dots T_{n-1}^n(q_n)

Where qiq_i is the variable for joint ii (an angle for a revolute joint, or a distance for a prismatic joint).

Denavit-Hartenberg (D-H) Parameters

To standardize how we define these transformations, roboticists use Denavit-Hartenberg (D-H) parameters. For any pair of adjacent links, we can define the transformation using exactly four parameters:

  • θi\theta_i: Joint angle (rotation about zi1z_{i-1})
  • did_i: Link offset (translation along zi1z_{i-1})
  • aia_i: Link length (translation along xix_i)
  • αi\alpha_i: Link twist (rotation about xix_i)

The standard D-H transformation matrix from frame i1i-1 to frame ii is:

Ti1i=[cosθisinθicosαisinθisinαiaicosθisinθicosθicosαicosθisinαiaisinθi0sinαicosαidi0001]T_{i-1}^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}

Python Implementation: Building a D-H Chain

Let's build a simple Python class to evaluate a kinematic chain based on D-H parameters.

Loading Interactive Python Environment...

Focus on the Octopus: Finding the Tip

Traditional industrial robots have rigid links and discrete joints, making D-H parameters highly effective. Our metallic continuum octopus robot, however, bends continuously.

To approximate the forward kinematics of an octopus tentacle, we treat the continuum arm as a series of many tiny rigid segments, each capable of bending slightly. We can define the "joint angles" qq as the curvature parameters of each segment. By chaining together dozens of these small transformation matrices (similar to our D-H loop above), we can accurately calculate the 3D coordinate of the tentacle tip based on the pneumatic or cable-driven actuation lengths.

In Part 3, we flip the problem on its head: if we know where we want the tentacle tip to go, how do we calculate the necessary joint angles? Enter Inverse Kinematics.

Ready to automate your operations?

Schedule a consultation with our robotics procurement experts today.

Request Analysis

Ensemble Assistant

Ready

Quick Actions: