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

相关推荐
不会就选b29 分钟前
linux之进程管理(二)--替换
linux·运维·服务器
倔强的石头10634 分钟前
【Linux指南】动静态库系列(二):从源码复用到目标文件复用:为什么需要把 .o 打包成库
linux·运维·服务器
光锥智能9 小时前
WAIC亮点|兼具泛化能力与作业效率的极智嘉机器人天团
人工智能·机器人
xuanshang_yutou10 小时前
无人机调试起飞遇到的问题及注意事项
无人机
HLC++13 小时前
Linux的进程间通信
android·linux·服务器
延凡科技14 小时前
多场景落地复盘:端边云架构无人机智能巡检系统设计与实践
大数据·数据结构·人工智能·科技·架构·无人机·能源
华清远见IT开放实验室14 小时前
实验室建设案例 | 石家庄科技信息职业学院嵌入式实验室——从底层硬件到系统应用,一所应用型高校的嵌入式人才培养这样落地
linux·arm开发·stm32·嵌入式硬件·高校·实验室建设
groundhappy16 小时前
idalib安装和codex ida-mcp配置
linux·开发语言·python
通信小小昕17 小时前
Ubuntu 26.04 中文输入法安装
linux·运维·ubuntu