petercorke/robotics-toolbox-matlab

Robotics Toolbox for MATLAB

Robotics Toolbox for MATLAB – 概要

これは何か – 成熟したオープンソースの MATLAB ツールボックスで、MATLAB 環境に古典的なロボティクスアルゴリズムを追加します。シリアルリンクマニピュレータ、移動ロボットの運動学、動力学、経路計画、位置推定、SLAM の MATLAB クラス表現を提供し、いくつかの Simulink モデル(例:クアッドローター)も含みます。コードは 1993 年に遡り、MathWorks 独自の Robotics System Toolbox より前から存在します。

主な機能

  • マニピュレータモデリング – あらゆるシリアルロボット(例:Puma 560、Kinova、UR)用の SerialLink オブジェクトを作成。順運動学、逆運動学、動力学(RNE)、ヤコビアンなどの関数。
  • 移動ロボットモデル – 一輪車、二輪車、自動車型車両。Bug、D*、PRM、Reeds‑Shepp、格子、RRT などのプランナー。EKF やパーティクルフィルタによる位置推定、地図構築、EKF‑SLAM。
  • シミュレーションと可視化 – 2‑D/3‑D アニメーション(plot3d、plot_vehicle)、GIF/動画エクスポート、非ホロノミック車両とクアッドローター用の Simulink ブロック。
  • 拡張性 – ソースは完全に利用可能。速度向上のため関数を書き換えたり、MEX にコンパイルしたり、新しいアルゴリズムを追加したりできます。

典型的なワークフロー(README から)

  1. ロボットモデルを読み込む(例:mdl_puma560)。
  2. オブジェクト(p560)を使用して順運動学(p560.fkine(q))や逆運動学(p560.ikine6s(T))を計算。
  3. 関節空間軌道(jtraj)を生成し、アニメーション化(p560.plot3d)。
  4. 移動ロボットの場合、開始/目標姿勢を定義し、プランナー(ReedsShepp)を呼び出し、plot_vehicle で可視化。
  5. アニメーションを出力するパーティクルフィルタ(ParticleFilter)などの位置推定デモを実行。

インストール

  • MATLAB‑Drive 方式 – 事前にパッケージ化されたフォルダを共有し、startup_rvc.m を実行。
  • GitHub 方式 – このリポジトリと必要な spatial-math および toolbox-common-matlab リポジトリをクローンし、make -C robot を実行して MEX/Java ファイルをビルドし、パスを追加して startup_rvc を呼び出します。

対象読者

  • 古典的なロボティクスアルゴリズムの明確で読みやすい参照実装を必要とする研究者や学生。
  • MATLAB 中心のカリキュラムでロボットの運動学、動力学、計画、SLAM、制御を教える教育者。
  • 商用ツールボックスを購入せずにロボットシミュレーションのプロトタイプを作りたい愛好家。

ライセンス – GNU LGPL v3。学術および商用プロジェクトの両方での使用を許可(LGPL 条項に従う)。

ヘルプの入手先 – Google グループフォーラム、FAQ ページ、著者のメール(rvc@petercorke.com)。

関連

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