Open Source Robotics

精選高品質的開源機器人專案、工具與軟體,推動機器人社群向前發展。

Coulomb Friction

  • 又稱: dry friction, Amontons–Coulomb friction
  • 類別: Planning & manipulation › Manipulation
  • 標籤: friction, contact, physics-simulation, mechanics, manipulation

標準的乾摩擦模型:摩擦力阻礙滑動,大小至多為摩擦係數乘以法向力,一旦表面滑動就等於此極限值。

定義

庫侖摩擦(Coulomb friction)是兩個表面之間乾摩擦最簡單、也最廣為使用的模型。它規定切向摩擦力的大小至多為 μN,其中 N 是法向力,μ 是摩擦係數。當兩個表面黏著時,摩擦力會在此限度內取阻止滑動所需的任何值。一旦開始滑動,摩擦力的大小就等於 μN,方向與相對滑動速度相反。此模型以 Charles-Augustin de Coulomb 命名,並建立在 Guillaume Amontons 更早的觀察之上,因此也稱為 Amontons–Coulomb 定律。它將摩擦視為與表觀接觸面積及滑動速度無關。

在數學上,此模型在零速度處是集值的:摩擦力不是速度的函數,而是在速度為零時取一段數值範圍,並在滑動方向反轉時從 -μN 跳到 +μN。正是這種不連續性造成黏滑行為,也正是它讓此模型難以用於數值模擬與以梯度為基礎的最佳化。模擬器主要以三種方式處理它:將接觸表述為互補問題或受約束的最佳化問題,以精確表示黏著,通常還會對摩擦錐採用多面體近似;將符號函數正規化為一條陡峭的連續曲線,例如在零速度附近使用 tanh 或線性斜坡;或是使用軟約束,在黏著時允許很小的滑移速度。

庫侖摩擦與摩擦錐(friction cone)密切相關,但並不相同。摩擦錐是在一個接觸點上滿足庫侖不等式的接觸力所構成的幾何集合,抓取與接觸分析處理的正是它。庫侖摩擦則是完整的定律,包含滑動行為以及摩擦方向與速度之間的關係。對於關節與減速機,庫侖摩擦通常只是較大模型中的一項,該模型還會加入與速度成正比的黏性摩擦,而在 Stribeck 或 LuGre 等更詳細的模型中,還會加入剛脫離靜止後摩擦力的下降。

為何重要

幾乎所有機器人互動都仰賴摩擦:車輪與足端需要它來產生抓地力,抓取需要它來握住物體,而關節會因它損失能量。庫侖摩擦是抓取分析、物理模擬器與致動器識別中的預設模型,因此理解它的假設及其不連續性,就能解釋許多模擬假影與模擬到現實的落差。

主要應用

  • 抓取分析與力封閉計算
  • 用於操作與行走運動的物理模擬器中的接觸建模
  • 關節與減速機摩擦的識別與補償
  • 輪式與足式機器人的打滑偵測與牽引力控制
  • 規劃推動與滑動操作

實際應用

一位工程師在識別機器人關節的摩擦時,讓關節在兩個方向上以一系列定速運轉,並記錄馬達扭矩。把扭矩對速度作圖,可看到零速度處的一個階躍(庫侖項)加上一段斜率(黏性項)。這些參數被加入模擬器中的關節模型,以及控制器中的前饋項。在另一項任務中,某團隊在模擬一個箱子被推過桌面時發現,箱子在應該靜止時卻緩慢蠕移;原因是模擬器使用了正規化的摩擦模型,降低正規化速度或改用以約束為基礎的接觸求解器,就能讓箱子正確地黏住。

常見誤解

  • 摩擦力永遠等於 μN — 那只是滑動時的值或黏著時的極限;黏著時,摩擦力取所需的任何值,最大為 μN
  • 庫侖摩擦與摩擦錐是同一件事 — 摩擦錐是一個接觸點上容許的力的集合,而庫侖摩擦還定義了滑動時摩擦的行為
  • 讓不連續性變平滑是無害的 — 正規化後的摩擦會讓應該黏著的物體緩慢蠕移,並可能改變長時間保持時的行為
  • 摩擦取決於接觸面積 — 在庫侖模型中並不取決於接觸面積,不過橡膠等軟性材料在實務上會偏離這一點

誰需要了解

  • 模擬與物理引擎開發人員
  • 操作與抓取規劃工程師
  • 進行系統識別的致動器與傳動系統工程師
  • 足式與輪式行走運動開發人員

相關技術

  • 黏性摩擦(Viscous Friction)
  • Stribeck 摩擦模型(Stribeck Friction Model)
  • LuGre 摩擦模型(LuGre Friction Model)
  • 線性互補問題(Linear Complementarity Problem)
  • 摩擦角錐(Friction Pyramid)

相關術語

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

相關專案

  • 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

影片

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

本網站需要 JavaScript 才能正常運作。請啟用 JavaScript 以瀏覽我們的開源機器人專案。