px4 QGC MAVROS
PX4模拟器连接MAVROS
目录
下载PX4固件代码
方法一:B站视频过来的建议按照此方法直接下在我提供的包
git clone https://github.com/PX4/PX4-Autopilot.git --recursive
此时如果不科学的话,会出现fatal: unable to access xxx的报错,
所以可以由以下方法下载好别人的PX4-Autopilot文件包,然后打开ubuntu下的PX-Autopilot.zip拷贝的目录,右键提取,即可得到 PX-Autopilot 文件夹,而无需再 git clone !!!
百度网盘下载成功后,直接解压运行以下指令:
运行 bash 脚本( ubuntu_sim.sh )
bash ./PX4-Autopilot/Tools/setup/ubuntu.sh
此步没有出现问题,重启,之后
cd PX4-Autopilot
make px4_sitl jmavsim //jmavsim仿真环境
出现以下界面代表成功
make px4_sitl gazebo
出现gazebo界面代表成功,有红色警告不用管
如果mavros已经安装好运行
roslalaunch px4 fast_test.launch
方法二:
1、git 固件包
git clone https://github.com/PX4/PX4-Autopilot.git
执行以下命令:
cd PX4-Autopilot
git submodule update --init --recursive
如果上述出现了失败,继续执行,直到全部成功
git submodule update --recursive
之后运行bash脚本
运行 bash 脚本( ubuntu_sim.sh )
bash ./PX4-Autopilot/Tools/setup/ubuntu.sh
此步没有出现问题。
完成后重启ubuntu
进行环境配置验证,在完成上述环境的搭建之后,就可以开始仿真和固件的编译了, 先进行编译环境的测试,打开终端输入
此步为实机固件可以不运行
cd PX4-Autopilot
make px4_fmu-v3_default
编译成功后,会显示
接着,在PX4-Autopilot文件夹下终端运行
SIMULATION
make px4_sitl jmavsim
make px4_sitl gazebo
出现以下,代表安装成功。
如果启动gazebo总是出现preparing waiting for 界面
手动下载模型
cd ~/.gazebo/models/
git clone https://github.com/osrf/gazebo_models.git
mavros安装(ubuntu18.04)
wiki.ros.org/mavros
源码安装:
docs.px4.io/master/e...
在安装好之后运行roslaunch会出现:
这是由于需要在/home路径下“ctrl+h”显示.bashrc文件,打开后添加PX4-Autopilot源码路径
source ~/PX4-Autopilot/Tools/setup_gazebo.bash ~/PX4-Autopilot/ ~/PX4-Autopilot/build/px4_sitl_default
export ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:~/PX4-Autopilot
export ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:~/PX4-Autopilot/Tools/sitl_gazebo
注意export 开头的环境变量必须放在最下面,source开头的如果放在最下的话,会导致无法使用roslaunch px4 XXX.launch,以及直接启动launch文件是提示找不到路径。
重新打开终端测试 roslaunch
roslaunch px4 mavros_posix_sitl.launch
参考文献:
blog.csdn.net/qq_387...
blog.csdn.net/qq_412...
mavros我这里直接用二进制安装
sudo apt install ros-melodic-mavros ros-melodic-mavros-extras
wget https://raw.githubusercontent.com/mavlink/mavros/master/mavros/scripts/install_geographiclib_datasets.sh
chmod +x install_geographiclib_datasets.sh
sudo ./install_geographiclib_datasets.sh
最后一步执行的时候会很慢,采取以下方法:
blog.csdn.net/qq_412...
首先要下载文件 Geographiclib-1.52.tar.gz
地址:sourceforge.net/proj...
可以直接解压文件到主目录或者
tar xfpz GeographicLib-1.52.tar.gz
进入文件目录,创建build文件夹并且进入
mkdir build
cd build
配置+编译+安装
../configure
sudo make
sudo make install
接下来在要使用的项目文件的cmakelist.txt加入GeographicLib需要的依赖,
LIST(APPEND LINK_LIBS
${OpenCV_LIBS}
#$ENV{HOME}/ScaViSLAM/svslocal/lib/libGeographic.so
#${Geographic_LIBS}/usr/local/lib/libGeographic.a
/usr/local/lib/libGeographic.so.17.1.1
/usr/local/lib/libGeographic.so.17
/usr/local/lib/libGeographic.so
)
进入GeographicLib文件夹下,然后用这个格式安装.sh文件最后要求的三个文件,注意,这个语句中gravity,egm96这两个词要根据.sh来替换成需要的那个。
sudo geographiclib-get-gravity egm96
sudo geographiclib-get-geoids egm96-5
sudo geographiclib-get-magnetic emm2015
//这一步需要科学上网,否则会很慢
最后看在/usr/local/share/目录下是否有gravity、geoids 、magnetic 三个文件
,则转移路径
sudo cp -r GeographicLib /usr/share/
Gazebo启动验证
roslaunch px4 mavros_posix_sitl.launch
运行结果和 make px4_sitl gazebo一样
Gazebo在本地目录下载模型文防止启动缓慢
cd ~/.gazebo/
mkdir -p models
cd ~/.gazebo/models/
wget http://file.ncnynl.com/ros/gazebo_models.txt
wget -i gazebo_models.txt
ls model.tar.g* | xargs -n1 tar xzvf
mavros安装(ubuntu20.04)
sudo apt-get install ros-noetic-mavros ros-noetic-mavros-extras
下一步终端走代理可以直接运行
sudo /opt/ros/noetic/lib/mavros/install_geographiclib_datasets.sh
Gazebo启动验证
roslaunch px4 mavros_posix_sitl.launch
运行结果和 make px4_sitl gazebo一样
最后编辑:SteveChen 更新时间:2025-12-27 15:27