Drag anywhere in the cloud to move the tool point (servo limits −90° to 150°).
2d robot: five-bar linkage
A parallel robot. Two servos 78 mm apart each drive a 100 mm crank, and two 180 mm links meet at the tool. Two motors on the base give a light, stiff arm.
How it is solved
FK: the two crank tips are known from the servo angles. The tool lies on the perpendicular bisector between them, at distance 180 mm from both (intersection of two circles).
IK: each side is a triangle (crank, link, servo–tool distance). The cosine rule gives each servo angle separately, choosing the "elbows out" solution.
Drag to move the tool point. The cloud is what the arm reaches within its joint limits (θ1 ±150°, θ2 0–170°).
s robot: SCARA
A serial arm with two revolute joints (92.75 mm and 70.72 mm links). The third servo turns a 20 mm wheel, so its "position" is the distance rolled.
How it is solved
FK: add the two link vectors.
IK: the distance r from base to target fixes the elbow angle (cosine rule). The bearing of the target minus the angle the elbow adds gives the shoulder.
Drag to rotate the view.
p robot: articulated arm
A 3-axis arm: base yaw, shoulder and elbow, on an 88 mm column with a 120 mm upper arm and a 150 mm forearm.
How it is solved
FK: the shoulder and elbow make a 2-link arm in a vertical plane, which the base angle then rotates about z.
IK: the base angle is atan2(y, x). In the arm plane the cosine rule gives the elbow, and the shoulder follows from the angle to the target.
Drag to rotate the view.
3d robot: delta
A parallel robot. Three servos on a triangular base each swing a 96 mm arm. 150 mm parallelogram forearms carry a small effector plate that always stays level.
How it is solved
IK: each arm is solved in its own vertical plane, where the arm's circle meets the forearm's sphere. Arms 2 and 3 reuse the same function with the target rotated by ±120°.
FK: the effector is where three spheres (one per forearm) intersect. This reduces to a quadratic in z.