ドローンの機体を制御するコンピュータであるフライトコントローラ用OSの開発環境は、一般的にはWindows非対応なので、通常はUbuntuを別PCあるいは仮想PC環境に用意しないといけません。ただ、私は普段はWindows PCを使っているため、Ubuntuとのデータやり取りが面倒になるので、なんとかWindows上で開発環境を構築出来ないかなと調べてみました。今回は、いくつかあるフライトコントローラ用OSの中で特にPX4について調べましたので、その方法についてご紹介します。具体的にはWindows上でLinux環境を扱うことのできるWSL(Windows Subsystem for Linux)上でPX4を使用する方法について、こちらのページを参考に実際に実行した手順について説明をします。
まず、管理者権限でWindows PowerShellを起動して、WSL(Ubuntu)をインストールします。下記コマンドを実行してインストールします。
wsl --install -d Ubuntu
インストール完了後、PCを再起動します。下記コマンドを実行して、WSLを最新状態に更新します。既にWSLをインストール済みの環境の場合は、下記コマンドから実行します。
wsl --update
更新があった場合には一度下記コマンドでWSLを終了します。
wsl --shutdown
WSLのディストリビューションが複数存在する場合は、下記コマンドでUbuntuをデフォルトのディストリビューションに指定しておきます。
wsl -s Ubuntu
インストール済みのディストリビューション一覧は下記コマンドで確認することが出来ます。
wsl -l
WSLの構築はここまでで、ここからがPX4のビルド環境構築になります。まず以下コマンドでWSLを起動します。
wsl
以下コマンドを実行して、ホームディレクトリに移動してから、GitHubからPX4のソースコードをクローンします。
cd ~/ git clone https://github.com/PX4/PX4-Autopilot.git --recursive
以下の通り、ubuntu.shスクリプトを実行します。
bash ./PX4-Autopilot/Tools/setup/ubuntu.sh
一度WSLを再起動します。
exit wsl --shutdown wsl
ビルド用のディレクトリに移動します。
cd ~/PX4-Autopilot
以下コマンドでビルドを実行します。
make px4_sitl
ビルド完了までしばらくお待ちください。
ビルドは以上で終了です。詳細なビルドオプションについては、こちらのページを参照してください。
ところでビルド方法について参考にしたページでは、開発用IDEとしてVisual Studio Codeの利用方法の説明をしているので、そちらも一緒にご紹介します。 以下コマンドを実行することで、PX4開発環境をVisual Studio Codeとすることが出来ます。
cd ~/PX4-Autopilot code .
以下のようにWindows画面上のVisual Studio CodeでWSL上のPX4の開発環境を見ることが出来ます。
Visual Studio Codeのメニューで[Terminal]-[New Terminal]を実行してVisual Studio Code上でPowerShellを起動し、そこでWSLを起動することで、完全にVisual Studio Codeに閉じて開発をすることが出来ます。素晴らしいですね。
説明は以上です。