Why Force/Torque Sensing Matters for Manipulation

Vision-only manipulation policies fail predictably on contact-sensitive tasks: peg insertion, drawer opening, screw fastening, and any task where the robot must apply a controlled force rather than simply move to a pose. The fundamental reason is that vision cannot directly measure force — it can only infer contact from appearance, which is unreliable for small contact areas, deformable objects, or occluded grasps.

Force/torque (F/T) sensing adds the sense of touch. A 6-axis wrist F/T sensor measures three force components (Fx, Fy, Fz) and three torque components (Tx, Ty, Tz) at the robot wrist. This allows policies to detect contact, regulate applied force, detect slip, and recognize task completion events (e.g., peg fully seated when insertion force drops).

The cost-benefit of adding F/T sensing is high. A $1.5K–$3K sensor can be the difference between a policy that works in the lab and one that works in production. For any task involving contact, insertion, or force regulation, budget for F/T sensing from the start.

The trade-off: F/T sensors add weight (100–400 g), reduce payload, add a potential failure point, and require careful integration. They are not necessary for free-space pick-and-place — only for contact-rich tasks.

Sensor Types: Wrist 6-Axis vs. Fingertip Tactile

Wrist 6-axis F/T sensors mount between the robot arm flange and the gripper/end-effector. They measure all forces and torques at the wrist, regardless of gripper type. They are the workhorse choice for most manipulation applications.

SensorPriceTypeForce Range (Fz)ResolutionBandwidthInterfaceBest For
ATI Gamma SI-32-2.5$3,200Wrist 6-axis32 N6.25 mN7 kHzEtherCAT/USBPrecision assembly, highest accuracy
Robotiq FT 300-S$1,950Wrist 6-axis300 N0.1 N100 HzRS-485/USBUR arms (native), general manipulation
Bota SensONE$1,500Wrist 6-axis200 N0.1 N2000 HzEtherCAT/USBHigh-bandwidth contact tasks
OnRobot HEX-E QC$2,800Wrist 6-axis200 N0.2 N100 HzUR Tool I/OUR arms, quick-change mount
FANUC F-200iA (built-in)IncludedWrist 6-axis200 N0.5 N1000 HzProprietaryFANUC arms only
GelSight Mini$500Fingertip tactile~5 N normal0.01 N30 fpsUSBGrasp slip detection, texture sensing
uSkin (XELA Robotics)$800Fingertip tactile (3×4 array)~20 N0.05 N/cell100 HzUSB/SPIDistributed contact sensing

Fingertip tactile sensors (GelSight, uSkin) provide spatially distributed contact information at the fingertip surface. They answer "where is the contact and what is its shape" rather than just "how much force at the wrist." They are used for slip detection, grasp quality estimation, and tasks requiring contact localization.

For most manipulation tasks, start with a wrist 6-axis sensor. Add fingertip sensors if you need slip detection or grasp texture information. Running both simultaneously is viable on a workstation-class compute platform.

Key Specifications Explained

SpecificationWhat It MeansPractical Implication
Force rangeMaximum measurable force before saturationMust exceed peak task forces including collision; overload safety is separate
ResolutionSmallest detectable force changeDetermines delicacy threshold; 0.1 N resolution detects contact at 0.1 N
Bandwidth (Hz)Fastest signal updates per secondControl loops running at 1 kHz need sensor bandwidth >1 kHz
Overload ratingMaximum survivable force (not measurement range)Must be 5–10× rated range for collision safety
Crosstalk (%)Effect of one axis on another axis's readingATI <1%, budget sensors 3–5%; matters for precision tasks
Thermal driftSignal change per °C without loadRe-zero after warm-up; compensate in long sessions
WeightSensor mass added to payload chain100–400 g; subtract from arm's rated payload

Overload Protection: The Critical Safety Requirement

F/T sensors are precision instruments that can be permanently damaged by forces exceeding their rated range. During robot programming, debugging, and unexpected collisions, the arm can easily generate forces 10–50× the sensor's rated range. This is the most common cause of expensive F/T sensor failure.

Minimum overload protection requirements:

  • Select a sensor with overload rating ≥10× rated force range. ATI Gamma (32 N rated, 900 N overload) meets this. Robotiq FT300-S (300 N rated, 800 N overload) is borderline — the 2.7× overload ratio is lower than ideal. For collision safety, prefer ATI.
  • Software force limit: Configure your robot controller to abort motion when wrist force exceeds a threshold (e.g., 20 N for a delicate task, 50 N for robust manipulation). This is separate from the physical overload protection but catches programming errors.
  • Mechanical overload protection: Some F/T sensors include mechanical slip clutches or fuses that protect the sensing element during hard collisions. ATI offers this as an optional module. For high-speed applications or collaborative robots, mechanical protection is worth the added cost.
  • Gravity compensation at startup: After mounting an end-effector, the sensor reads a constant offset equal to the gripper weight × gravity vector. Run bias compensation (zero the sensor with the gripper in a known orientation) at the start of every session. Failing to do this adds a constant bias to all force readings that corrupts contact detection.

ROS2 Integration Guide

All major F/T sensors have ROS2 drivers. The integration pattern is standard:

  • Driver installation: Robotiq: apt install ros-humble-robotiq-ft-sensor. ATI: ati_force_torque ROS2 package on GitHub. Bota: rokubimini ROS2 package. All publish to /ft_sensor/wrench as geometry_msgs/WrenchStamped.
  • Bias compensation node: Run at startup with gripper in reference pose. Call the /ft_sensor/bias service with the gripper hanging vertically downward. This removes gravity offset. Re-run after any gripper change or at the start of each session.
  • Low-pass filter: Raw F/T data contains high-frequency noise from motor vibration and encoder quantization. Apply a Butterworth low-pass filter at 50 Hz for contact detection, 200 Hz for impedance control. In ROS2: ros2_control provides filters, or use scipy.signal in Python.
  • Force torque topic to action topic: For policy training that uses F/T data as observation, publish the filtered wrench alongside joint states on the same timer callback to ensure synchronized timestamps.
  • Contact event detection: Implement a simple threshold detector: when |Fz| > contact_threshold (e.g., 1.0 N) for more than 5 consecutive samples, publish a /contact_detected Bool topic. This enables event-triggered state machines for assembly tasks.

F/T Sensor Use Cases with Specific Parameters

TaskKey Force RequirementSensor SetupControl Strategy
Peg-in-hole assemblyDetect 5 N insertion resistance, stop at 20 NWrist 6-axis, 0.1 N resolutionForce stops at 5 N threshold; search spiral until Fz drops
Surface following (wiping)Maintain 1–3 N normal forceWrist 6-axis, 0.1 N resolution, 200 HzImpedance control maintaining Fz = 2 N
Delicate grasp (eggs, produce)Contact at 0.5 N, max grasp 3 NFingertip tactile or wrist 6-axis with 50 mN resolutionGrasp until contact, increase to target, stop
Screw insertionDetect 0.1 Nm torque onset, 0.5 Nm strip limitWrist 6-axis with torque sensitivityRotate until Tz = 0.4 Nm, then stop
Door handle operationDetect knob engagement at 2 NWrist 6-axis, 200 N rangeForce-guided approach; impedance follow through rotation
Deformable object graspGrip force 0.5–5 N, slip detectionWrist + fingertip tactileMaintain target grip force; increase if slip detected

Recommendation Summary

  • Best value for UR arms: Robotiq FT 300-S ($1,950). Native UR Tool I/O connector, plug-and-play with UR polyscope, no additional wiring. Adequate for most manipulation tasks.
  • Best accuracy for precision assembly: ATI Gamma SI-32-2.5 ($3,200). 6 mN resolution is unmatched in this price range. Required for tasks with sub-1 N force thresholds.
  • Best bandwidth for high-speed control: Bota SensONE ($1,500). 2000 Hz bandwidth enables kHz-rate impedance controllers. Price-performance leader.
  • Best for slip detection: GelSight Mini ($500) at fingertip. Gel-based optic sensor provides contact geometry and slip direction — far more information than a wrist sensor for grasp quality tasks.
  • For new labs starting out: Buy a Robotiq FT 300-S if you have a UR arm; buy a Bota SensONE for non-UR arms. Add a GelSight only if your task specifically requires slip sensing. Do not skip F/T sensing for contact tasks — it will cost you months of debugging failed policies.