| アルデュパイロット | |
|---|---|
| 開発者 | ArduPilot開発チームとコミュニティ |
| 初回リリース | 2009 (2009年) |
| リポジトリ | github |
| 書かれた | C++、Python |
| オペレーティング·システム | クロスプラットフォーム |
| タイプ | 自動操縦 |
| ライセンス | GPLv3 |
| Webサイト | ardupilot.org |
ArduPilotは、マルチロータードローン、固定翼機およびVTOL機、RCヘリコプター、ROV、地上探査車、ボート、潜水艦、無人水上艦(USV)、アンテナトラッカー、飛行船を制御できる自動操縦ソフトウェアプログラムです。GNU GPLバージョン3に基づき、オープンソースソフトウェアとして公開されています。
ArduPilotはもともと模型飛行機やローバーを制御するために愛好家によって開発され、産業界、 [ 1 ]研究機関、[ 2 ]アマチュア、軍隊 で使用されるフル機能で信頼性の高い自動操縦装置へと進化しました。 [ 3 ] [ nb 1 ]


ArduPilot ソフトウェア スイートは、車両 ( Copter、Plane 、Rover、AntennaTracker、または Sub) 上で実行されるナビゲーション ソフトウェア (通常、マイクロコントローラハードウェア ターゲット用にバイナリ形式にコンパイルされるとファームウェアと呼ばれます)と、Mission Planner、APM Planner、QGroundControl、MavProxy、Tower などの地上局制御ソフトウェアで構成されています。
ArduPilot は、すべての車両に共通する以下の機能を含む、幅広い機能を提供します。
ArduPilotはWiki内に詳細なドキュメントが整備されており、印刷すると約700ページ分になります。ドキュメントは6つのセクションに分かれています。ヘリコプター、飛行機、ローバー、潜水艦といった乗り物関連のサブセクションはユーザー向けです。高度な用途向けの「開発者向け」サブセクションは、主にソフトウェアおよびハードウェアエンジニア向けです。また、すべての乗り物タイプに共通する情報をまとめた「共通」セクションは、最初の4つのセクションにまとめられています。
ヘリコプター、飛行機、ローバー、アンテナトラッカー、または潜水艦のソフトウェアは、さまざまな組み込みハードウェア(本格的なLinuxコンピューターを含む) 上で実行され、通常はナビゲーションに使用される周辺センサーに接続された1 つ以上のマイクロコントローラーまたはマイクロプロセッサーで構成されます。これらのセンサーには、マルチローターの飛行と飛行機の安定化に必要な、少なくともMEMSジャイロスコープと 加速度計が含まれます。センサーには通常、さらに 1 つ以上のコンパス、高度計(気圧)、GPSがあり、オプションでオプティカルフローセンサー、対気速度計、レーザーまたはソナー高度計または距離計、単眼カメラ、立体カメラ、または RGB-D カメラなどが追加されます。センサーは、同じ電子ボード上にある場合もあれば、外付けの場合もあります。
車両の動作のプログラミングや監視に使用される Ground Station ソフトウェアは、Windows、Linux、macOS、iOS、Android で利用できます。
ArduPilot は、次のようなさまざまなハードウェア プラットフォームで動作します (アルファベット順にリストされています)。
上記の基本ナビゲーションプラットフォームに加えて、ArduPilotは、より強力な処理能力を必要とする高度なナビゲーションを実現する車載コンパニオン(補助コンピュータ)との統合および通信をサポートしています。これらのコンピュータには、NVIDIA TX1およびTX2(NVIDIA Jetsonアーキテクチャ)、Intel EdisonおよびIntel Joule、HardKernel ODROID、Raspberry Piコンピュータが含まれます。
ArduPilotプロジェクトの始まりは2007年後半に遡ります[ 12 ]。後にクリス・アンダーソンと共に3DRoboticsを 共同設立するジョルディ・ムニョスが、RCヘリコプターを安定させるためのArduinoプログラム(彼はこれを「ArduCopter」と名付けました)を書いたの がきっかけでした。2009年、ムニョスとアンダーソンはArdupilot 1.0 [ 13 ](フライトコントローラーソフトウェア)と、それを実行するためのハードウェアボードをリリースしました。同年、自律飛行可能な従来のRCヘリコプターUAVを製作したムニョスは、第1回Sparkfun AVCコンペティションで優勝しました[ 14 ] 。このプロジェクトは、DIYドローンコミュニティの多くのメンバー、特に2007年初頭にフォーラムベースのコミュニティを設立したクリス・アンダーソンの尽力のおかげで、さらに成長しました[ 15 ] [ 16 ]。
ArduPilotの最初のバージョンは固定翼航空機のみをサポートし、サーモパイルセンサーをベースとしていました。このセンサーは、空と地面の温度差を測定することで、航空機に対する地平線の位置を決定します。[ 15 ]その後、システムは改良され、サーモパイルの代わりに加速度計、ジャイロスコープ、磁力計を組み合わせた慣性計測ユニット(IMU)が搭載されました。その後、サポート対象は他の車両タイプにも拡大され、ヘリコプター、飛行機、ローバー、潜水艦といったサブプロジェクトが生まれました。
2011年と2012年には、 Andrew "Tridge" Tridgell氏とHALの作者Pat Hickey氏の新たな参加により、オートパイロット機能とコードベースサイズが爆発的に増加しました。Tridge氏の貢献には、Ardupilot、PyMavlink、Mavproxyの自動テストおよびシミュレーション機能が含まれます。Hickey氏は、AP_HALライブラリをコードベースに導入する上で重要な役割を果たしました。HAL(ハードウェア抽象化レイヤー)は、低レベルのハードウェア実装の詳細を独立したハードウェアライブラリに導入・限定することで、コードベースを大幅に簡素化し、モジュール化しました。
2012年には、前メンテナーのジェイソン・ショート氏からの要請を受け、ランディ・マッケイ氏がコプターのリードメンテナーに就任しました。また、航空宇宙工学の博士号を取得したダグ・ワイベル氏に代わり、トリッジ氏がプレーンのリードメンテナーに就任しました。ランディ氏とトリッジ氏は現在もリードメンテナーを務めています。
ArduPilotコード開発におけるフリーソフトウェアアプローチは、LinuxオペレーティングシステムやGNUプロジェクト、PX4/PixhawkやPaparazziプロジェクトにおけるアプローチと類似しています。これらのプロジェクトでは、低コストで入手しやすい環境が整えられており、愛好家がマイクロエアビークルや小型UAVなどの自律型小型遠隔操縦航空機を開発することができました。同様に、ドローン業界もArduPilotコードを徐々に活用し、プロ仕様のハイエンド自律走行車を開発してきました。
ArduPilot の初期のバージョンでは、APM (ArduPilotMega) フライト コントローラ、つまりArduinoオープン ソース プログラミング言語 (プロジェクト名の「Ardu」の部分はここから来ています) を実行する AVR CPU を使用していましたが、後年はコード ベースがC++で大幅に書き直され、多くのサポート ユーティリティがPythonで記述されました。
2013年から2014年にかけて、ArduPilotは、オリジナルのArduino Atmelベースのマイクロコントローラアーキテクチャを超えて、様々なハードウェアプラットフォームとオペレーティングシステムで動作するように進化しました。まず、PX4、3DRobotics、そしてArduPilot開発チームの共同開発によるPixhawkハードウェアフライトコントローラの商用導入が行われ、その後、ParrotのBebop2、そしてRaspberry PiベースのNAVIO2やBeagleBoneベースのErleBrainといったLinuxベースのフライトコントローラへと進化しました。この期間における重要な出来事としては、2014年半ばにLinux上で飛行機が初飛行したことが挙げられます。[ 17 ]
2014年後半には、主要なオープンソースUAVソフトウェアプロジェクトを統合し、特にArduPilotとPX4プロジェクトの関係と連携を強化するためにDroneCodeが設立されました。ArduPilotのDroneCodeへの関与は2016年9月に終了しました。[ 19 ] 2015年は、ArduPilot開発の主要スポンサーである3DRoboticsにとっても、ArduPilotを搭載した市販のクワッドコプターであるSoloを発表した記念すべき年でした。しかしながら、Soloの商業的成功は実現しませんでした。[ 20 ]
2015 年の秋には、自動操縦装置の歴史において再び重要な出来事がありました。海軍大学院の高度ロボットシステム工学研究所 (ARSENL) チームによって、ArduPilot を搭載した 50 機の飛行機の群れが同時に飛行したのです。
この期間中に、ArduPilot のコード ベースは大幅にリファクタリングされ、初期の Arduino 時代との類似性は完全に失われました。
ArduPilotのコードは進化を続けており、自律航行のための強力なコンパニオンコンピュータとの統合・通信、追加のVTOLアーキテクチャ向けの航空機サポート、ROSとの統合、グライダーのサポート、そして潜水艦とのより緊密な統合をサポートしています。このプロジェクトは、非営利団体Software in the Public Interest傘下のプロジェクトであるArduPilot.orgの傘下で展開されています。ArduPilotは、増加し続ける企業パートナーの支援を受けています。[ 1 ]
2012年、CanberraUAVチームは権威あるUAVアウトバックチャレンジで優勝を果たしました。CanberraUAVチームにはArduPlane Developersが参加し、飛行中の航空機はAPM 2 Autopilotによって制御されました。
2014年、キャンベラUAVチームとArduPilotは、迷子のハイカーにボトルを届けることに成功し、再び優勝を果たしました。2016年には、ArduPilotはより技術的に難易度の高いコンテストで、国際チームの強豪を抑えて優勝しました。
2025年6月、ロシア・ウクライナ戦争中にウクライナ軍はArduPilotを効果的に使用し、117機の無人機でロシアの5つの空軍基地を攻撃しました。これは「スパイダーウェブ作戦」と呼ばれていました。[ 21 ]ゼレンスキー大統領は、各無人機には遠隔で操縦するパイロットが乗っていると述べました。[ 3 ]これはArduPilotを使用してロシアの携帯電話ネットワークを通じて行われました。[ 22 ]
自律航空機制御に関するその他のプロジェクト:
地上車両および運転車両向けのその他のプロジェクト: