gazebo仿真环境搭建

2023-05-16

主要内容:

  • 安装gazebo
  • 配置gazebo
  • 运行gazebo
  • mavros控制飞机

1安装gazebo

如果已经安装MAVROS可以直接在终端上输入gazebo查看是否已经拥有gazebo,因为MAVROS中含有gazebo包,如果没有gazebo,则需要自行安装。

gazebo

在这里插入图片描述
如果出现了这个界面,说明已经拥有gazebo。
在初次打开gazebo时,会出现一段时间的黑屏,耐心等待一下就可以了。如果时间较长,关闭再次打开出现闪退现象,终端提示"VMware: vmw_ ioctl_command error Invalid argument."可采用以下解决办法。

  • 关闭硬件加速(亲测可用)
echo " export SVGA_VGPU10=0" >> ~/.bashrc
source ~/.bashrc
  • 安装过程
# 接受来自packages.osrfoundation.org的软件
sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list'
# 添加秘钥
wget http://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -
# 安装Gazebo7
sudo apt-get update
sudo apt-get install gazebo7
sudo apt-get install libgazebo7-dev
  • 打开Gazebo
gazebo

2配置gazebo

# 安装protobuf库,它用作Gazebo的接口
sudo apt-get install libprotobuf-dev libprotoc-dev protobuf-compiler libeigen3-dev
#在仿真文件夹目录顶层创建一个 Build 文件夹
cd ~/pix/px4_1.6.5/Firmware/Tools/sitl_gazebo
mkdir Build
# 添加路径
 ##设置插件的路径以便 Gazebo 能找到模型文件
 export GAZEBO_PLUGIN_PATH=${GAZEBO_PLUGIN_PATH}:$HOME/pix/px4_1.6.5/Firmware/Tools/sitl_gazebo/Build
 ##设置模型路径以便 Gazebo 能找到机型
 export GAZEBO_MODEL_PATH=${GAZEBO_MODEL_PATH}:$HOME/pix/px4_1.6.5/Firmware/Tools/sitl_gazebo/models
 ##禁用在线模型查找
 export GAZEBO_MODEL_DATABASE_URI=""
 ##设置 sitl_gazebo 文件夹的路径
 export SITL_GAZEBO_PATH=$HOME/pix/px4_1.6.5/Firmware/Tools/sitl_gazebo 
#编译gazebo仿真
cd Build
cmake ..
make

3运行gazebo

cd src/Firmware
make posix_sitl_default
source ~/catkin_ws/devel/setup.bash 
source Tools/setup_gazebo.bash $(pwd) $(pwd)/build_posix_sitl_default
export ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:$(pwd)
export ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:$(pwd)/Tools/sitl_gazebo
roslaunch px4 mavros_posix_sitl.launch

4mavros控制飞机

cd ~/catkin_ws
catkin_make
source ~/catkin_ws/devel/setup.bash
source devel/setup.bash    //每新开一个terminal都要有这个,否则就会出错
rosrun px4_mavros offb_node

至此,你就可以看到你的小飞机起飞了。

参考文献

Pixhawk原生固件PX4之SITL软件在环仿真
基于单目视觉的四旋翼定点降落——如何搭建基于gazebo的pixhawk仿真环境(三)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

gazebo仿真环境搭建 的相关文章

