完整安装PX4/PX4-Autopilot,无需科学上网。
安装自https://github.com/PX4/PX4-Autopilot/的px4功能包,因为需要科学上网似乎会失败,这里采用其他方法来安装。
截止到2022年9月,https://hub.fastgit.xyz这个镜像已经挂掉了,因为我也不再需要使用PX4,所以不再更新了,但是方法已经写的比较清楚了,喜欢动手的朋友们可以看下这篇博客的原理,然后自己摸索一下安装,如果对这篇博客哪个步骤不理解的还是可以私信我,能帮的话鄙人一定帮一下。
直接下载
并且如果你有百度云盘的会员,也可选择直接下载压缩包,大小为1g多,也不小。
链接: https://pan.baidu.com/s/10qUpCH-oWAm1HCiB5A-iIw 密码: ed0t
如果直接下载压缩包,可以先解压,然后进入PX4-Autopilot
目录下,执行
wget https://raw.githubusercontent.com/mavlink/mavros/master/mavros/scripts/install_geographiclib_datasets.sh
sudo bash ./install_geographiclib_datasets.sh
bash ./Tools/setup/ubuntu.sh
git submodule update --init --recursive
然后进这个博客最后一个阶段执行相应的命令即可。
原理
原理就是使用github的镜像来代替github,目前镜像好用的有https://hub.fastgit.xyz。
所以手动更改镜像即可(将命令上对应镜像网址更改),下面的代码已经更新最新镜像,如果此镜像又挂了,只需要改新的镜像即可,也欢迎大家在评论区给出新的镜像。
手动安装
首先执行下面命令,需要等待很久,然后因为网络原因会弹出一堆失败,没关系,等待完成即可。
git clone https://hub.fastgit.xyz/PX4/PX4-Autopilot.git --recursive
下载完后,显示很多路径未注册和未完成。
到PX4-Autopilot目录下更改安装源
cd PX4-Autopilot/
sudo gedit .gitmodules
更改下载源,使用镜像网址将github替换,按照图片操作:
继续更改下载源,操作是相同的
sudo gedit .git/config
然后执行
git submodule update --init --recursive
之后手动进入PX4-Autopilot/Tools/sitl_gazebo/
目录,查看是不是只有.git一个文件,如果有其他文件,说明下载成功,此时直接进入到更改下载源完成之后的部分。
如果只有一个.git文件,则返回到上一层目录,即在PX4-Autopilot/Tools
目录下打开终端,执行
sudo rm -r sitl_gazebo
git clone https://hub.fastgit.xyz/PX4/PX4-SITL_gazebo
mv PX4-SITL_gazebo sitl_gazebo
继续更改下载源
sudo gedit sitl_gazebo/.gitmodules
复制下面的内容覆盖原有的
[submodule "external/OpticalFlow"]
path = external/OpticalFlow
url = https://hub.fastgit.xyz/PX4/OpticalFlow.git
继续执行
cd ..
cd ..
git submodule update --init --recursive
然后
cd Tools
sudo gedit sitl_gazebo/external/OpticalFlow/.gitmodules
复制下面的内容覆盖原有的
[submodule "external/klt_feature_tracker"]
path = external/klt_feature_tracker
url = https://hub.fastgit.xyz/ethz-ait/klt_feature_tracker.git
下载源更改结束。
这时在PX4-Autopilot
目录下执行下面命令
git submodule update --init --recursive
理论上应该不会返回任何信息,如图这样:
如果返回未对xxx路径注册,可以多执行2次:git submodule update --init --recursive
如果始终显示有路径未注册,建议检查一下是不是哪步没有做,或者私信我吧。
然后继续在PX4-Autopilot
目录下执行:
wget https://raw.githubusercontent.com/mavlink/mavros/master/mavros/scripts/install_geographiclib_datasets.sh
sudo bash ./install_geographiclib_datasets.sh
bash ./Tools/setup/ubuntu.sh
编译尝试
1.返回到PX4-Autopilot
目录下编译:
make
如果有以下报错
删掉指定目录(如果有的话,没有的话可以忽略)
然后在此目录下打开终端,下载PX4-GPSDrivers并重命名为devices。
执行:
git clone https://hub.fastgit.xyz/PX4/PX4-GPSDrivers.git
mv PX4-GPSDrivers devices
如果镜像网址下载不了,也可以github原地址(github.com代替hub.fastgit.xyz)
2.然后可以继续回到PX4-Autopilot
目录下编译:
make
如果出现这样的报错
则删掉指定目录(如果有的话,没有的话可以忽略)
然后打开终端,下载libevents
git clone https://hub.fastgit.xyz/mavlink/libevents.git
如果镜像网址下载不了,也可以github原地址(github.com代替hub.fastgit.xyz)
然后可以继续回到PX4-Autopilot
目录下编译:
make
这时就不会出错了,如图所示
最后
然后返回到PX4-Autopilot
目录下,执行
sudo apt-get update
sudo apt-get upgrade
make px4_sitl_default gazebo_plane
第一次需要等待一会,正常的话会出现一个无人机
然后可以输入commander takeoff 起飞。。。
没起飞就多重复几次,快点重复。
之后没有报错的话基本上就成功了。
可以查看下效果,第一次启动需要等待较长时间。
出现小车的命令:
make px4_sitl_default gazebo_rover
放一下结果图。
更多推荐
所有评论(0)