五、关于pixhawk的仿真,jmavsim和Gazebo

2023-05-16

实物飞总是很麻烦的,一个不小心就炸鸡了

所以在仿真环境里去验证是最好的方法,我也觉得先艹仿真再艹飞机是很正确的一种方式。

先介绍一下jmavsim

官网介绍
前面说的环境搭建好了,就可以直接make px4_sitl_default jmavsim
一次编译可能需要一点时间
在这里插入图片描述
然后就可以打开QGC来操控了,他会自动connected
然后就可以在QGC里为所欲为啦
很可惜它只支持室外的GPS环境

接上一个虚拟手柄就完全可以了开始操控了,没有接遥控器的话也可以,只能用部分模式定点啊之类的不依赖遥控器的

各种模式切换,任务运行,自行体会

QGC的终端我们会发现打不开,它其实搬到我们电脑运行仿真的终端里面啦,里面的一些模块都跟终端里一样,这说明我们也可以写自己的模块在程序里运行
比如hello功能,在终端输入hello start就运行这一个模块了,显然我们可以在这里面做一些其它的事情。
所以任务是在我们ubuntu的终端里面调试的而不是在QGC里的nsh终端,终端搬了家呗。

jMAVSim是一个轻量级的仿真器,目前只支持四旋翼仿真

一般而言,如果我是修改了PX4固件内的代码,比如修改了姿态控制器,我会用jMAVSim调试,同时打开地面站,利用定点及自稳模式进行飞行测试,还能下载log看看记录的量对不对。jMAVSim不吃电脑配置,运行比较流畅,适合快速验证PX4内部代码逻辑及检查修改固件后的BUG。
赞同上面的话

再看看GAZEBO

首先gazebo确实是我看来最好的仿真环境
它也确实对PX4支持的更多,很多算法的验证,包括仿真环境的搭建都是在gazebo里面搭建的,对我来说简直是天堂!!!
但是,要是没有ROS的基础的话还是尽量熟悉好ROS下的gazebo仿真后再来接触的比较好
虽然官方说gazebo开始是一个单独的仿真软件不再依赖ROS了,但是对于ROS玩家来说这俩一直是一起的,有些坑也只有ROS开发过的人才知道怎么踩。

关于安装

首先肯定是需要一个GAZEBO环境的
先按照这个链接里说的脚本运行安装
在这里插入图片描述
ROS/Gazebo,里面有一些操作不是我们需要的,自己看一下这个.sh文件,里面后面的一段关于mavros的操作我们可以去掉,或者他可能会执行不完报错(我的是因为已经有了catkin_ws文件夹所以报错没继续执行),不管他就是了,我看了一下好像是在通过源码编译安装mavros和mavlink,这个没必要扯源码去编译。。。
我之前在系统里部署过了过ros-melodic,所以把里面安装sudo apt install ros-melodic-desktop-full -y去掉了,嗨~要是电脑足够强就不要注释了,不然运行ros的时候可能偶尔会缺一点东西需要自己再去apt-get install,懂得都懂
sudo rosdep init/rosdep update这个大家可以忽略关于它的报错,或者直接注释掉它算了,这东西老毛病,它报错我从来没理过,反正不影响我使用
单纯地从仿真上来看
gazebo与jmavsim一样它可以连接QGC地面站,玩法与jmavsim一样的
但是它支持更多的机型
具体使用看这个
下面说一下编译需要注意的地方
将PX4-Autopilot/Tools/sitl_gazebo/models里的模型文件里的模型文件复制到~/.gazebo/models,玩过ROS GAZEBO仿真的都知道这一步啥意思,就是给gazebo添加模型文件
sudo apt-get install libgstreamer-plugins-base1.0-dev libgstreamer1.0-dev,这个我遇到过报错,make px4_sitl gazebo报错通过这个解决的
以上均不依赖ROS,完全是gazebo环境,感觉没什么好研究的。

我看了一下PX4-Autopilot/Tools/sitl_gazebo/里面是关于gazebo仿真的文件
src文件夹。这里是gazebo仿真的核心代码,即plugin(插件)代码。比如gps、imu、电机的插件,简单说如何模拟产生gps信号,就是这里的代码负责的。Gazebo自身也会提供一些默认插件,或者第三方也会提供插件,比如你要新增一个传感器,就可以找到相应的插件。
models文件夹。存放各种Gazebo模型文件。
worlds文件夹。存放Gazebo的世界环境文件。

看官网的介绍具体使用看这个
我们可以尝试做一些东西
比如说选择机型
在这里插入图片描述加载不同的Wolrd
在这里插入图片描述等等等等。。。
纯仿真,没什么好聊的

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

五、关于pixhawk的仿真,jmavsim和Gazebo 的相关文章

  • Pixhawk-信息流浅解析

    根深方能叶茂 在等待的日子里 xff0c 刻苦读书 xff0c 谦卑做人 xff0c 养得深根 xff0c 日后才能枝叶茂盛 Better 根爷 之前我们已经谈到系统框架 xff0c 之前谈到了定制自己功能的两部 xff1a 添加模块和修改
  • 运行gazebo时出现[Err] [REST.cc:205] Error in REST request

    出现错误 xff1a Err REST cc 205 Error in REST request libcurl 51 SSL no alternative certificate subject name matches target h
  • gazebo: ROS Control的仿真教程

    gazebo 43 ROS control 1 预备知识2 数据流3 实现动态避障的环境构建 本文主要介绍如何为仿真机器人做控制器的仿真 通过仿真控制器 xff0c 控制机器人的对应关节 1 预备知识 关于gazebo中机器人的仿真 xff
  • gazebo仿真环境加载模型方式

    我们都知道 xff0c gazebo可以在自带的gui中创建模型 导入模型 xff0c 然后将一批模型组成的仿真环境保存为一个world文件 xff1a 例如上图所示的场景 xff0c 我们可以从模型库中导入一些模型 xff0c 然后或直接
  • gazebo中视觉仿真怎么使用自定义贴图的问题

    gazebo中提供了很少的贴图 xff0c 场景只是用这几张贴图 xff0c 视觉SLAM仿真很容易在不该闭环的时候闭环 xff0c 导致根本没法用 那么我们怎么添加自己的贴图呢 xff1f 首先gazebo建模 使用默认贴图 xff0c
  • [pixhawk笔记]6-uORB流程及关键函数解析

    本文中将结合代码 文档及注释 xff0c 给出uORB执行流程及关键函数的解析 xff0c 由于uORB的机制实现较为复杂 xff0c 所以本文主要学习如何使用uORB的接口来实现通信 回到上一篇笔记中的代码 xff1a include l
  • Gazebo构建小车模型并通过ROS控制

    Gazebo构建小车模型并通过ROS控制 介绍编写车子的URDF文件编写控制小车移动的插件 与ROS交互 结尾 介绍 突然想试试Gazebo这款仿真软件 xff0c 因为它可以让你在任何时候都有机器人玩 但Gazebo的机制也比较复杂 xf
  • APM(pixhawk)飞控疑难杂症解决方法汇总(持续更新)

    原文链接 xff1a http www nufeichuiyun com p 61 28
  • 三 机器人仿真软件Gazebo介绍

    ROS教程 这是小弟的学习笔记 xff0c 有错求请拍 xff0c 多指教 xff0c 谢谢 三 机器人仿真软件Gazebo介绍 Gazebo功能 1 构建机器人运动仿真模型 在Gazebo里 xff0c 提供了最基础的三个物体 xff0c
  • DroneKit教程(三):连接Pixhawk飞控

    DroneKit教程 xff08 三 xff09 xff1a 连接Pixhawk飞控 DroneKit提供了非常简便的代码 xff0c 可通过多种方式与飞控连接 连接飞控 使用DroneKit中的connect函数 xff0c 可以方便地连
  • ROS学习(2)——rviz与gazebo问题记录

    ROS学习 xff08 2 xff09 rviz与gazebo问题记录 继续按照教程学习 xff0c 踩了很多坑 1 工作环境配置问题 实践6 2 4在rviz中显示模型时 xff0c 运行launch文件出现如下报错 原因 xff1a 出
  • ROS/Gazebo练习2: stack light simulation

    light description urdf light xacro span class token prolog lt xml version 61 34 1 0 34 gt span span class token comment
  • gazebo黑屏打不开world的解决方法

    打开gazebo的时候会发现一直处于黑屏这种状态 xff0c 这是因为model库加载不正确导致的 cd gazebo mkdir p models cd gazebo models wget http file ncnynl com ro
  • Gazebo添加动态障碍物插件及插件配置过程

    1 运行空白环境 43 添加动态障碍物 参考https blog csdn net zyh821351004 article details 128203687 actor标签范围内的模型配置 人会在多点间运动 span class tok
  • ROS Gazebo(三):启动gazebo/URDF

    打开Gazebo的方式主要有两种 xff1a rosrun 和 roslaunch 1 启动ROS节点 启动ROS节点 bring up 机器人的标准工具是roslaunch 打开一个空的Gazebo世界命令如下 xff1a roslaun
  • Pixhawk WIFI模块Station模式配置

    Pixhawk WIFI模块配置 最近在鼓捣Pixhawk的飞控 xff0c 用来控制双桨的无人船 xff0c 固件刷的最新的ArduRover4 0 0 xff0c 经过扒论坛 xff0c 现场调试 xff0c 终于能让一艘船按照航点前行
  • # gazebo 仿真

    gazebo 仿真 1 给 base link 添加惯性 xff0c 碰撞以及 gazebo 属性 在路径xqrobot description urdf xacro 件夹下新建 件夹 gazebo xff0c 并在 gazebo 件下创建
  • ROS--URDF集成Gazebo仿真小车和rviz结合

    ROS URDF集成Gazebo仿真小车 实现流程 需要编写封装惯性矩阵算法的 xacro 文件 为机器人模型中的每一个 link 添加 collision 和 inertial 标签 xff0c 并且重置颜色属性 在 launch 文件中
  • 【Gazebo安装教程】2023年最新安装全流程详解!

    安装 实验环境 ubuntu22 04LTS 安装 Gazebo 首先我们需要安装必须的工具 sudo apt get update sudo apt get install lsb release wget gnupg 之后修改源 并 u
  • URDF、Gazebo与Rviz机器人仿真综合应用-autolabor笔记

    URDF Gazebo与Rviz综合应用 6 7 1 1 机器人运动控制 编写机器人my base xacro 编写传动装置以及控制器move xacro文件 搭建环境world文件 将上述整合进一个car xacro文件 加载惯性矩阵xa

