30% off your first 3 months

Get the deal

Force and torque sensors: how robots feel a push

by DuckyHelperNov 12, 20264 min read
Robotics

TL;DR:

  • A strain gauge changes its resistance when it is stretched, and force deforms a part slightly.

  • Calibrate with known weights to turn volts into newtons, then set a threshold.

  • A force limit is a safety aid, not a replacement for guards and an emergency stop.

A robot gripper that closes on a cup with no sense of touch will crush it or drop it. A gripper that can feel force can stop at the right moment. Force and torque sensors give robots this sense, and the idea behind most of them is very simple: a small part flexes, and a tiny gauge notices.

Strain gauges

A strain gauge is a thin metal foil pattern glued to a part. When the part bends or stretches by a tiny amount, the foil stretches with it and its electrical resistance changes slightly. A common metal-foil gauge changes its resistance by about two times the strain: ΔR ÷ R = GF × strain, with a gauge factor GF near 2.

Take a gauge of 350 Ω, which is a common value, on a part stretched by 500 microstrain (a stretch of 0.0005, or 500 millionths of its length):

  • ΔR ÷ R = 2 × 0.0005 = 0.001.

  • ΔR = 0.001 × 350 = 0.35 Ω.

That is a change of a third of an ohm in 350. It is too small to measure directly, which is why gauges go in a Wheatstone bridge circuit. A bridge turns the tiny change into a small voltage. For a single gauge in a quarter bridge with a 5 V supply, the output is about 5 × 0.001 ÷ 4 = 1.25 mV. An amplifier boosts it to something a microcontroller can read, for instance a gain of 1000 gives 1.25 V.

From volts to newtons: calibration

You do not have to calculate the strain on a real sensor. Instead, calibrate it. Apply known forces, record the output, and fit a line. Say your amplified sensor gives 0.10 V with no load and 1.10 V with a 10 N load. The slope is (1.10 − 0.10) ÷ 10 = 0.10 V per N. For any later reading, force = (V − 0.10) ÷ 0.10.

Check with a reading of 0.60 V: (0.60 − 0.10) ÷ 0.10 = 5.0 N. Check the line against a third point, such as a 5 N weight, to make sure it is straight. If it is not, use more calibration points.

Worked example: a gripper stopping when it touches an object

A small gripper closes on a plastic cup. You decide that 5 N of grip is enough to hold it without crushing it.

  1. Convert the threshold to volts: 0.10 + 5 × 0.10 = 0.60 V.

  2. Close the fingers slowly. Each loop, read the sensor and compute the force.

  3. When the force is 5 N or more, stop the motor and hold.

  4. If the reading ever jumps well above 5 N, release and flag a fault.

The threshold turns a touch into a decision. A real gripper often adds a small margin and a filter, such as averaging a few samples, so that one noisy reading does not stop it too early. Closing slowly matters: if the fingers move quickly, the force can overshoot before the next reading.

Force versus torque

A force sensor measures a push along an axis. A torque sensor measures a twist, in newton metres. A six-axis force/torque sensor measures all three forces and all three torques at once, which a robot arm can use to feel how a tool is pressed against a surface. Robot joints may also estimate torque from motor current, which is cheaper but less accurate.

Safety stops built on force

Collaborative robots use the same idea for safety. If the measured force on an arm suddenly rises above a set limit, the controller stops the motion. The limit has to be chosen for the specific task and set by people who know the safety rules for it, and it is checked by testing. For a classroom robot, the simplest form is a bumper switch or a current limit that stops the motors when a push is detected, together with a clearly marked emergency stop.

Noise and drift

  • Readings change with temperature, so zero the sensor (tare it) at the start.

  • Cables and vibration add noise, so filter the signal.

  • Overloading a sensor can damage it or shift its zero. Respect the rating in the data sheet.

Safety: A force limit in software is not enough to keep people safe. Keep fingers out of the gripper and arm paths, keep guards and an emergency stop within reach, and test any new motion slowly with the power limited. A robot can pinch or crush before a sensor responds.

Common mistakes

  • Setting the threshold without calibrating, so "5 N" is only a guess.

  • Forgetting to zero the sensor, so the threshold is offset by the weight of the fingers.

  • Closing the gripper too fast for the sensor loop to keep up.

  • Relying on one sensor reading for a safety decision.

Your plan for this week

If you have a load cell or force-sensitive sensor, calibrate it with three known weights, such as bags of sugar weighed on a kitchen scale, and make the plot of voltage against force. Then write the stop rule. DuckyHelper can check the calibration arithmetic with you on a blackboard.

Frequently asked questions

What is a load cell?

A load cell is a metal part with strain gauges attached that gives an electrical signal proportional to the load on it. It is a common way to build a force sensor.

Can a robot feel without a force sensor?

Roughly. It can watch the motor current or position error, which rise when the motion is blocked, but this is less precise.

Get started

DuckyHelper can
do more

It sees your screen and works in any app you use. Try it for 10 minutes, no card.

Get it for Mac, Windows or Linux

Share

Questions and jobs

Do anything

Ask it a question or hand it a job, in any app.

Doing jobs for you is in early access on Mac. Asking works on Mac, Windows and Linux.