Learn AI.
Build AI Systems · ORIGINAL LEARN AI LESSON

Describe where the robot is.

Move a two-link arm, express points in named frames and distinguish ideal reach from verified motion.

By the end: Compute planar forward kinematics and coordinate transformations while keeping angle units, frame direction and reach assumptions explicit.

01 · TRY

Start with something concrete.

A point is one metre forward from a robot base. The base turns left by a quarter-turn. Does “forward” still mean the same world direction?

Try the interactive model ↓
02 · PREDICT
Before you experiment

The base is at world (1, 0) metres and points 90° counterclockwise from world x. A point has base coordinates (2, 0). Where is it in the world?

The base is at world (1, 0) metres and points 90° counterclockwise from world x. A point has base coordinates (2, 0). Where is it in the world?
03 · EXPERIMENT

Change one thing. Watch what follows.

  1. Move shoulder and elbow independently and identify which angle is relative to which link.
  2. Rotate and translate the base, then inspect the same point in tool, base and world coordinates.
  3. Convert the fixed target into local frames while keeping its world location unchanged.
  4. Show the unreachable inner target and contrast reachability with current tip error.
  5. Inject each frame/unit fault and find both a revealing example and an example that hides it.
  6. Capture three audits with units, assumptions and independent checking plans.

Loading this browser experiment…

04 · UNDERSTAND

A location needs a reference

“Two metres to the right” is incomplete until we agree whose right. A coordinate frame supplies an origin and directed axes. Here world W stays fixed, base B follows the mount, and tool E follows the tip of a two-link arm. Each frame has an x-axis and a perpendicular y-axis.

A point can have different coordinate pairs without changing its physical location. The lab lists the fixed target in all three frames. Turning the arm changes the target’s tool coordinates while its world coordinates stay the same. An attached tool point behaves differently: physically moving its frame moves the point too.

All distances use metres. Positive angles turn counterclockwise. The picture draws world y upward even though browser screen coordinates normally increase downward; screen placement is separate from the geometry.

Learn a rotation from a quarter-turn

Begin with the local point (2, 0). Turning the local frame 90° counterclockwise puts that point along world y, at (0, 2) relative to the local origin. If the origin is at world (1, 0), add that translation to get (1, 2).

For other angles, cosine gives the horizontal component of a unit direction and sine gives its vertical component. At 0°, these are 1 and 0. At 90°, they are 0 and 1. Negative angles turn clockwise. You can use the sliders before memorizing any trigonometry.

An angle can be measured in degrees or radians. A full turn is 360° or 2π radians, so multiply degrees by π/180 before calling the sine/cosine functions used by this lab. Passing the number 90 to a function expecting radians does not request a quarter-turn.

The two rotation equations, with every symbol explained

Let (u, v) describe a point in the local frame, θ describe that frame’s counterclockwise orientation, and (tₓ, tᵧ) give its origin in the parent frame. Its parent coordinates are:

x=tx+ucos⁡θ−vsin⁡θ,y=ty+usin⁡θ+vcos⁡θx=t_x+u\cos\theta-v\sin\theta,\qquad y=t_y+u\sin\theta+v\cos\theta

Each local direction contributes to the parent x and y directions. Rotate the local point first, then add the parent-coordinate translation. For the reverse conversion, subtract that translation and rotate by −θ. Rigid rotations preserve the distance between points.

Move the arm from its joints

The first link has length L₁ and shoulder angle q₁ relative to base x. The second has length L₂ and elbow angle q₂ relative to link one. Its orientation in the base frame is therefore q₁ + q₂. Treating q₂ as a world angle would describe a different mechanism.

With L₁ = 2 m, L₂ = 1 m, q₁ = 0° and q₂ = 90°, the elbow is at base (2, 0) and the tool origin is at base (2, 1). If the base is at world (1, 0) with no rotation, the tool origin is world (3, 1). A point 0.3 m along tool x is another 0.3 m upward, at world (3, 1.3).

Forward kinematics calculates a body or tool pose from its joints. A pose includes orientation as well as position. Our tool orientation relative to world x is base orientation + q₁ + q₂. Angles separated by a whole turn describe the same planar orientation; the lab keeps the sum visible instead of hiding that fact with wrapping.

Derive the two-link endpoint

In base coordinates, add the direction vector of each link:

xE=L1cos⁡q1+L2cos⁡(q1+q2),yE=L1sin⁡q1+L2sin⁡(q1+q2)x_E=L_1\cos q_1+L_2\cos(q_1+q_2),\qquad y_E=L_1\sin q_1+L_2\sin(q_1+q_2)

These equations give the tool origin, not every attached point. An offset point also uses the tool orientation. To obtain world coordinates, apply the base rotation and translation afterward. Check link lengths by measuring base-to-elbow and elbow-to-tip distances; moving joints must not change them.

Follow the frame labels through a calculation

The lab writes T(W←B) for a transformation that takes base coordinates into world coordinates. T(B←E) takes tool coordinates into base coordinates. Applying the second and then the first gives T(W←E).

A planar homogeneous matrix packages rotation and translation in a 3×3 table. Append a bookkeeping entry 1 to a point, making (x, y, 1), so ordinary matrix multiplication can include translation. This does not add a physical third dimension to our planar example. The optional matrix trace shows each value.

Order matters: rotating the translated point also rotates the translation vector. The fault selector demonstrates that different operation. A zero-angle example can hide all three supplied mistakes. Zero translation can hide the wrong-order mistake even with a nonzero angle. Test more than a convenient example.

Possible position is different from a verified motion

For two unrestricted ideal joints, the farthest tool-origin distance from the base is L₁ + L₂. Folding the links back gives the shortest distance |L₁ − L₂|. All distances between form a ring-shaped region, an annulus. Equal-length links make the inner radius zero, giving a disk.

An unequal-length arm cannot place its tool origin at the base. A target inside the ring need not match the current posture. It may also require an unwanted tool orientation or motion through an obstacle. The shaded region assumes rigid, zero-width links, no obstacles, no restrictive joint limits and no final orientation requirement.

The lab does not solve inverse kinematics, check collisions or simulate forces. Those are separate parts of the planned control progression. Do not interpret reachability as a physical-robot safety result or as proof that an attached offset point has the same reach as the tool origin.

Make the frame contract reviewable

In a guided audit, capture a quarter-turn and a round trip, then explain which coordinates changed and why. In an implementation audit, reproduce the endpoint with both link-vector addition and matrix composition, checking their agreement on varied angles. In a decision brief, specify units, frame names, target pose requirements and the further collision/dynamics evidence required before motion.

Temporary captures and exports document practice. The shared lesson records completion and its separate conceptual check; they do not establish independent implementation proficiency. Human review and learner pilots remain pending.

05 · APPLY
Check your understanding

A target lies inside the two-link arm’s ideal position-reach annulus. What is established?

A target lies inside the two-link arm’s ideal position-reach annulus. What is established?
06 · CONTINUE

Take this idea with you.

A coordinate requires a frame and units. Compose rotations and translations in the declared order, and keep ideal geometry separate from physical motion guarantees.

My work
Learn AI · Understand by doing.Loading local progress…Copyright (c) 2026 Mobi Weave, Inc. All rights reserved