Delta robot (parallel robot, 3 arms)

← Robot list · Learn the basics

Pick-and-place demo: the robot moves the blue cube between pad A and pad B.

Joints (the three motors)

The Delta has three motors, one at the top of each arm. Move a slider, or type a value in the number box. θ is the angle of the upper arm: 0° = horizontal, positive = the arm swings down. The fourth slider is the optional rotation of the tool around the vertical axis.

Inverse kinematics: go to a point

Type where the centre of the effector must go (in metres, in the base frame {0}: the origin is at the centre of the top plate, z points up, so the work area is at negative z) and press the button.

Kinematic diagram (schéma cinématique)

Frames:

Each leg is: a revolute joint at the base (circle or thick bar, with the angle θ), an upper arm (orange line), then a parallelogram of two rods (the two light lines) ending on the effector triangle (white). The small circles are ball joints (spherical joints, 3 rotations). Axes: x red, y green, z blue. The effector frame {E} always keeps the same orientation as the base frame {0}: that is the magic of the parallelograms. The dashed squares are the pads A and B, and the blue square is the cube.

Why no single DH table?

A DH table describes a serial chain: one joint after the other, from the base to the tool. The Delta is a parallel robot: the effector is held by three chains at the same time, which close loops (base → leg 1 → effector → leg 2 → base). A single table cannot describe a loop. What we can do is write the DH table of the open part of each leg, from the base to its elbow, and then add the condition "the forearm has length l": that condition closes the loop.

DH table (standard) of the upper arm of the leg

Row 1 is fixed: turn by φ around z, go out by Rb along x, then turn the frame by −90° so that its z axis lies along the motor axis. Row 2 is the motor: θ, then the arm of length L.

DHM table (modified DH) of the same arm

Result: where is the elbow?


    

The last column is the elbow of the leg in the base frame {0}. It is the centre of the elbow cross bar in the 3D model. Both tables give the same matrix.

Geometry of this robot

SymbolMeaningValue
Rbradius of the base: distance from the centre to each motor axis0.16 m
reradius of the effector: distance from its centre to each forearm attachment0.05 m
Llength of the upper arm0.28 m
llength of the forearm (each of the two rods)0.55 m
wdistance between the two rods of a parallelogram0.07 m
φ1, φ2, φ3direction of each leg around the vertical axis0°, 120°, 240°

Forward and inverse kinematics

Because the forearm of each leg can only turn around the ball joints, the point elbowi and the effector are always l apart. Write P for the centre of the effector and shift every leg by re (so the effector becomes a single point, and R = Rb − re).

elbow_i = ( R + L·cos θi ,  0 ,  − L·sin θi )       in the frame of leg i (x outwards)
| P − elbow_i |² = l²                               for i = 1, 2, 3

Forward kinematics (given θ1, θ2, θ3): the three elbows are known points, and P is at distance l from each of them. This is the intersection of three spheres, which has a closed-form answer (two solutions; the effector is the lower one). Inverse kinematics (given P): the equation of each leg becomes

A·cos θ + B·sin θ = C
A = −2L (x' − R),   B = 2L·z',   C = −[ (x' − R)² + y'² + z'² + L² − l² ]
(x', y', z') = P written in the frame of leg i  (turn P by −φi around z)
θ = atan2(B, A) ± arccos( C / √(A² + B²) )          → keep the solution with the elbow outside

No iteration is needed: the three legs are solved independently, in a few microseconds. This is one reason why Delta robots are so fast. If C is larger than √(A²+B²) the point is out of reach.

How many degrees of freedom? (Grübler)

Count: 11 bodies (base, 3 upper arms, 6 forearm rods, effector), 3 revolute joints (1 DOF each) and 12 ball joints (3 DOF each, 4 per leg). The Grübler formula for 3D mechanisms:

M = 6 (n − 1 − j) + Σ f  =  6 (11 − 1 − 15) + 3×1 + 12×3  =  −30 + 3 + 36  =  9

The result is 9, but 6 of them are useless: each of the 6 rods can spin around its own axis without moving anything else. So the useful mobility is 9 − 6 = 3: the effector can move in x, y, z, and the parallelograms forbid any rotation of it. That is why a fourth motor, a telescopic shaft inside one of the legs, is added when the product must be turned (the "tool rotation" slider).

Serial robot or parallel robot?

Serial (SCARA, 6-axis, cobot)Parallel (Delta)
MotorsEach motor carries the next onesAll 3 motors are fixed on the base
Moving massHeavyVery light (carbon rods)
Speed and accelerationMediumVery high (more than 100 picks per minute)
Stiffness and precisionErrors add up along the chainRigid, errors are shared between the legs
WorkspaceLargeSmall, shaped like a dome or a cylinder
PayloadHighLow (from some grams to a few kg)
Tool orientationFree (6 axes)Fixed, only 1 optional rotation
KinematicsInverse: usually hardInverse: easy, forward: needs the 3 spheres

Where is a Delta robot used?

Fast pick and place of light products on a moving conveyor, almost always with a camera that tells the robot where each product is: food (biscuits, chocolates, meat, ready meals into trays), pharmaceuticals (blisters, vials), cosmetics, electronics (small components), packaging of any small product, and in a different form 3D printers (delta printers) and laboratory automation. It is mounted upside down, hanging from a frame above the conveyor. Typical payload: about 0.1 to 8 kg. Well-known makers: ABB (FlexPicker IRB 360), FANUC (DR-3iB), Omron, Festo, Codian, Yaskawa, Stäubli, Kawasaki.

End effector (tool)

Yes, a pinch gripper (pince) is possible, as in the 3D model, mainly for products with a clear shape. But it is not the most common choice, because products are usually soft, small and packed close together. Typical tools: