仿真算法验证成功后,如何快速实现真机无缝切换?

Prometheus仿真优势

首先,我们先通过下面这个视频了解一下Prometheus仿真有哪些优势:

开源自主无人机平台重大更新!Promethus仿真到真机无缝切换

Prometheus仿真最大的优势之一是采用了模块化设计,对每个操作节点进行了封装,使得仿真到真机可做到无缝移植,开发者无需进行额外修改和适配就可到真机上运行。

大部分开发者在二次开发过程中往往更专注于算法研究,对PX4、Mavros和程序连接等并不太熟悉。为了简化开发者的二次开发难度,我们对Prometheus进行了简化流程,使得开发者无需对底层控制系统进行修改即可实现仿真与真机之间的无缝切换。

Prometheus仿真流程

图片

通过这四步完成控制仿真,相应“惯性系控制”,“机体系控制”,“经纬高控制”,“轨迹控制”,前三步不变,只是修改了第四步相应控制指令文件。

图片

图片

图片

图片

对于仿真控制二次开发,只需要保证前三部分正常运行,在第四部分控制指令程序做修改便可以,这里就可以通过对于”uav_control话题“相关订阅与发布实现相应功能。     

Prometheus Demo实机飞行

当开发者二次开发自己的程序或者只是想要将仿真demo实机飞行,以P600进阶版无人机为例,首先无人机开机自启动通信程序”roslaunch prometheus_communication_bridge P600_communication.launch“(即“P600_communication.launch”);然后当地面站通过图数传链路IP连接无人机,无人机执行“roslaunch prometheus_uav_control P600_onboard.launch”(即“P600_onboard.launch”)。

而在“P600_onboard.launch”中主要做了下面四个步骤:

1、启动MAVROS连接飞控

2、设置PX4飞控相关参数

3、运行uav_control控制程序

4、加载uav_control_outdoor.yaml参数文件

最后地面站发送控制指令实现对于无人机控制。其中逻辑也是四个步骤:

1、P600_communication.launch:通信连接

2、P600_onboard.launch:连接飞控PX4

3、P600_onboard.launch:启动uav_control模块

4、Prometheus地面站:发布控制指令

将仿真流程和实机飞行流程进行对比时会发现,两者的四个操作步骤流程是一样的原理,不同的是:

1、通信连接中,仿真是虚拟连接,真机是真实连接。

2、飞控连接中,仿真是连接虚拟飞控prometheus_px4,真机是连接真机飞控PX4。

3、控制模块中,仿真是启动仿真电脑Prometheus:uav_control,真机是启动机载电脑Prometheus:uav_control。

4、控制程序中,仿真是launch运行,真机是Prometheus地面站发布。

由此可见,要将控制demo应用于实机非常简单,以“起飞降落demo”为例:只需要在真机运行前操作开机启动通信(具体步骤为:地面站连接无人机使得P600_onboard.launch运行、连接飞控PX4、启动uav_control模块),然后在机载电脑中运行takeoff_land.launch便可以了。

图片

如果您对Prometheus仿真的具体过程感兴趣,请点击下方链接查看:

阿木实验室icon-default.png?t=N7T8https://docs.amovlab.com/Prometheus_Simulation_Development_Kit_wiki/#/src/Prometheus%E4%BB%BF%E7%9C%9F/Prometheus%E4%BB%BF%E7%9C%9F

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/835002.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

影刀进行shopee商品排名零代码爬取

需要研究shopee平台的排名更新时间段和周期,几分钟用影刀写了一个爬取应用,每10分钟进行一次排名爬取(以fan‘风扇’为例),0代码爬取。 打开’fan’关键词搜索网页;等待网页加载;滚动进一步加载…

如何使用Python为Excel文件添加预设文档属性和自定义文档属性

向Excel文件添加文档属性是专业地组织和管理电子表格数据的关键步骤。这些属性,如标题、作者、主题和关键词,增强了文件的元数据,使得在大型数据库或文件系统中跟踪、排序和搜索文档变得更加容易。通过包含这些信息,您不仅提高了文…

太牛了!360大佬编写的《应急响应指导手册》火了!(PDF限时3天领取)

免责声明: 请使用者遵守《中华人民共和国网络安全法》,由于传播、利用本账号所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,公众号及作者不为此承担任何责任。 简介 这份《应急响应指导手册》&#xf…

CSS跳动文字

<div class"loading-mask"><div class"loading-text"><span style"--i:1">加</span><span style"--i:2">载</span><span style"--i:3">中</span><span style"--i:…

android进阶-AIDL

参考&#xff1a;Android进阶——AIDL详解_android aidl-CSDN博客 AIDL&#xff08;Android 接口定义语言&#xff09;&#xff0c;可以使用它定义客户端与服务端进程间通信&#xff08;IPC&#xff09;的编程接口&#xff0c;在 Android 中&#xff0c;进程之间无法共享内存&…

Word设置代码块格式

前言 Word中无法像Markdown和LaTeX一样插入代码块&#xff0c;若要在Word中插入代码块可以手动设置代码块格式或自动粘贴代码块格式。若不追求完美高亮效果&#xff0c;可使用前者方案&#xff1b;若追求完美的高亮效果&#xff0c;可使用后者方案。下文介绍这2种方案。 手动…

C++ 多态的相关问题

目录 1. 第一题 2. 第二题 3. inline 函数可以是虚函数吗 4. 静态成员函数可以是虚函数吗 5. 构造函数可以是虚函数吗 6. 析构函数可以是虚函数吗 7. 拷贝构造和赋值运算符重载可以是虚函数吗 8. 对象访问普通函数快还是访问虚函数快 9. 虚函数表是什么阶段生成的&…

华为 Huawei 交换机 配置 Dot1q 终结子接口实现同设备 VLAN 间通信示例

组网需求 企业的不同部门拥有相同的业务&#xff0c;如上网、 VoIP 等业务&#xff0c;且各个部门中的用户位于不同的网段。目前存在不同的部门中相同的业务所属的VLAN 不相同&#xff0c;现需要实现不同VLAN中的用户相互通信。 如 图 7-7 所示&#xff0c;部门 1 和部门 2 中…

【拼多多笔试题汇总】2024-05-09-拼多多春招笔试题-三语言题解(Cpp/Java/Python)

&#x1f36d; 大家好这里是清隆学长 &#xff0c;一枚热爱算法的程序员 ✨ 本系列打算持续跟新拼多多近期的春秋招笔试题汇总&#xff5e; &#x1f4bb; ACM银牌&#x1f948;| 多次AK大厂笔试 &#xff5c; 编程一对一辅导 &#x1f44f; 感谢大家的订阅➕ 和 喜欢&#x1f…

常见物联网面试题详解

物联网一直是非常火热的行业&#xff0c;G端如智慧城市、智慧工厂、智慧园区、智慧水利、智慧矿山等行业&#xff0c;都会涉及到物联网&#xff0c;基本都是软硬一体&#xff0c;因此当面试相关企业时&#xff0c;物联网平台是面试企业重点考察的项&#xff0c;小伙伴如果从事相…

前端使用Compressor.js实现图片压缩上传

前端使用Compressor.js实现图片压缩上传 Compressor.js官方文档 安装 npm install compressorjs使用 在使用ElementUI或者其他UI框架的上传组件时&#xff0c;都会有上传之前的钩子函数&#xff0c;在这个函数中可以拿到原始file&#xff0c;这里我用VantUI的上传做演示 a…

财务管理|基于SprinBoot+vue的财务管理系统(源码+数据库+文档)

财务管理系统 目录 基于SprinBootvue的财务管理系统 一、前言 二、系统设计 三、系统功能设计 系统功能实现 1管理员功能模块 2员工功能模块 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取&#xff1a; 博主介绍&#xff1…

Docker快速搭建NAS服务——NextCloud

Docker快速搭建NAS服务——NextCloud 文章目录 前言NextCloud的搭建docker-compose文件编写运行及访问 总结 前言 本文主要讲解如何使用docker在本地快速搭建NAS服务&#xff0c;这里主要写如下两种&#xff1a; FileBrowser1&#xff1a;是一个开源的Web文件管理器&#xff…

idea运行项目报错提示:java: 错误: 不支持发行版本 19,让我来看看

在项目经常切换jdk时&#xff0c;这个error经常能遇到“不支持发行版本19”&#xff0c;这个问题修改起来其实很简单&#xff0c;但在真正操作到能够解决问题的那一步前&#xff0c;通常习惯先去查看配置的jdk版本是否是选择正确的&#xff0c;也就是先确认当前这个项目选择的j…

西湖大学英语听力考试音频无线发射系统-英语听力发射系统浅析

西湖大学英语听力考试音频无线发射系统-英语听力发射系统浅析 由北京海特伟业科技任洪卓发布于2024年5月10日 西湖大学&#xff0c;这所矗立于时代前沿的高等学府&#xff0c;始终秉持着创新精神和追求卓越的坚定信念&#xff0c;不断致力于教学质量的提升与学术研究的深化。其…

实体门店超-常规营销获客:218套落地方案/打造引流/锁客/复购/裂变营销

课程内容&#xff1a; 1 记住&#xff0c;生意不好不一定是你产品出了问题,mp4 2 生意人为什么要从产品思维向流量思维转型&#xff0c;社区超市每月多5万.mp4 3 实体老板不懂鱼塘理论只能等死&#xff0c;美业1招锁定275名年用户卡,mp4 4 餐饮赢销八部&#xff0c;帮你引爆…

MathType2024官方版数学公式编辑器功能全面介绍

在数字化学习和科研的浪潮中&#xff0c;数学公式的编辑与展示成为了不可或缺的一部分。MathType&#xff0c;作为一款专业的数学公式编辑器&#xff0c;凭借其强大的功能和便捷的操作&#xff0c;为科研人员、教师、学生等广大用户提供了极大的便利。下面&#xff0c;我们将对…

【Linux】模拟实现bash(简易版)

&#x1f466;个人主页&#xff1a;Weraphael ✍&#x1f3fb;作者简介&#xff1a;目前正在学习c和算法 ✈️专栏&#xff1a;Linux &#x1f40b; 希望大家多多支持&#xff0c;咱一起进步&#xff01;&#x1f601; 如果文章有啥瑕疵&#xff0c;希望大佬指点一二 如果文章对…

视频号小店应该如何开店呢?详细的开店流程分享给你!

大家好&#xff0c;我是电商小V 视频号小店就是威信视频号团队为咱们商家提供的卖货平台&#xff0c;可以说是支持咱们商家在视频号场景中开店进行经营的模式&#xff0c; 视频号大概的开店流程那就是&#xff1a;找到视频号开店&#xff0c;选择企业入驻&#xff0c;填写信息&…

5.9代码

1.选素数 从数学来看&#xff0c;n素数*k,k2,3,4...&#xff0c;而我们要进行两次&#xff0c;由于有多个解时我们要选最小的&#xff0c;所以要找到最大的素数&#xff0c;但是这个最大素数要小于等于n/2的整数&#xff0c;然后中间那一次的n的选择要选比最大素数大的最少的合…