這PART會講解如何在Gazebo中利用MAVSDK來模擬單台UAV飛行
1. 開啟QGroundControl。 2. 用PART2講到的【sitl_multiple_run.sh】開啟Gazebo。 3. 執行程式。
開啟 QGroundControl (有兩種方式)
$cd ~/Desktop/
$./QGroundControl.AppImage
開啟 Gazebo
<aside> 💡 這裡不能用雙擊直接開Gazebo,會單純開啟模擬環境沒有飛機,因此要用【sitl_multiple_run.sh】來開啟。 另外多開Terminal可以直接對Terminal點右鍵【New Tab】這樣就可以在同一個視窗,不會這麼雜亂。
</aside>
開啟一個Terminal,到【sitl_multiple_run.sh】的所在地。
$cd ~/Desktop/PX4-Autopilot/Tools/simulation/gazebo-classic/
$./sitl_multiple_run.sh -n 1 (n 後面的數字 = 要幾台無人機)
執行程式
在MAVSDK-Python的Source code中,examples內有很多範例程式可以測試,例如takeoff_and_land.py,可以用內建文字編輯器去看看裡面怎麼寫,也可以去下載其他優秀的編輯器 (vscode) 來使用。 執行方法很簡單,前往examples的所在地然後執行就可以了,如下:
$cd ~/Desktop/MAVSDK-Python/examples/
$./takeoff_and_land.py
<aside> 💡 這裡需要注意的是,如果利用./takeoff_and_land.py來執行.py檔,在檔案的最上面一定需要加上#!/usr/bin/env python3,否則要【python3 takeoff_and_land.py】來執行。
</aside>
三件事情依序做完後,就可以看到飛機在移動的畫面,成功執行模擬程式
