预告|ROS中超好用固定翼仿真开源平台即将上线!

迅翼计划于年底推出基于ROS环境的固定翼上层仿真开发平台。该平台将采用PX4与Gazebo架构,充分融合ROS、PX4和Gazebo三大生态系统,致力于打造最简便、易用的固定翼上层算法仿真平台。
无论您是初学者,还是正在寻找适合的仿真平台进行算法验证,甚至希望基于此平台完成项目开发,该平台都将成为您可靠、便捷且易于上手的理想选择。当然我们正在寻找一些内测用户,如果您有相关基础,且希望提前使用,请与我私聊。

底层动力学仿真平台

在之前关于导航、制导与控制(GN&C,Guidance, Navigation, and Control)点此跳转的文章中,第1.3节所提到的“控制”特指GN&C系统中偏底层的控制部分,即更倾向于控制理论(Control Theory),主要关注飞行器本身的控制问题。传统的控制理论大多通过数学工具对被控对象的本体进行建模与控制,并深入研究控制律的特性及其适用范围。这部分内容通常被称为底层控制

底层控制仿真的核心在于对飞行器进行六自由度的动力学建模。这种建模需要精确描述飞行器的运动特性,因此在Matlab/Simulink环境中进行仿真是最为方便、直观且高效的方式。这种方法不仅能够准确表达控制系统的动力学特性,还能有效支持底层控制策略的开发与验证。

固定翼上层仿真平台

在点此跳转文章的1.2节(制导)和2.2节(规划)中所涉及的仿真,与前述的底层控制仿真不同,更侧重于上层控制。大多数论文中的仿真或研究通常基于三自由度的简化动力学模型。尽管这种模型能够降低复杂性,但无法达到六自由度动力学仿真的精确特性,因此其结果往往难以真实应用于实际飞行器。

如果希望实现带有六自由度动力学的仿真:

  • 1.2节制导仿真:使用Matlab/Simulink完成六自由度动力学建模和仿真,对于不熟悉固定翼飞行器动力学特性的人员而言,搭建六自由度模型具有一定的难度,需要较强的动力学知识储备和额外的建模工作。
  • 2.2节规划仿真:使用Matlab/Simulink进行规划仿真会进一步增加工作量,不仅需要完整掌握固定翼飞行器知识,还涉及复杂的传感器仿真(如视觉摄像头、激光雷达等),而这些传感器的支持在该环境中几乎不可实现。

因此,我们更推荐在1.2节制导仿真和2.2节规划仿真中使用ROS环境下的PX4+Gazebo仿真平台。这一组合具有以下优势:

  • 支持六自由度动力学仿真:Gazebo内置了多种机型,支持用户对动力学参数进行配置,能够真实模拟飞行器的动态行为。
  • 丰富的传感器仿真:Gazebo可以轻松支持各种传感器(如视觉摄像头、激光雷达等),为规划仿真提供必要的环境支持。
  • 集成化底层控制器:PX4作为成熟的底层控制器,支持多种控制模式,包括作动器直接控制、角速度控制、姿态控制、位置控制和速度控制,可满足任一控制层的需求。
  • 简化开发流程:借助PX4+Gazebo平台,用户无需从零搭建六自由度动力学模型或底层控制逻辑,仅需专注于验证自己的上层算法。这种方式大大减少了开发时间和精力投入。

正因如此,我们选择以上层仿真平台为核心方向,旨在提供更高效、更便捷的工具支持,为用户专注于上层算法研究和验证提供可能。

敢说“最好用”?

本次即将发布的仿真平台将聚焦解决因固定翼无人机欠驱动特性带来的仿真困难,提供多元化上层仿真功能拓展与接口封装,以更好满足固定翼无人机仿真需求。

