ArduPilotの歴史
内容に入る前に、ArduPilotおよびArducopterのこれまでの流れを簡単に示す。
ArduPilotは当初、Dronecodeの中のメインのファームウェアとして位置づけられていた。
- Advertisement -
Dronecodeは無人航空機(ドローン)のソフトウェアをオープンソースで開発するためのプロジェクトで、2014年10月に発足した。既存のドローンに関するリソースを統合して大規模なオープンソースプラットフォームを構築することを目指していたものだ。
- Advertisement -
しかし、3DRのハードウェア撤退を受けて、Dronecodeの方針が変わり、ArduPilotがGPL V3といったライセンスを採用していたこともあり、分裂した形となった。詳しくは以前詳しく書いている。
- Advertisement -
ArduPilotの礎となったのは、2007年5月にChris Andersonが立ち上げたDIYDrones.comである。DIYDrones.comはLego mindstormsをベースに作られたドローンであった。
ArduPilotの歴史は、まさにドローンの歴史といってもよいほどだったが、Dronecodeとの分裂によって、新たな歴史が始まった。
それまでは、どちらかというと単独のファームウェアのバージョンというより、フライトコントローラーに紐づいたものであったし、そんな形で記載されていることが多かった。
2016年9月に ArduPilotがArduPilot Partnersグループを開始したが、その後すぐの10月に、独立したArduPilotは、Copter-3.4をリリースした。
そういった意味では、このCopter-3.4が記念すべきバージョンである。
そして、Copter-3.4には、フライトコード上で実行可能な衝突回避の機能が搭載された。(通常、こういった衝突回避はフライトコントローラー上に載せたコンパニオンコンピューター上で実行させるケースが多かった。現在でも複雑な回避はコンパニオンコンピューターで実行させるが、それでもこのフライトコード上で実行可能な衝突回避は画期的であったし、それは新生ArduPilotに相応しい内容であった)
2017年7月には、Copter-3.5がリリースされた。このバージョンでは、Tuningを自動で実施するAutotuneや画像のみを用いてカメラ位置姿勢と環境地図を逐次推定する手法であるVisual Odometryなどを使った室内などのGPSが受信できない空間でのナビゲーションのサポートが含まれている。(これも室内ドローンの強力なソリューションとして、ArduPilotのみが実装している機能だ。)
2018年10月には、Copter-3.6.0がリリースされ、ChibiOSのサポート、多く小さいサイズのフライトコントローラーのサポート、フォローモード(テレメトリーシステムを利用して別の車両を追従するモード)が実装された。
2019年12月には、Copter 4.0.0がリリースされ、プロポの拡張設定が可能なRCx_OPTIONサポートや、そして、大きな追加項目としてはLUAスクリプトサポートが実装された。このLuaスクリプトのサポートにより、フライトコードのソースコードを変更することなく、多くの機能を実装させることが可能になった。
2021年10月には、Coper4.1.0がリリースされ、AHRS/EKFの機能強化と修正が行われEKF3がデフォルトとなったほか、衝突回避の機能強化、多くの新しいフライトコントローラーや周辺機器の対応が追加された。
2022年5月には、Copter4.2.0がリリースされ、制御モードとフライトモードの強化などの既存機能の強化、Luaスクリプトの改善、パラシュートなどの安全性強化も追加されている。また、フライトコントローラーや周辺機器は続々と追加されている。
2022年10月には、Copter4.3.0がリリースされ、ここでもジンバルの機能強化を始めとした既存機能の強化、GPSエラーの際の30秒間の推測航行といった高度な安全性や妨害対策などの追加もなされている。
2023年8月には、Copter4.4.0がリリースされ、このあたりのバージョンは非常に多くの細かい機能強化が行われている。
2024年4月には、Copter4.5.0がリリースされ、これもCopter4.4.0と同様、非常に多くの細かい機能強化(特に安全性やジンバルカメラ、スクリプティング)が行われている。
ここに挙げたのはメジャーアップデートになるが、この間にもバグ修正や機能強化が細かいサイクルで行われている。また、開発者向けの様々なアイテムやツールも強化されている。
Arducopter4.6.0メジャーアップデート
来年1月にCopter4.6.0がリリースされる予定になっている。現在、世界各国のベーターテスター達がテストをし、フィードバックを返しているところだ。
新しいCopter4.6.0は、15の項目に分類されている。
- ボード固有の変更
各フライトコントローラー固有の内容に関しての変更が入っている。 - AHRS/EKF の機能強化と修正
位置推定機能であるEKFの機能強化と修正。 - ドライバーの機能強化とバグ修正
気圧計の改良、大気モデルやDRONE CANの強化が多く行われている。 - ネットワークの強化と修正
イーサネットに対して、完全にReadyとなっている。 - カメラとジンバルの強化
Siyiのバグ修正や機能強化が含まれる。 - ハーモニックノッチの強化
VTOLの開発が進んでいるため強化。 - コプター固有の機能強化とバグ修正
自動航行や大型機のチューニング性能の向上。 - TradHeli 固有の拡張機能
シングルヘリの自律化ニーズが増えている。 - 飛行機固有の機能強化とバグ修正
クワッドプレーンの固定翼に移行した後の機能強化。 - スクリプティングの機能強化
Luaスクリプトの便利なコマンドやアプレットの追加。 - GCS / mavlink関連の変更と修正
ミッションプランナーやQグランドコントロールなどで表示可能な内容の変更。 - ロギングの機能強化と修正
ログの項目内容の強化。 - ROS2 / DDS対応
コンパニオンコンピューターやロボット向けの対応強化。 - 安全関連の機能強化と修正
安全性が毎バージョンで強化されている。 - 開発者向けの修正と機能強化
開発者向け機能の強化。
今回のメジャーアップデートにより、エッジドローンとしてのイーサネットやCANの対応、ROS/DSSとの親和性、ChatGPTなどのAIとの連動などが強化されており、現状の様々なニーズに対応したドローンのファームウェアとしてArduPilotは最適なものになっている。