Open Source Robotics

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

Ruckig

供機器人與機器使用的即時、受加加速度限制之時間最佳軌跡生成

授權條款

MIT

概述

Ruckig 是一個供機器人與機器使用的即時運動生成函式庫,能即時計算時間最佳、受加加速度限制的軌跡。它從任意初始狀態出發,生成通往目標路徑點(含位置、速度與加速度)的軌跡,並受速度、加速度與加加速度約束限制,保證狀態到狀態運動的解為時間最佳。

Ruckig 是第一個能處理任意目標狀態的 Type V 軌跡生成器,比 Reflexxes Type IV 函式庫更強大、更快速。它的計算時間低於一毫秒,適用於短至 250 微秒的控制週期,位置/速度的數值精度在 1e-8 以內,限制值則在 1e-12 以內,並已透過超過 50 億條隨機軌跡驗證。

核心函式庫以 C++ 撰寫,零相依性,支援 C++20 到 C++03,並可透過 pip 取得 Python 綁定。它可整合主要的機器人框架,包括作為軌跡處理外掛的 MoveIt 2(ROS 2)、CoppeliaSim,以及用於控制 Franka Emika 機器人的 Frankx。

由卡爾斯魯厄理工學院(KIT)開發,並於 RSS 2021 發表。

Ruckig 是一個即時運動生成函式庫,能即時計算機器人與機器在時間上最佳、受急動度(jerk)限制的軌跡。它由卡爾斯魯厄理工學院(KIT)開發並發表於 RSS 2021,已成為機器人領域部署最廣泛的開源運動規劃元件之一,在正式生產環境中已計算超過 50 億條軌跡。

此函式庫是第一個適用於任意目標狀態的 Type V 軌跡產生器,超越了知名的 Reflexxes Type IV 函式庫的能力。給定任意初始狀態(位置、速度、加速度),以及帶有速度/加速度/急動度限制的目標航點,Ruckig 能在不到一毫秒內計算出數學上最佳的軌跡,速度足以應付短至 250 微秒的控制週期。數值精度經驗證,位置/速度誤差在 1e-8 以內,限制誤差在 1e-12 以內。

Ruckig 以 C++ 撰寫,零外部依賴,支援從 C++03 到 C++20 的編譯器標準,並可透過 pip 安裝 Python 綁定。零依賴的設計讓它能輕鬆整合到任何機器人軟體堆疊中。此函式庫已整合進 MoveIt 2(ROS 2)作為軌跡處理外掛、用於模擬的 CoppeliaSim,以及用於 Franka Emika 機器人控制的 Frankx。

數學上的嚴謹、即時效能與無縫整合的結合,使 Ruckig 成為全球研究實驗室與工業機器人公司的標準元件。

為何重要

平順且限制加加速度的軌跡生成,是機器人在真實世界運作的關鍵。Ruckig 提供零相依性的即時解決方案,已整合進 MoveIt 2,並為數百個研究實驗室與公司所使用。

解決的問題

為必須即時回應感測器輸入的機器人,即時生成平順、限制加加速度的運動曲線,同時遵守速度、加速度與加加速度約束

重點

  • 在一毫秒內完成時間最佳、受加加速度限制的軌跡生成
  • C++ 核心零相依性,易於整合進任何機器人軟體堆疊
  • 開箱即整合於 MoveIt 2(ROS 2)與 CoppeliaSim
  • 已透過 50 億條以上的隨機軌跡驗證,限制值精度達 1e-12

適用對象

  • 機器手臂開發者
  • 運動規劃工程師
  • ROS 2 / MoveIt 開發者
  • 工業自動化工程師

限制

  • 社群版不支援中間路徑點的計算(Pro 版功能)
  • 位置限制僅於 Pro 版提供
  • 任意訊號的追蹤介面需要 Pro 版
  • Python API 文件不如 C++ 完整

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