說在前頭
關於PX4固件的安裝,網上論壇上的教程魚龍混雜,好的壞的混在一起,不容易讓新入坑的新人上手,而且其中也會遇到比較多的問題。在經過一段時間自己摸索以及借鑑網上資料的過程中,總結了一些小心得,供各位網友學習,同時也給自己留一個筆記。
——本人的電腦配置用的是Ubuntu 16.04的。
1. 工具鏈安裝
前期的工具鏈,請嚴格參照官方網站:https://dev.px4.io/master/zh/setup/dev_env.html
在這個過程中,由於PX4固件的更新迭代速度很快,請切忌DIY!
小提示:點開網站左上角有PX4固件的版本,請自己根據自己的操作系統選擇固件版本,如果遇到git clone速度過慢,請合理科學上網解決。個人還是比較推薦使用 .sh
大禮包進行安裝,省時省力。
2. 編譯源碼
如果順利完成了第一步,那麼下一步就是進行源代碼的編譯工作。
cd ~/src/Firmware
git describe --always --tags //check your px4 version
make help // select a proper version you like, for example, px4fmu-v2_default
make px4fmu-v2_default
除此之外,可以用jMAVSim 模擬器
make px4_sitl jmavsim // 這個指令根據你的版本不同會有不同,最好的辦法是用tab看看
同理,用gazebo 模擬器的情況也是一樣的
make px4_sitl gazebo //用tab 看指令
3. 下載其他版本的固件
如果需要下載其他版本的固件
則
mkdir -p ~/px4_your_version
cd px4_your_version
git clone -b v1.8.0 https://github.com/PX4/Firmware.git //用1.8.0的版本
cd Firmware
git submodule update --init --recursive //特別重要!!!!
接下來便是上述第二部分的編譯了。
4. 固件燒錄
首先固件燒錄可以使用兩種辦法,第一種是使用終端直接upload
,這種辦法是cd Firmware
, 然後執行想要燒錄的版本,
make px4fum-v2_default upload // if you want to upload this version
第二個辦法是用QGC地面站,打開地面站之後,點開小齒輪,有個Firmware,點進去,然後鏈接飛控板子,右側會出現如下圖所示:
這時候, 可以選擇QGC提供的默認最新的固件版本,但是這樣帶來的問題可能就是板子和固件不兼容,那麼如果要使用自己的指定固件版本,就要用到Advanced settings, 會出現如下情況:
然後在Firmware/build中選擇要使用的已經編譯過的固件,選擇.px4
文件,然後就可以了,如果發現自己要用的沒有,那麼就再回到步驟2編譯一次就可以啦!
注意,px4固件要對應版本以及板子的類型使用,譬如 pixhawk 1 對應 px4fmu-v2_default固件,那麼問題就來了,我怎麼知道我手裏的板子是什麼東西呢?請看下圖。
參考網站:https://pixhawk.org/products/