Ubuntu18.04搭配无人机仿真环境(ROS,PX4,gazebo,Mavros,QGC安装教程)

Ubuntu18.04搭配无人机仿真环境

ROS环境配置

我个人使用了代理环境进行下载。Linux没有代理的可以使用国内源。

  1. 清华大学源

sudo sh -c '. /etc/lsb-release && echo "deb

http://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu/ $DISTRIB_CODENAME

main" > /etc/apt/sources.list.d/ros-latest.list'

  1. 中科大源

sudo sh -c '. /etc/lsb-release && echo "deb

http://mirrors.ustc.edu.cn/ros/ubuntu/ $DISTRIB_CODENAME main" >

/etc/apt/sources.list.d/ros-latest.list'

版本

我个人使用的是linux18.04的版本,对应的ROS版本为Medolic。其他对应的版本如下。

系统版本 ROS版本
14.04 Indigo
16.04 kinetic
18.04 medolic
20.04 noetic
22.04 humble

安装

sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80'

--recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

参考官网

sudo apt install ros-melodic-desktop-full

*如果安装过程中有问题可以参考我的个人文章。参考文章

gazebo安装

我们使用gazebo9不要使用11,11版本太新会出现配对问题。

(1)

sudo apt-get install gazebo9

(2) Gazebo本身是独立于ROS的,因此还需要安装ROS的Gazebo插件

  • sudo apt install ros-melodic-gazebo9-*
  • sudo apt install ros-melodic-gazebo-*

(3) 验证

  • roscore打开ros核心
  • rosrun gazebo_ros gazebo 如果gazebo成功打开就参观,如果有错误解决办法参考他人博客。推荐博客

Mavrosa安装

更新库

  1. sudo apt-get update
    sudo apt-get upgrade

开始安装

  1. 检查是否成功安装
    启动一个PX4进程
    rostopic list 查看相关Mavros话题,有就安装成功了

PX4源码下载和编译

下载源码,-b后面可以更换版本

启动相关脚本以安装依赖项目

  • bash ./PX4-Autopilot/Tools/setup/ubuntu.sh

切换到对应下载目录里面去

  • cd PX4-Autopilot

编译

  • make px4_sitl_default gazebo

设置环境变量

  • gedit ~/.bashrc
    这里注意,每个人的安装文件夹不一样,所以位置也要注意。总之把你对应文件夹的路径要正确
bash 复制代码
 source ~/Firmware/PX4-Autopilot/Tools/setup_gazebo.bash
 ~/Firmware/PX4-Autopilot/
 ~/Firmware/PX4-Autopilot/build/px4_sitl_default export
ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:~/Firmware/PX4-Autopilot export
ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:~/Firmware/PX4-Autopilot/Tools/sitl_gazebo

完成保存之后

  • source ~/.bashrc

运行仿真

  • cd ~/ PX4-Autopilot
  • roslaunch px4 mavros_posix_sitl.launch

如果使用下面命令。connected为True的话说明通信有效。即Mavros与TSL通信成功。

  • rostopic echo /mavros/state

地面站安装

关于地面站可以参考我个人的两篇文章,分别是APP安装和源码安装。

源码安葬需要自己编译,使用Qt.
参考1APP直接安装

参考2源码安装

相关推荐
cominglately3 小时前
centos单机部署seata
linux·运维·centos
魏 无羡3 小时前
linux CentOS系统上卸载docker
linux·kubernetes·centos
CircleMouse3 小时前
Centos7, 使用yum工具,出现 Could not resolve host: mirrorlist.centos.org
linux·运维·服务器·centos
木子Linux4 小时前
【Linux打怪升级记 | 问题01】安装Linux系统忘记设置时区怎么办?3个方法教你回到东八区
linux·运维·服务器·centos·云计算
mit6.8244 小时前
Ubuntu 系统下性能剖析工具: perf
linux·运维·ubuntu
鹏大师运维4 小时前
聊聊开源的虚拟化平台--PVE
linux·开源·虚拟化·虚拟机·pve·存储·nfs
watermelonoops4 小时前
Windows安装Ubuntu,Deepin三系统启动问题(XXX has invalid signature 您需要先加载内核)
linux·运维·ubuntu·deepin
创小董5 小时前
高海拔低温地区无人机大载重吊运技术详解
无人机
滴水之功5 小时前
VMware OpenWrt怎么桥接模式联网
linux·openwrt
ldinvicible5 小时前
How to run Flutter on an Embedded Device
linux