随机推荐

  • smarty 中foreach中iteration变量值就是当前循环次数,在显示序号递增时候用到

    http www justwinit cn post 1594 smarty 中foreach中iteration变量值就是当前循环次数 例子 xff1a lt code gt foreach key 61 key item 61 item
  • 深度学习入门——mini_batch小批量数据提取

    在全部数据中提取出小批量的数据 xff0c 作为全部数据的近似 神经网络的学习也就是针对每个mini batch数据进行学习 span class token comment oding utf 8 span span class toke
  • PUTTY登录ssh报错的问题,

  • 无人机仿真环境搭建-Ubuntu18.04安装PX4固件、ROS、gazebo、mavros

    Ubuntu18 04安装PX4仿真环境 ROS gazebo mavros 本教程就是介绍一下在Ubuntu18 04中安装PX4仿真环境的步骤 xff0c 之前写过一篇文章介绍过在16 04中安装的步骤 xff0c 现在一些环境有变化
  • 无人机仿真-PX4固件编译、3D仿真环境gazebo及offboard模式下控制无人机运动

    无人机仿真 PX4固件编译 3D仿真环境gazebo及offboard模式控制无人机运动 这篇博客讲的是如何使用仿真环境进行无人机的仿真和控制 xff0c 如果还没搭建好仿真环境 xff0c 可以参考我的上一篇博客 xff0c 欢迎点赞和留
  • 深入了解ROS细节之编写简单的消息发布器和订阅器 (C++)、mavros消息发布器和订阅器

    深入了解ROS细节之消息发布器和订阅器 mavros消息发布器和订阅器 编写简单的消息发布器和订阅器 C 43 43 编写发布器节点 节点 Node 是指 ROS 网络中可执行文件 接下来 xff0c 我们将会创建一个发布器节点 talke
  • 深入了解ROS之编写无人机控制程序包

    深入了解ROS之编写无人机控制程序包 这篇教程来详细介绍一下如何编写出一个控制无人机的ROS程序包 编写ROS程序包推荐roboware studio xff0c 这款软件是在开源的vscode基础上二次开发 xff0c 用于ROS程序包的
  • Ubuntu使用apt下载离线安装包

    下面以下载python3 distutils的离线安装包为例 使用apt cache depends python3 distutils查找某个安装包的依赖 使用 apt download 96 apt span class token o
  • Mac虚拟机安装Windows server 2003 及安装组件提示插入软盘、Outlook提示无法连接pop3服务器

    安装server 2003 xff0c 百度MSDN 下载2003 xff0c 进行安装 当安装组件时提示插入软盘的错误 xff0c 需要注意虚拟机是否挂载了2003的镜像 xff0c 如果没有 xff0c 手动挂载 xff0c 然后重新安
  • 渗透测试靶场练习(三)之DC-1

    DC 1 环境搭建就不细述了 xff0c 直接下载VM文件打开即可 xff0c 注意设置好网络下载链接下载 主机发现 使用arp scan l在局域网中查找存活主机 可以知道IP为192 168 24 133的主机为靶机端口扫描 扫描结果显
  • xml文件中 xmlns xmlns:xsi 等解释

    http bbs csdn net topics 390751819 maven 的 pom xml 开头是下面这样的 lt project xmlns 61 34 http maven apache org POM 4 0 0 34 xm
  • 渗透测试之三内网跳板

    搭建内网的转发跳板 当成功控制一个网络中的一台主机后 xff0c 由于后面的主机都在内网中无法访问 xff0c 所以需要在跳板机上搭建代理 xff0c 实现对内网中的其他主机的访问 portfwd是一款强大的端口转发工具 xff0c 支持T
  • 无人机仿真之搭建仿真平台-SITL、gazebo、ROS

    文章目录 无人机仿真之仿真平台搭建前言ardupilot SITL APM飞控安装启动仿真简单仿真结合gazebo仿真软件的3D环境仿真环境安装示例 多无人机仿真 终端操作无人机的部分指令 安装PX4框架 PX4飞控仿真平台搭建完成后 xf
  • 前备 获取stm32的官方SDK并使用

    stm32的SDK是ST为stm32写的一套官方的软件包 xff0c 里面包括一些例程可以作为我们的参考 xff0c 降低我们的学习难度和周期 获取SDK 首先自然是进入官网了 点此进入ST官网 注册什么的我就不说了 下载就ok了 然后是如
  • 前备 正点原子以及野火stm32资料获取

    stm32学习的两个论坛 xff0c 正点原子和野火都为32提供了相应的教程例程 xff0c 普中也有 xff0c 需要的可以自行去官网下载 正点原子 点此链接进入正点论坛下载资料 注册什么的我就不说了 A盘是程序和手册 xff0c B盘是
  • 前备 STM32F103ZET6程序向STM32F103C8T6移植

    因为一些例程都是ZET6或者其它类型的芯片 xff0c 而手上只有一块小巧 xff08 寒酸 xff09 的c8t6 xff0c 所以移植就比较重要了 两芯片的区别 由之前的型号说明可以知道 xff0c c8t6与zet6的区别在于引脚数与
  • 前备 stm32的几种下载程序的方式

    stm32的下载方式我目前接触最多的有三种 xff0c 用串口ISP烧录hex文件 xff0c 用仿真器一键烧录 xff0c 还有那种小白式的bootlaoder固件升级烧录 用转串口模块烧录hex文件 首先要下载一个软件 xff0c 然后
  • 一、PX4官网读

    接触pixhawk好几年了吧 xff0c 这次想开始记录 xff0c 开始正式整理一下自己的学习经过 很多东西在官网上有说明 官网千万看英文 xff0c 不要切换语言 xff0c 很坑 QGC使用 https docs qgroundcon
  • 二、pixhawk光流传感器PX4FLOW

    这东西不好用啊 在官网介绍里我们主要看到这个是关于光流扩展的一般还会有一个声呐传感器 xff0c 就是那个MaxBotix I2CXL MaxSonar EZ这里有介绍 这个超声波传感器得说一下 xff0c 它可以单独通过IIC去链接pix
  • 五、关于pixhawk的仿真,jmavsim和Gazebo

    实物飞总是很麻烦的 xff0c 一个不小心就炸鸡了 所以在仿真环境里去验证是最好的方法 xff0c 我也觉得先艹仿真再艹飞机是很正确的一种方式 先介绍一下jmavsim 官网介绍 前面说的环境搭建好了 xff0c 就可以直接make px4