このリポジトリは「enPiT サマースクール 2022」の成果物です
内容としては「ドローンを用いたクレーンゲーム」になります
前提条件
- vmwareのインストールが完了している
- 仮想環境のダウンロードが完了している
- ダウンロードした仮想環境をvmwareで開けている(いつでも操作できる状態)
まっさらな環境であることが条件です。
既に他のプロジェクトを作成している場合、致命的なエラーが発生する可能性があります。
事前にバックアップを作成してください。
以下のコマンドを実行してください。
wget https://raw.githubusercontent.com/GNagahashi/drone-claw-machine/main/install.sh -O- | sh
次に、bridge pointでgncをビルドしてください(以下、手順)
- bridge pointの起動(デスクトップ画面にショートカットあり)
select a directory as workspace
というウィンドウが起動、何もせずLaunch
を選択- (ウィンドウ左上)
File
を選択 Import...
を選択General
のExisting Projects into Workspace
を選択select root directory
の右横にあるbrowse...
を選択- 左にあるメニューから
Home
を選択、右のファイル,ディレクトリ一覧からcatkin_ws/src/gnc
に移動、ウィンドウ右上にあるOK
を選択 - ウィンドウ中央の
Projects:
にgnc(/home/ubuntu/catkin_ws/src/gnc)
があることを確認する - ウィンドウ右下にある
Finish
を選択 - ウィンドウ左上にある
Welcome
を選択する - ウィンドウ上部のメニューバーより
Project
→Build All
を選択 - ウィンドウ右下の
Console
にログが流れる、Build Finished
と表示されれば完了
bridge pointでのビルド時、エラーが発生する場合は~/catkin_ws
上でcatkin clean
とcatkin build
を行う
ターミナルとbridge pointの両方でビルドが成功すればok
(この辺の不具合は要調査)
以下の順にコマンドを実行してください
まずroscoreを立ち上げます
roscore
新しいターミナルのタブを開き、gazeboを立ち上げます
cd ~/drone_claw_machine && ./simulator.sh
新しいターミナルのタブを開き、sitlを立ち上げます
cd ~/Desktop && ./sitl.sh
新しいターミナルのタブを開き、iq_simを実行します (iq_sim: ドローンの制御に利用されるプログラム)
roslaunch iq_sim apm.launch
このとき、iq_simを実行した画面に
[ INFO] [...]: FCU: EKF2 IMU0 is using GPS
[ INFO] [...]: FCU: EKF2 IMU1 is using GPS
というようなメッセージが表示されるまで待つ(これをしないとうまくgncが動かない場合がある)
新しいターミナルのタブを開き、gncを実行します (gnc: ドローンの制御プログラム, bridge pointで作成したもの)
rosrun gnc ctrl
新しいターミナルのタブを開き、以下のコマンドを実行します (その他必要なプログラムをlaunchファイルで一括起動します)
roslaunch drone_ctrl drone_ctrls.launch
問題なく全てのプログラムが立ち上がった場合、
- ドローンを操作するアプリ
- ドローンに搭載されたカメラ
- gazeboの画面 を見やすい位置に移動させた上で、ドローンを操作してください
必要に応じで、sitlのコンソールなどを確認してください