与四旋翼无人机和无人车等全驱动系统相比,固定翼无人机具有显著的欠驱动动力学特性。具体来说,四旋翼无人机能够在三维空间内自由飞行,控制六个自由度的运动,并且能够调节飞行速度,因此具有很强的灵活性。而无人车虽然不能实现横向平移(除非采用麦克纳姆轮等特殊设计),但它的前进速度可以调节至零,仍具有一定的机动性。与此不同,固定翼无人机一旦起飞,便受到速度和运动自由度的限制:它的飞行需要维持一定的最低速度才能保持升力,同时不能像四旋翼那样实现横向位移或直接的定点悬停。简单来说,固定翼无人机的运动受限于最低速度要求,并且无法像全驱动系统一样在所有方向上自由移动。

为了解决这些问题,我们在MAVROS的基础上,针对固定翼无人机的上层仿真进行了以下功能扩展和接口封装:

  • 高度控制:在原生姿态控制的基础上集成了TECS控制器
  • 横向控制:采用导航向量场计算期望飞行方向,并在此基础上设计了偏航控制器
  • 灵活输入支持:支持直接以期望飞行矢量作为输入进行控制;
  • 无人机类封装:封装了固定翼、垂直起降固定翼等多种机型的常用话题订阅与发布接口
  • 工具类支持:提供常用的PID控制器类模板,以及地理坐标转换姿态转换等实用函数。

以上封装提升了仿真平台的适用性与开发效率,更好地满足了固定翼无人机的仿真需求。

已有的demo

我们已经实现一些可供大家快速上手的demo演示:

  • 基于导航向量场方法的轨迹跟踪方法

    • demo演示:圆形轨迹

      圆形轨迹跟踪

    • demo演示:螺旋上升

      螺旋上升

    • demo演示:圆柱面与斜面交线

      圆柱面与斜面交线

  • 基于无奇异点导航向量场方法的轨迹跟踪方法

    • demo演示:李萨如曲线

      李萨如曲线

    • demo演示:多项式轨迹(多项式轨迹,轨迹可自定义)

      多项式轨迹

  • 基于LQR控制器的多机leader-follower编队飞行控制

    • demo演示:多机编队(折线轨迹,轨迹可自定义)

      多机编队

后续待发布

  • 基于向量场的固定翼无人机避障
  • 基于无奇异点导航向量场的多无人机编队飞行控制

在单无人机轨迹跟踪上,我们实现了导航向量场和无奇异点导航向量场的轨迹跟踪方法。相较于传统方法,理论上此类方法跟踪精度更高、跟踪代价更小;此外,此类方法计算代价极小,可应用于单片机等低算力平台。

在多无人机轨迹跟踪上,我们创新性的将导航向量场用于了多无人机编队和轨迹跟踪。该方法具有以下优势:

  • 灵活性与精度:相较于传统轨迹跟踪方法,帮助您实现灵活的期望轨迹设计和更精准的跟踪效果;
  • 分布式协调:采用一致性算法进行机间协调。相较于leader-follower这类集中式策略,所采用的分布式策略鲁棒性强、可扩展性好,具有强的应用前景
  • 低通信压力:仅涉及参数的一致性。机间通信信息为自身虚拟坐标,也就意味着仅需要对一个数字进行一致性即可实现三维空间中的编队,相较于传统一致性编队方法通信压力少。

这一系列改进不仅提升了单机与多机的轨迹跟踪性能,也为低算力平台和实际应用提供了高效可行的解决方案。

总结

综上所述,我们的仿真平台已基本具备仿真开发与验证的完整功能,并且完全开源开源!开源!

如果您是以下应用场景:

  • 科研与教学: 高校和研究机构可使用该平台进行算法研究与教学实验;
  • 项目开发: 企业可将其用于快速验证部署制导、规划算法;
  • 个人开发者: 兴趣开发者和无人机爱好者也能快速上手,进行探索和学习。

我们希望这个平台将成为您进行固定翼上层仿真的最佳选择。

如果您对此感兴趣,并希望参与内测,欢迎随时私聊联系我们!未来,我们还将持续优化与扩展,计划适配支持ROS2Ardupilot等更多底层飞控的功能。同时,明年我们预计推出可用于验证上层算法的实物固定翼飞机,敬请期待!

迅翼,让固定翼飞行更自由!

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

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

相关文章

【Reinforcement Learning】强化学习下的多级反馈队列(MFQ)算法

📢本篇文章是博主强化学习(RL)领域学习时,用于个人学习、研究或者欣赏使用,并基于博主对相关等领域的一些理解而记录的学习摘录和笔记,若有不当和侵权之处,指出后将会立即改正,还望谅…

103.【C语言】数据结构之TopK问题详细分析

目录 1.定义 2.实现 一个容易想到的方法 稍微改进的方法 最优的方法 分析方法的可行性 取出无序数组的取出前K个元素有几种可能 1.取的全是非TopK个元素中的 2.取的前K个既有非TopK个元素也有TopK个元素 3.取的前K个q恰为TopK个元素 代码实现 步骤 TestTopK代码 …

国土变更调查拓扑错误自动化修复工具的研究

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 目录 一、拓扑错误的形成原因 1.边界不一致 2.不规则图形 3.尖锐角 4.局部狭长 5.细小碎面 6.更新层相互重叠 二、修复成果展示 1.边界不一致 2.不规则图形 3.尖锐角 4.局部狭…

【C++ 算法进阶】算法提升二十三

目录 左右数组相减绝对值最大值 (题意代换)题目题目分析 可整合数组 (题意代换)题目题目分析代码 水王问题题目题目分析代码水王问题变形思路讲解 合并石头的最低成本 (动态规划)题目题目分析代码 左右数组…

质量留住用户:如何通过测试自动化提供更高质量的用户体验

在当今竞争异常激烈的市场中,用户手头有无数种选择,但有一条真理至关重要: 质量留住用户。 产品的质量,尤其是用户体验 (UX),直接决定了客户是留在您的品牌还是转而选择竞争对手。随着业务的发展,出色的用户…

Redis 可观测最佳实践

Redis 介绍 Redis 是一个开源的高性能键值对(key-value)数据库。它通常用作数据库、缓存和消息代理。Redis 支持多种类型的数据结构,Redis 通常用于需要快速访问的场景,如会话缓存、全页缓存、排行榜、实时分析等。由于其高性能和…

idea怎么打开两个窗口,运行两个项目

今天在开发项目的时候,前端希望运行一下以前的项目,于是就需要开两个 idea 窗口,运行两个项目 这里记录一下如何设置:首先依次点击: File -> Settings -> Appearance & Behavior ->System Settings 看到如…

加速科技精彩亮相中国国际半导体博览会IC China 2024

11月18日—20日,第二十一届中国国际半导体博览会(IC China 2024)在北京国家会议中心顺利举办,加速科技携重磅产品及全系测试解决方案精彩亮相,加速科技创始人兼董事长邬刚受邀在先进封装创新发展论坛与半导体产业前沿与…

JSON 性能测试 - WastJson 性能也很快

