PX4とは
日本ではPixHawk+ArdupilotがDIYドローン界隈でよく使われていますが,PixHawk上で走らせることができる,もう一つのオープンソースのドローン用ファームウェアです。
ざっくり言うと,以下のような特長があります。
- 商用利用しやすい:ArdupilotがGPLv3ライセンスなので,ソースコードの開示義務があるのに対して,PX4はBSDライセンスなので,非公開としても良い。
- 開発が活発:ここ数年,DroneCode(Linux Foundationがサポートしている,オープンソースのドローンプロジェクトの開発支援団体?)がPX4を支援しているので,機能開発などが活発
- 開発環境が充実:Gazeboなどを用いたSoftware In The Loop(SITL)シミュレーションがサポートされており,実機を飛ばす前に挙動を確認できたりして便利
- 公式ドキュメントが充実:ユーザーガイドや,開発者ガイドが一元的に管理されており,参照しやすい。
そのため,個人的にはこれから商業用ドローンを開発したり,研究用途で使うのであれば,ArdupilotよりもPX4を使うべきではないかと思っています。
PX4の公式ドキュメント,翻訳しませんか?
というわけで,良いことづくめに思われるPX4ですが,いざ開発を始めようと思うと日本語資料が少なく,ハードルが高いように思われるかもしれません。
実際に開発をしてみると,上記の通り公式ドキュメントがあるので,これを参照しつつ開発者フォーラムを参照したら大体のことは解決するのですが,言語のハードルがあることは確かです。
そのためPX4のハードルを下げて,PX4の普及を促進するとともに,日本人開発者のみなさんがドローンの本質的な研究開発に注力できるようにしたいということで,和訳プロジェクトを開始することにしました。
ちなみに余談ですが,後述のように公式ドキュメントはGitで管理されており,Crowdinというシステムで翻訳プロジェクトを進めることができるようになっているのですが,本プロジェクトを覗いてみると,以下の言語での翻訳が進んでいることがわかります。
なんだか,各国のドローンの開発力の差を如実に反映している気がして,個人的にはとっても悔しいです。
PX4和訳プロジェクトに参加するには
デベロッパーガイド・ユーザガイドは,gitbookというQiita同様にmarkdown記法を利用したテキストを元に構成されています。そのため,元々は翻訳したページを作成し,プルリクエストを送ることで翻訳版ページを作成することが可能でしたが,若干面倒なため,Crowdinというサービスが導入されました。本サービスを用いると,Crowdinがリポジトリから拾ってきた文章をユーザがWEBインターフェース上で大人数で編集(・承認)し,Crowdinがそれをプルリクエストとして処理してくれます。
PX4 DevelopperGuide > Translationに,公式ドキュメントで翻訳に関する記述があるので,基本的にはこちらを参照いただければと思いますが,以下に翻訳手順を要約します。
- https://crowdin.com/joinにアクセスし,Crowdinのアカウントを作成する。
- 和訳に協力したいドキュメントの,Crowdinプロジェクトページにアクセスする。
- ユーザガイド:https://crowdin.com/project/px4-user-guide
- デベロッパガイド:https://crowdin.com/project/px4-developer-guide
-
リンク先から,翻訳したい言語を選ぶ(この場合,日本語)
-
言語を選んだあとの画面で,以下のようにJoinというボタンがあるはずなので,Joinボタンを押して,プロジェクトへの参加をリクエスト
-
参加が承認されるまで待つ。承認されると,登録したメールアドレスに通知がくるはず。
-
以下,さらにProofreaderによる承認プロセスなどがあるようですが,まずはみなさん,Translatorとして翻訳をしていきましょう!
注意点
- 以下のように,タグで囲まれたNote,Tip,Warningなどの文字列は,Webでの表示を正常に行うために,翻訳しないでください。
<0>Note0> The text for the note.
- 同様に,<1><2>などのタグがありますが,このタグ自体は編集しないよう,注意してください。
- 公式ドキュメントは,あくまで英語が第一言語で,日本語はその翻訳に徹する必要があります。そのため,本家の英語ドキュメントを読んで補足したい情報があるので,日本語版に追加したということは基本的に認められません。そのような場合は,まず英語版の編集を行ってください。参考:DevGuide > Documentation