Repolode
spencerfolk

spencerfolk/rotorpy

推定・計画・制御の教育と研究向けに、集中定数系の空力モデルを備えたPython製マルチローターUAVシミュレーターです。

スター
326
フォーク
66
未解決の Issue
8
最終コミット
2 か月前

これは何?

RotorPyは、マルチローターUAV向けのPythonシミュレーション環境です。集中定数系の空力レンチを使って回転翼機の動力学をモデル化するため、抗力やローター流入などの影響が、高速飛行時やアグレッシブなマヌーバ、強風下で顕著になります。依存関係を少なく抑えた軽量なシミュレーターで、Pythonの基礎知識があればコードを読みやすい設計です。

Crazyflie風のクアッドローターなどの機体パラメータファイル、SE(3)などのコントローラー、軌道生成器、風のプロファイル、IMU・モーションキャプチャ・状態推定器のセンサーモデルを備えています。バッチ環境ではCPUまたはGPU上で多数の機体を並列実行でき、Gymnasium互換環境は強化学習に対応します。バージョン3.0では、視覚ベースのアルゴリズム向けに視覚特徴をレンダリングするピンホールカメラセンサーが追加されました。

RotorPyは、大学院レベルの講義設計、探索的研究、学習ベースの研究やモンテカルロ実験向けの大規模なデータ生成を対象としています。オプションでPX4との連携にも対応しています。

主な機能

  • 01高速飛行時や強風下で重要となる、集中定数系の空力レンチ。
  • 02pipでインストール可能で、バッチ実行、学習、テスト、PX4連携向けのオプション機能を提供。
  • 03CPUまたはGPU上で多数の機体を並列シミュレーションするバッチ環境。
  • 04制御の抽象化方式やカスタム報酬を設定できるGymnasium環境。
  • 05視覚アルゴリズム向けに3D視覚特徴をレンダリングするピンホールカメラセンサー。

ユースケース

  • 大学院の講義でUAVの動力学、制御、状態推定を教える。
  • 空力の影響や強風下でコントローラーや状態推定器をテストする。
  • クアッドローターのホバリングや速度制御向けに強化学習ポリシーを訓練する。
  • モンテカルロ実験向けの大規模なシミュレーションデータセットを生成する。

クイックスタート

  1. 1

    PyPIからRotorPyをインストールする

    pip install rotorpy
  2. 2

    examplesフォルダーにある基本的な使用例を実行する

使う前に知っておきたいこと

  • 空力効果が主に重要になるのは高速飛行時のため、ホバリングのみの作業では必要ない場合があります。

収録されている特集

トピック

よくある質問

rotorpy とは?
推定・計画・制御の教育と研究向けに、集中定数系の空力モデルを備えたPython製マルチローターUAVシミュレーターです。 RotorPyは、マルチローターUAV向けのPythonシミュレーション環境です。集中定数系の空力レンチを使って回転翼機の動力学をモデル化するため、抗力やローター流入などの影響が、高速飛行時やアグレッシブなマヌーバ、強風下で顕著になります。依存関係を少なく抑えた軽量なシミュレーターで、Pythonの基礎知識があればコードを読みやすい設計です。
rotorpy は無料で使えますか?ライセンスは?
rotorpy は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
rotorpy は今もメンテナンスされていますか?
半年以内に更新あり。rotorpy の最終コミットは 2026年9月7日 です。
rotorpy は何に使えますか?
大学院の講義でUAVの動力学、制御、状態推定を教える。 空力の影響や強風下でコントローラーや状態推定器をテストする。 クアッドローターのホバリングや速度制御向けに強化学習ポリシーを訓練する。 モンテカルロ実験向けの大規模なシミュレーションデータセットを生成する。
rotorpy のインストール方法は?
PyPIからRotorPyをインストールする: pip install rotorpy examplesフォルダーにある基本的な使用例を実行する
rotorpy はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/spencerfolk/rotorpy

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト