iit-DLSLab/Quadruped-PyMPC

A model predictive controller for quadruped robots based on the single rigid body model and written in python. Gradient-based (acados) or Sampling-based (jax)

解決的問題

本專案提供一個針對四足機器人設計的高效率模型預測控制(MPC)框架,使機器人能執行如小跑、踱步與跳躍等複雜動作。透過即時計算最佳控制動作,解決足式移動過程中的穩定性與平衡挑戰。

作用方式

系統使用單一剛體模型來預測與優化機器人運動。提供兩種不同的實作路徑:

  • 基於梯度的MPC: 使用 acados 實現快速計算(現代CPU上低於5ms),並包含足點最佳化與基於李雅普諾夫函數的穩定性準則等功能。
  • 基於取樣的MPC: 借由 jax 實現大規模平行滾動(在GPU上10,000次滾動於2ms內完成),支援MPPI、CEMPPI以及多種控制參數化方式(零階、線性或三次樣條)的隨機取樣策略。

適用對象

本專案專為使用Mujoco進行模擬或部署至真實Unitree機器人的足式運動與控制系統研究人員與工程師設計。

主要特色

  • 雙引擎架構: 同時支援基於CPU的梯度最佳化與基於GPU的取樣加速。
  • 適用真實場景: 與Mujoco相容,並整合狀態估計與通訊工具,可直接部署至真實機器人。
  • 極高效率: 無論是梯度或取樣控制迴路,皆實現極低延遲。
  • 進階控制選項: 包含可選的地面反力平滑處理與步頻自適應功能,以提升穩健性。

相關

  • 專案
  • 專案
  • 專案
  • Dispatch
  • 專案