WAST 是一个高性能 Java 工具集库包,包括 JSON、YAML、CSV、HttpClient、JDBC 和 EL 引擎. WastJson 无论是小中大文本各种数据类型等性能都没有明显的短板,除了推广外可以说是六边形战士,更多测试参考 wast-jmh-test: wast性能测试 (并非所…

【小白学机器学习34】用python进行基础的数据统计 mean,var,std,median,mode ,四分位数等

目录 1 用 numpy 快速求数组的各种统计量:mean, var, std 1.1 数据准备 1.2 直接用np的公式求解 1.3 注意问题 1.4 用print() 输出内容,显示效果 2 为了验证公式的后背,下面是详细的展开公式的求法 2.1 均值mean的详细 2.2 方差var的…

视频推拉流EasyDSS互联网直播点播平台技术特点及应用场景剖析

在数字科技日新月异的今天,视频直播和点播已经成为互联网内容传播的重要方式之一。而互联网直播点播平台EasyDSS作为功能强大的流媒体直播点播视频能力平台,提供了一站式的视频推拉流、转码、直播、点播、时移回放、存储等视频服务,广泛应用于…

【测试工具JMeter篇】JMeter性能测试入门级教程(一)出炉,测试君请各位收藏了!!!

一、前言 Apache JMeter是纯Java的开源软件,最初由Apache软件基金会的Stefano Mazzocchi开发,旨在加载测试功能行为和测量性能。可以使用JMeter进行性能测试,即针对重负载、多用户和并发流量测试Web应用程序。 我们选择JMeter原因 是否测试过…

ffmpeg视频滤镜:提取缩略图-framestep

滤镜描述 官网地址 > FFmpeg Filters Documentation 这个滤镜会间隔N帧抽取一帧图片&#xff0c;因此这个可以用于设置视频的缩略图。总体上这个滤镜比较简单。 滤镜使用 滤镜参数 framestep AVOptions:step <int> ..FV....... set frame st…

Spring源码(十三):Spring全系列总结

Spring总结篇,不同于之前抽丝剥茧式地纵向深入源码,本次从横向的角度出发,希望可以带个读者一个完全不同的Spring视角。 2024年重置版,搞点不一样的东西。希望通过本篇的内容,将之前的文章全部给串起来。 相关前文: Spring Boot启动加载Spring Web请求处理流程Spring上…

【AIGC】如何准确引导ChatGPT,实现精细化GPTs指令生成

博客主页&#xff1a; [小ᶻ☡꙳ᵃⁱᵍᶜ꙳] 本文专栏: AIGC | 提示词Prompt应用实例 文章目录 &#x1f4af;前言&#x1f4af;准确引导ChatGPT创建爆款小红书文案GPTs指令案例&#x1f4af; 高效开发GPTs应用的核心原则明确应用场景和目标受众构建多样化风格模板提问与引…

电影风格城市夜景旅拍Lr调色教程,手机滤镜PS+Lightroom预设下载!

调色教程 电影风格城市夜景旅拍通过 Lightroom 调色&#xff0c;将城市夜晚的景色打造出如同电影画面般的质感和氛围。以独特的色彩和光影处理&#xff0c;展现出城市夜景的魅力与神秘。 预设信息 调色风格&#xff1a;电影风格预设适合类型&#xff1a;人像&#xff0c;街拍…

拥抱极简主义前端开发:NoCss.js 引领无 CSS 编程潮流

在前端开发的世界里&#xff0c;我们总是在不断追寻更高效、更简洁的方式来构建令人惊艳的用户界面。而今天&#xff0c;我要向大家隆重介绍一款具有创新性的工具 ——NoCss.js&#xff0c;它将彻底颠覆你对传统前端开发的认知&#xff0c;引领我们进入一个全新的无 CSS 编程时…

【JavaEE初阶】多线程初阶下部

文章目录 前言一、volatile关键字volatile 能保证内存可见性 二、wait 和 notify2.1 wait()方法2.2 notify()方法2.3 notifyAll()方法2.4 wait 和 sleep 的对比&#xff08;面试题&#xff09; 三、多线程案例单例模式 四、总结-保证线程安全的思路五、对比线程和进程总结 前言…

使用 前端技术 创建 QR 码生成器 API1

前言 QR码&#xff08;Quick Response Code&#xff09;是一种二维码&#xff0c;于1994年开发。它能快速存储和识别数据&#xff0c;包含黑白方块图案&#xff0c;常用于扫描获取信息。QR码具有高容错性和快速读取的优点&#xff0c;广泛应用于广告、支付、物流等领域。通过扫…

vxe-modal VxeUI 窗口组件弹窗多窗口模式

VxeUI 实现在 vue 中使用弹窗组件&#xff0c;弹窗多个窗口可叠加&#xff0c;实现多实例的窗口组件。 npm install vxe-pc-ui4.3.6// ...import VxeUI from vxe-pc-uiimport vxe-pc-ui/lib/style.css// ...createApp(App).use(VxeUI).mount(#app)// ...官网&#xff1a;https…