Open Source Robotics

A curated collection of high-quality open source robotics projects, tools, and software to propel the robotics community forward.

Coulomb Friction

  • Also called: dry friction, Amontons–Coulomb friction
  • Category: Planning & manipulation › Manipulation
  • Tags: friction, contact, physics-simulation, mechanics, manipulation

The standard dry-friction model: friction opposes sliding with magnitude up to the friction coefficient times the normal force, and equals that limit once the surfaces slide.

Definition

Coulomb friction is the simplest and most widely used model of dry friction between two surfaces. It states that the tangential friction force has magnitude at most μN, where N is the normal force and μ the coefficient of friction. While the surfaces stick, the friction force takes whatever value, within that limit, is needed to prevent sliding. Once they slide, friction has magnitude μN and points opposite to the relative sliding velocity. The model is named after Charles-Augustin de Coulomb and builds on earlier observations by Guillaume Amontons, which is why it is also called the Amontons–Coulomb law. It treats friction as independent of the apparent contact area and of sliding speed.

Mathematically the model is set-valued at zero velocity: friction is not a function of velocity but a range of values when the velocity is zero, and it jumps from -μN to +μN as the sliding direction reverses. This discontinuity is what produces stick-slip behavior, and it is also what makes the model awkward for numerical simulation and gradient-based optimization. Simulators handle it in three main ways: formulating contact as a complementarity or constrained optimization problem that represents sticking exactly, often with a polyhedral approximation of the friction cone; regularizing the sign function into a steep continuous curve such as a tanh or linear ramp near zero velocity; or using soft constraints that allow a small slip velocity while sticking.

Coulomb friction is closely related to, but not the same as, the friction cone. The friction cone is the geometric set of contact forces that satisfy the Coulomb inequality at a contact point, and it is what grasp and contact analysis work with. Coulomb friction is the full law, including the sliding behavior and the relation between friction direction and velocity. For joints and gearboxes, Coulomb friction is usually one term in a larger model that adds viscous friction proportional to velocity and, in more detailed models such as Stribeck or LuGre, a drop in friction just after breakaway.

Why it matters

Almost every robot interaction depends on friction: wheels and feet need it for traction, grasps need it to hold objects, and joints lose energy to it. Coulomb friction is the default model in grasp analysis, physics simulators and actuator identification, so understanding its assumptions and its discontinuity explains many simulation artifacts and sim-to-real gaps.

Key applications

  • Grasp analysis and force-closure computations
  • Contact modeling in physics simulators for manipulation and locomotion
  • Joint and gearbox friction identification and compensation
  • Slip detection and traction control for wheeled and legged robots
  • Planning pushing and sliding manipulation

In practice

An engineer identifying a robot joint's friction drives it at a series of constant speeds in both directions and records the motor torque. Plotting torque against velocity shows a step at zero velocity, the Coulomb term, plus a slope, the viscous term. These parameters are added to the joint model in the simulator and to a feedforward term in the controller. In a separate task, a team simulating a box being pushed across a table notices that it slowly creeps when it should stay still; the simulator is using a regularized friction model, and lowering the regularization velocity or switching to a constraint-based contact solver makes the box stick properly.

Common misconceptions

  • Friction always equals μN — that is only the sliding value or the sticking limit; while sticking, the friction force is whatever is needed, up to μN
  • Coulomb friction is the same thing as the friction cone — the cone is the set of admissible forces at a contact, while Coulomb friction also defines how friction behaves during sliding
  • Smoothing the discontinuity is harmless — regularized friction lets objects creep where they should stick and can change behavior in long holds
  • Friction depends on contact area — in the Coulomb model it does not, although soft materials such as rubber deviate from this in practice

Who should know this

  • Simulation and physics engine developers
  • Manipulation and grasp planning engineers
  • Actuator and drivetrain engineers doing system identification
  • Legged and wheeled locomotion developers

Related technologies

  • Viscous Friction
  • Stribeck Friction Model
  • LuGre Friction Model
  • Linear Complementarity Problem
  • Friction Pyramid

Related terms

  • Friction Cone
  • Contact mode
  • Penalty-Based Contact Model
  • Differentiable Simulation
  • System Identification
  • Quasi-Static Manipulation

Related projects

  • LeRobot: HuggingFace ML library for real-world robotics in PyTorch
  • Isaac Lab: NVIDIA robot learning framework: one task API across Newton, PhysX and Isaac Sim
  • NVIDIA Isaac GR00T: NVIDIA open foundation model for humanoid robot reasoning and skills
  • OpenVLA: 7B-parameter Vision-Language-Action model for robotic manipulation
  • Drake: MIT robotics toolbox for model-based dynamics, optimization, and control system design
  • OpenArm: 7DOF humanoid arm for physical AI research in contact-rich environments

Videos

  • Modern Robotics, Chapter 12.2.1: Friction: Northwestern Robotics
  • Frictional Forces: Static and Kinetic: Professor Dave Explains

This website requires JavaScript to function properly. Please enable JavaScript to explore our collection of open source robotics projects.