stephane-caron/pink

Python inverse kinematics using Pinocchio and QP solvers

解決する課題

Pinkは、関節ロボットモデルの微分逆運動学(IK)を解くためのPythonライブラリです。構成および速度制限を遵守しながら、ロボットのパーツ(手や足など)を特定の目標位置と姿勢に移動させるために必要な関節速度を決定することを可能にします。

仕組み

Pinkは、Pinocchioライブラリに基づいた重み付きタスクアプローチを採用しています。タスクを残差(現在の状態と目標状態の差)として定義し、問題を二次計画問題(QP)として定式化します。異なるタスク(例:位置 vs 姿勢)にコストを割り当て、それらを正規化することで、Pinkは複数の競合する目的間の衝突を解決できます。その後、ロボットをこれらのターゲットへと導く最適な速度を計算します。

対象者

このツールは、ロボットアーム、ヒューマノイド、四足歩行ロボット、モバイルベースなど、さまざまなロボット形態に対してマルチタスク逆運動学を実装するための柔軟な方法を必要とする、ロボット開発者および研究者向けに設計されています。

特徴

  • マルチタスク対応: 重み付きコストを使用して、複数の目的(ベースの位置と関節の姿勢など)を同時に管理します。
  • 制約処理: 関節の構成および速度制限をIKソルバーに自動的に組み込みます。
  • フローティングベース対応: 平面ベースまたはフリーフライヤーベースを持つロボット向けの特定の速度制限が含まれています。
  • 幅広い形態への対応: 単純な振り子から複雑なヒューマノイドや双腕システムまで、幅広いロボットに対応します。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト