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源码安装

相关推荐
DeeplyMind19 小时前
AMD KFD的BO设计分析系列6-1: VRAM BO的显存分配分析
linux·驱动开发·amdgpu·rocm·kfd
我言秋日胜春朝★20 小时前
【Linux网络编程】多路转接reactor——ET模式的epoll
linux·服务器·网络
Hell_Yrz21 小时前
Golang信号处理实战
linux
四桑.21 小时前
uniapp运行微信小程序uni为什么是undefined
linux
用户311879455921821 小时前
perl-Test-Simple-1.302195-5.fc39.noarch.rpm 怎么安装?Fedora 39 安装步骤讲解
linux
焦思懿--19期--工职大21 小时前
VMWare和物理机之间文件传输
linux·服务器·网络·电脑
四桑.21 小时前
echarts6.0.0版本,平行坐标图形,series为多组时,横线溢出绘图区域,如何解决
linux
qq_323429711 天前
银河麒麟V10高级服务器版Bash快捷键经常失效
linux
ARM+FPGA+AI工业主板定制专家1 天前
基于JETSON/RK3588机器人高动态双目视觉系统方案
人工智能·机器学习·fpga开发·机器人·自动驾驶
哈泽尔都1 天前
运动控制教学——5分钟学会PRM算法!
人工智能·单片机·算法·数学建模·贪心算法·机器人·无人机