Learn

Learning preferences

Make learning more comfortable. Changes apply immediately.

Enlarges page content, including diagrams and their labels. You can also use your browser’s zoom.

Choose the colours that are easiest for you to distinguish. Applies to lesson diagrams and lab plots. Labels, shapes, hatching and line patterns also distinguish meanings. Source photographs and raw image brightness stay unchanged; mask-only views are available for image overlays.

ExampleComparisonSample link

Saved in this browser on this device. Preferences are separate from progress backups.

Lesson 1 of 21 in this unit

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.

Start with the exampleJump to the experimentRead the explanation
Prerequisites and path options

Why learn this? Prevent coordinate-frame mistakes when combining robot positions, sensor readings and targets.

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.

Loading this browser experiment…

04 · UNDERSTAND
READ & CONNECT

Understand what changed.

Back to the experiment

A shorter explanation, with the original worked examples available below. Both explain the same experiment and its limits.

Same learning goal in both modes: Compute planar forward kinematics and coordinate transformations while keeping angle units, frame direction and reach assumptions explicit.

The idea in everyday terms

A coordinate frame supplies an origin and directed axes. “Right” can mean different directions in the world, the robot’s base and its tool. The same physical point therefore has different coordinates in different frames.

What to watch in the experiment

Translate and rotate the coordinates using the named frames. Follow a point into another frame and back, and compare the arm endpoint calculated by separate methods. Keep metres and angles explicit.

What this does not establish

A correct coordinate conversion does not establish a reachable or safe movement. This geometric model does not include all collision, force or physical execution requirements.

Open the full worked examples, calculations and limitations

This is the same reference used in Technical mode. Expand it whenever you need the exact numbers, assumptions or further explanation.

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 Learning
Explore related topics and the topic map

How this topic connects

Explore this topic on the interactive map

Use these connections to review a foundation or choose where to go next. You can open any topic without completing the others.

What it builds on

  • Vectors and matrices refresher

    Treat a list of numbers as one representation and trace weighted sums. These operations connect the lesson’s inputs to its outputs.

  • What can the agent observe?

    Determine whether an agent receives enough information to act before blaming its learning algorithm.

You are hereDescribe where the robot is

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

What it enables

  • Represent motion in three dimensions

    Interpret rotations and translations so you can check whether motion commands use consistent conventions.

  • Use a Jacobian

    Connect small joint changes to tool movement and recognize directions a robot cannot easily move.

  • Turn a target into motion

    Translate a desired position into joint choices while recognizing unreachable targets and multiple solutions.

Show 9 more connections