随机推荐

  • EC20/EC25 4G模块AT指令开发总结

    文章目录 一 EC25 20 4G模块简介二 AT指令总结1 通用AT指令2 建立TCP UDP连接相关AT指令 三 TCP传输数据流程四 UDP传输数据流程五 总结 一 EC25 20 4G模块简介 EC25 是一系列带分集接收功能的 L
  • C语言实现socket网络编程及多线程编程

    文章目录 一 概述二 TCP socket网络编程1 server端程序实现 xff08 tcp server cpp xff09 2 client端程序实现 xff08 tcp client cpp xff09 3 编译与执行 三 UDP
  • 基于openssl实现https双向身份认证及安全通信

    文章目录 一 概述二 代码设计2 1 ssl server c程序设计2 2 ssl client c程序设计 三 测试 一 概述 https基于SSL TLS提供安全的通信信道 xff0c 基于证书认证技术实现服务器和客户端之间的身份认证
  • ubuntu的不同版本

    ubuntu是现在最流行的Linux安装包 xff0c 本文介绍了ubuntu的各种版本 一 Ubuntu 每个ubuntu的版本都包含一个版本号 xff08 version number xff09 和一个代码名 xff08 code n
  • Linux下通过service服务管理用户进程

    文章目录 一 service配置介绍1 1 service配置文件1 2 配置文件的区块1 3 修改配置文件后重启1 4 服务管理 二 设计一个可执行程序三 设计一个service管理 home ubuntu test servicetes
  • c++中多态调用场景下基类析构函数的virtual声明

    文章目录 一 基类析构函数未加virtual声明的情况1 1 基础示例演示1 2 进阶示例演示 二 基类析构函数添加virtual声明的情况三 总结 一 基类析构函数未加virtual声明的情况 在多态场景中 xff0c 可通过基类的指针指
  • protobuf协议原理及实现,基于c++

    文章目录 一 protobuf协议简介1 1 protobuf协议简介1 2 数据交互xml json protobuf格式比较1 3 关于 ProtoBuf 的一些思考 二 protobuf库安装三 protobuf库使用第一步 xff0
  • OLED显示屏驱动:8080并口,IIC,SPI三种驱动方式

    本文介绍了对OLED的几种驱动方式 xff0c 8080并口 xff0c IIC xff0c SPI三种驱动方式 xff0c 采用的单片机是STM32F407 文章目录 一 OLED驱动原理介绍二 8080并口驱动方式三 IIC驱动方式四
  • ROS2学习笔记(1)ROS2+docker的配置方法

    ROS2学习笔记 xff08 1 xff09 ros2 43 docker的配置方法 1 前言2 安装docker2 1 docker的发展史2 2 什么是docker2 3 docker的思想2 3 1 集装箱2 3 2 标准化1 运输方
  • ubuntu之更改ubuntu和windows双系统启动顺序

    ubuntu之更改ubuntu和windows双系统启动顺序 背景方法 背景 安装好ubuntu和windows双系统后 xff0c 一般grub引导默认选择第一个为启动项 xff0c 在公司打工还好 xff0c 毕竟要进ubuntu挣钱
  • 【lightDM】组件理解

    前言 LightDM xff08 Light Display Manager xff09 是轻量级 Linux 桌面显示管理器 其目的是成为 X org 的 X Server 的标准显示管理器 LightDM 负责启动 X servers
  • 【机器人学中的状态估计】第一讲

    1 什么是状态估计 xff1f 通过获得传感器的观测值 xff0c 建立观测值到状态量的模型 xff0c 估计出状态量 2 概率密度函数 后验概率 p x y
  • VScode环境下使用git与github远程操作要点记录

    部分内容来源于网络 xff0c 外加了自己的实践 xff0c 记录了一下 文章目录 一 windows上使用git1 官网下载git https git scm com download win 2 创建本地仓库 二 git远程连接gith
  • 【千律】C++基础:TXT文件的创建、写入和读取

    include lt fstream gt include lt iostream gt using namespace std int main 初始化 ifstream iread txt 初始化输入流 ofstream write t
  • Matlab计算福利彩票的中奖概率

    Quez1 计算福彩双色球一等奖的中奖概率 福彩双色球的玩法如下 从编号1 33的红球里任选6个 另外在编号1 16的蓝球里再任选1个 如果选择的红球和蓝球和当期的开奖结果完全一致 顺序可不同 则中一等奖 Analysis 这是一个组合问题
  • 【千律】OpenCV基础:基于梯度的模板匹配

    环境 xff1a Python3 8 和 OpenCV 内容 xff1a 基于梯度的模板匹配 主要关注边缘信息 xff0c 能够较好的识别不同颜色的目标 实现步骤 xff1a 1 给定原图像I和模板T 2 指定差异度 xff08 相似度 x
  • golang使用SM2(SM2withSM3)签名、验签数据

    golang使用SM2签名 验签数据 场景标准密钥签名算法 Start依赖公钥转base64私钥转hex私钥生成公钥生成密钥对Hex私钥转私钥对象base64公钥转公钥对象签名验签 测试 场景 对接招行支付 标准 密钥 私钥 xff1a H
  • 树莓派与pixhawk串口通信

    一 Pixhawk部分 1 读取数据测试 步骤 xff1a 在Firmware src modules中添加一个新的文件夹 xff0c 命名为rw uart在rw uart文件夹中创建CMakeLists txt文件 xff0c 并输入以下
  • 关于pixhawk波特率修改的两种方法

    一 QGC地面站修改 将pixhawk与地面站相连接进入参数设置界面 xff0c 搜索SYS COMPANION参数设置需要的波特率保存设置 二 终端 xff08 Terminal xff09 修改 打开终端 xff0c 进入源码所在Fir
  • gazebo仿真环境搭建

    主要内容 xff1a 安装gazebo配置gazebo运行gazebomavros控制飞机 1安装gazebo 如果已经安装MAVROS可以直接在终端上输入gazebo查看是否已经拥有gazebo xff0c 因为MAVROS中含有gaze