【RflySim学习笔记】1.RflySim的绪论

目录

文章目录

  • 目录
  • 1.RflySim 平台背景
  • 2.RflySim 平台特点
  • 3.RflySim 平台核心组件介绍
    • 3.1 CopterSim
    • 3.2 RflySim3D/RflySimUE5
      • UE引擎:
      • RflySim3D/RflySimUE5
    • 3.3 QGroundControl地面站
    • 3.4 Python38Env
    • 3.5 MATLAB自动代码生成工具箱
    • 3.6 SITL/HITL批处理脚本
    • 3.7 PX4 Firmware源码
    • 3.8 Win10WSL子系统
    • 3.9 Simulink集群控制接口
    • 3.10 RflySim配套资料文件
    • 3.11 配套硬件系统
  • 4.RflySim 平台主要功能介绍
    • 4.1 飞控底层开发功能
    • 4.2 无人载具系统统一建模框架
    • 4.3 无人系统仿真场景开发功能
    • 4.4 无人系统视觉控制开发功能
    • 4.5 无人系统集群控制开发功能
    • 4.6 无人协同控制决策算法设计功能
    • 4.7 分布式网络通讯模块
  • 5.RflySim 平台未来功能预览
    • 5.1 兼容ROS的顶层视觉/决策算法开发
    • 5.2 无人系统故障建模与注入开发
    • 5.3 无人系统安全、健康评估系统开发
    • 5.4 基于FPGA实时仿真系统开发
    • 5.5 RflySim Cloud产品简介

1.RflySim 平台背景

​ 智能无人系统是一个复杂系统,涉及机械、控制、计算机、通信和材料等多个领域技术,而 AI 无疑是开发 IUS 所需的关键技术之一。

​ 目前,智能无人系统主要包括自动驾驶汽车、无人机、面向服务的机器人、智能工业机器人、太空机器人、航海机器人以及无人车间/智能工厂。

​ 智能无人系统开发和测试通常分为基于实验基于仿真。基于实验的开发和测试虽然很直接,但是存在安全、空间、时间和成本等诸多痛点,以上痛点对于集群飞行测试更“痛”。基于仿真的开发和测试

需要建立无人系统的数学模型,围绕模型进行开发和测试,最终回到真实的无人系统。对于基于仿真的开发和测试,痛点在于如何建立合理的模型。这导致传统仿真不真,而真的又太贵。

image-20240702214822950

image-20240702214829642

​ 典型的无人智能体集群协同控制仿真到实验全流程、全模块的系统架构为:

  1. 无人智能体系统的设计与搭建
  2. 通讯系统的设计与搭建
  3. 定位系统的搭建与设计
  4. 导航与运动控制系统的搭建与设计
  5. 载荷系统的搭建与设计
  6. 任务规划系统的搭建与设计
  7. 地面站综合控制系统的搭建与设计等

image-20240702215007391

目前大多数高校和科研院所在开展多智能体协同控制相关研究领域时,往往存在以下困难:

  1. 整个平台设计工具链复杂庞大,从零开始搭建费时费力
  2. 缺乏系统性的平台搭建力量,研究初期,人员精力被消耗在非核心研究职责方向上;
  3. 现有各分散的软硬件存在使用标准、软件接口、通讯协议不统一,相关源码不开放,学习掌握和二次开发难度较大。
  4. 部分开源平台,服务支撑能力不足,无法满足本土科研需求。

2.RflySim 平台特点

  1. 北航可靠飞行控制组发布的生态系统或工具链
  2. 全权教授指导,戴训华博士主导开发
  3. 卓翼智能旗下的飞思实验室接管和推动高级功能的开发
  4. 专为无人平台控制系统开发、大规模集群协同、人工智能视觉等前沿研究领域研发的一套高可信度的无人控制系统开发、测试与评估平台
  5. 基于模型(MBD)的设计理念
  6. 基于 Pixhawk/PX4、MATLAB/Simulink 和 ROS 等以及货架智能硬件等,可开展:
    1. 无人智能体控制的仿真与实飞/运动
    2. 无人智能体集群的仿真与实飞/运动
    3. 基于无人智能体视觉的仿真与实飞/运动
  7. 针对上述问题得研究时,可开展:
    1. 无人系统建模
    2. 控制器设计
    3. 软件在环仿真(Software-In-the-Loop,SIL)
    4. 硬件在环仿真(Hardware-In-the-Loop,HIL)
    5. MATLAB/Simulink 的自动代码生成技术

image-20240702215548757

根据各仿真平台特性如上表所示,将各平台对比如主要有以下特点:

  1. 无人机物理特性仿真还原度高。
  2. 完全分布式构架。
    1. 所有应用软件都可以在同一台或多台电脑上多开,
    2. 并且各个应用之间可以通过 UDP 网络相互收发消息,
    3. 这种分布式的构架非常适合于大规模带视觉的无人机集群仿真测试
  3. 支持多种机型仿真。
  4. 支持无人机集群仿真。
    1. 在同一局域网下,开发者可以使用 CopterSim 连接多个 Pixhawk 进行硬件或软件在环仿真。
    2. 同时,还可以使用 Simulink 或者 C++程序控制飞行器,
    3. 控制指令会由 Mavlink 协议经过串口(数传)或者网络(WIFI)发送给 Pixhawk;
  5. 提供高逼真的 3D 视景。
  6. 支持基于视觉的控制。
  7. 支持多种故障注入。

3.RflySim 平台核心组件介绍

image-20240702222133846

​ RflySim 平台包含了众多在进行无人系统建模、仿真、算法验证等开发过程中所涉及到的软件,其中,核心组件有:

  1. CopterSim
  2. QGroundControl
  3. RflySim3D/RflySimUE5
  4. Python38Env
  5. Win10WSL 子系统
  6. SITL/HITLRun 一键运行脚本
  7. MATLAB 自动代码生成工具箱
  8. Simulink 集群控制接口
  9. PX4 Firmware 源码
  10. RflySim 配套资料文件以及配套硬件系统

3.1 CopterSim

image-20240702222421159

​ CopterSim 是 RflySim 平台核心软件之一,它是针对 Pixhawk/PX4 自驾仪平台开发的一款硬件在环仿真软件,可以在软件中配置多旋翼的模型,通过 USB 串口与 Pixhawk 自驾仪连接来实现硬件在环仿真,达到室内模拟室外飞行测试的效果。

[!NOTE]

是不是主要通过配置上述硬件内容,来获得一个用于仿真的模型参数?

​ 主要由两大部分组成—模型通信:

模型:

  1. 模型是指可根据所设置的模型参数,进行计算后直接就可进行仿真;
  2. 支持运行动态模型(DLL),并连同其他软件构成软/硬件在环仿真

通信:

  1. CopterSim 是所有数据通信的中心
  2. 飞控与 CopterSim 通过**串口(硬件在环 HITL)网络 TCP/UDP(软件在环 SITL)**进行连接
  3. 使用 MAVLink 进行数据传输,实现控制闭环,模拟室外飞行情形;

image-20240702222915272

​ CopterSim 发送飞机位姿、电机数据三维引擎,实现可视化展示;转发 MAVLink 消息到 Python 视觉或 QGC 地面站,传输飞机实时状态,实现顶层规划控制;等等。

​ 同时,CopterSim 软件对 MAVLink 数据进行压缩后以 UDP 结构体形式发给集群控制软件,达到通信精简目的(大规模集群需求)。

3.2 RflySim3D/RflySimUE5

UE引擎:

  1. Unreal Engine 具有强大的图形引擎,支持高品质的3D图形和视觉效果
  2. 蓝图可视化脚本系统可以使用图形化的方式来创建复杂的逻辑和交互行为,而无需编写代码
  3. 拥有庞大的社区支持和资源库,包括模型、纹理、音效、插件等等,
  4. 支持多个平台,包括 PC、主机、移动设备和虚拟现实设备等等
  5. 以根据自己的需求来自定义和扩展引擎的功能和工具

RflySim3D/RflySimUE5

  1. RflySim3D/RflySimUE5 是基于 Unreal Engine 引擎开发的无人系统高逼真仿真软件,继承了 Unreal Engine 引擎的各种优势。
  2. 通过 UDP 的形式与平台其他软件进行通信,实现高逼真的无人系统仿真,
  3. 同时,可通过屏幕抓取、共享内存等方式将视觉图像数据传输到QGroundControl、MATLAB、Python 等软件,实现无人系统的视觉算法验证仿真,如图 12 所示。

​ 同时,针对电脑配置较低的用户,RflySim 平台提供另两种三维仿真软件,分别为:FlightGear3DDisplay

FlightGear 的开发团队来自世界各地,包括程序员、飞行员、物理学家和飞机制造商等领域的专家,提供了多种不同类型的飞机模型和场景,包括各种民用和军用飞机模型,以及多种不同的场景和环境模拟。它是一款非常受欢迎的开源飞行模拟器软件,可以通过 UDP 接收 Simulink 发送的飞行状态,方便地观测 Simulink 仿真时飞机的飞行状态。

3DDisplay 是由北航可靠飞行控制研究组开发的虚拟飞行模拟器软件,提供了三维模型和虚拟环境,支持多种飞机模型和场景。用户可根据个人电脑的配置情况,自由切换 RflySim3D/RflySimUE5、FlightGear、3DDisplay 三款仿真软件。

3.3 QGroundControl地面站

​ 无人机地面站是无人机应用控制系统的关键组成部分,操作员可以通过鼠标、触摸屏、遥控手柄操作地面站以达到控制无人机的目的,并且通过在地面站上设定航点信息以及规划航线,可以使无人机按照预设的路径飞行,并在飞行途中完成航点任务,包括拍照,飞机动作,录像等。

​ 主流开源地面站为 QGroundControl 和 MissionPlanner

​ QGroundControl 是专为 PX 4 软件最新架构的开源地面站,其使用 QT 编辑器 C++语言编写其核心代码,其支持源代码修改和功能二次开发,即适合无人机地面站研究实验也适合无人机地面站功能的定制及修改。

​ 相比来说 QGroundControl 的优势有:

  1. 开源性:
    1. QGroundControl 是一个完全开源的软件,这意味着用户可以根据需要自由修改和定制它。
  2. 易用性:
    1. 用户界面非常清晰、现代化和易于使用,使用户可以快速进行任务规划和飞行计划。
  3. 多平台支持:
    1. QGroundControl 可在多种操作系统上运行,如 Windows、Linux 和 MacOS 等。
  4. 模块化架构:
    1. QGroundControl 的模块化架构使得开发人员可以轻松地添加和扩展新功能,而不会影响到现有的功能和性能。

​ 总体而言,QGroundControl 是一个现代化、易于使用、开源且高度可定制的地面站软件,它在多平台支持、多语言支持、模块化架构等方面具有明显的优势。

3.4 Python38Env

​ Python38Env 是一个 Python 3.8 的编程语言的虚拟环境,包含了 numpy、pymavlink、OpenCV、pyulog 等库,可快速进行无人系统的相关算法开发,无需用户部署 python 运行环境和各种功能库

3.5 MATLAB自动代码生成工具箱

​ MATLAB 自动代码生成工具箱是一个 MATLAB 的扩展工具包,用于从 Simulink 模型中生成 C 代码、可执行文件、静态库和动态库等各种形式的可执行文件。

​ 这些可执行文件可以直接在嵌入式平台上运行,而不需要进行手动编写和调试。支持多种嵌入式平台,包括 ARM Cortex-M 和 A 系列处理器、NXP MPC55xx 和 MPC56xx 系列、Pixhawk 系列等。

​ 该模块库中包含 GPS 数据模块电池数据模块uORB 模块等众多模块。

​ 基于 RflySim 和 Pixhawk Support Package 平台,用户可实现:

​ ① 在 Simulink 中设计和模拟控制算法

​ ② 从 Simulink 模型自动生成 C 代码和 PX4 固件,并将其直接烧录到 Pixhawk 板上;

​ ③ 使用 MATLAB 脚本和函数配置和校准 Pixhawk 板及其外围设备

​ ④ 实时读写与 Pixhawk 板的数据

3.6 SITL/HITL批处理脚本

​ 批处理技术是指计算机可分组处理收集到的若干任务,整个过程完全自动化,无需人工干预,这也可以称为工作负载自动化 (WLA)作业调度。它具有速度和成本节约、准确性、操作简单等优点。

​ RflySim 基于批处理技术开发了众多批处理脚本,让用户可以快速一键启动部署多架、多种、多样无人系统组合式仿真。提高了无人系统开发和仿真速度。平台较常用的批处理脚本

  1. ① SITLRun.bat:
    1. 开启多机软件在环仿真的批处理文件
    2. 其本质上是通过脚本方式启动并配置 RflySim 平台的部分软件和选项
  2. ② HITLRun.bat:
    1. 开启多机硬件在环仿真的批处理文件
    2. 根据提示输入想要参与仿真的 Pixhawk 串口号
    3. 开启多机的硬件在环仿真
  3. ③ 除此之外 RflySim 平台还提供众多批处理脚本文件:
    1. SITLRunPos.bat
    2. SITLRunLowGPU.bat
    3. SITLRunMAVLink.bat
    4. HITLRunPos.bat
    5. HITLPosSysID.bat
    6. HITLPosStr.bat

​ 用户可通过编辑器打开这些文件,根据个人需求修改其中的参数,实现自定义开发,快速开始仿真或算法的验证。

3.7 PX4 Firmware源码

​ PX4 由瑞士苏黎世联邦理工学院(ETH)计算机视觉与几何实验室的一个软硬件项目 PIXHAWK 演变而来,该飞控完全开源,为全球各地的飞控爱好者和研究团队提供一款低成本高性能的高端自驾仪。

​ RflySim 平台支持一键部署 PX4 编译环境,可自定义选择不同的 PX4 固件编译命令和固件版本

平台会将选定的 PX4 Firmware 源代码部署在设定的安装路径上,如果固件存在,会删除旧的固件文件夹,并进行全新部署,极大的提高了PX4 环境部署的效率。

3.8 Win10WSL子系统

Win10WSL 子系统是一种 Windows 操作系统上的子系统:

  1. 用户可在 Windows 系统中运行 Linux 应用程序
  2. 使用 Linux 命令行界面(CLI)并安装 Linux 发行版
  3. RflySim 平台一键安装的 Linux 系统为 Ubuntu18.04.5,主要是用于 PX4 源代码的编译

本平台还提供另两套编译环境来实现 Windows 平台下对 Linux 编译环境的模拟:

  1. 基于 Msys2 的 Msys2Toolchain 编译环境
  2. 基于 Cygwin 的 CygwinToolchain 编译器

用户可根据自己的 PX4 版本选择不同的编译环境,且在一键部署安装界面不同的选择即可完成不同编译环境的切换。

3.9 Simulink集群控制接口

image-20240703085114885

​ RflySim 平台基于 Simulink S 函数开发了集群控制接口,如上图所示,该接口是通过 Simulink S 函数通过 C++混编实现,配合 Simulink 自带的 UDP 模块优点,具有效率高、运算小、延迟低、更可靠、扩展性强等优点。

​ 用户可通过复制粘贴的方式,将该模块加载到自己的控制系统中,帮助用户快速实现无人系统集群控制开发。

3.10 RflySim配套资料文件

​ RflySim 平台提供非常完善的学习资料及例程文件,通过 PPT 课件资料和 RflySimAPIs 例程文件,使用户循序通过渐进、层层递进的学习方式,从无人系统底层控制算法→中层决策算法→顶层学习算法的开发与验证,一站式搭建、开发出自己所需的无人系统。

3.11 配套硬件系统

​ RflySim 平台提供了一套完整的配套硬件系统,包括四旋翼无人机、飞控、遥控器等组件。组件均能与平台完美兼容,可以在 RflySim 平台中是实现软、硬件在环仿真实验,基于生成的固件实现无人机在真实环境下的飞行

​ 目前支持的飞机有:

  1. 飞思 X150
    1. 飞思 X150 为室内集群控制科研全新设计的微型四旋翼无人机
    2. 支持的飞控有Pixhawk 系列、卓翼 racer、卓翼 H7、MindPX、MindRacer 等
    3. Pixhawk 系列支持 Pixhawk1、Pixhawk 4、Pixhawk 6X 等飞控
    4. 支持的遥控器有乐迪 AT9S Pro、天地飞 ET07、福斯 i6s、Futuba T14SG 等等。
  2. 飞思 X200
  3. 飞思 X450

4.RflySim 平台主要功能介绍

4.1 飞控底层开发功能

image-20240703090808186

  1. RflySim 采用基于模型设计(Model-Based Design,MBD)的思想,
  2. 通过以下五个阶段
    1. 建模阶段
    2. 控制器设计阶段
    3. 软件在环仿真阶段(Software-In-the-Loop,SIL)
    4. 硬件在环仿真阶段(Hardware-In-the-Loop,HIL)
    5. 实飞测试阶段
  3. 通过 MATLAB/Simulink 的自动代码生成技术,控制器能够被方便地自动下载到硬件中,用于 HIL 仿真和实际飞行测试。
  4. 在 MATLAB/Simulink 中提供了多旋翼控制器设计的相关接口,用户(初学者、学生或者工程师)可以利用自己所学知识快速进行控制器的设计与验证
  5. 控制器设计完成后,先转为C/C++代码,然后编译进PX4固件中,自动下载到PX4自驾仪中
  6. 通过CopterSim进行模型仿真+PX4自驾仪进行控制硬件在环仿真+UE4等仿真环境

4.2 无人载具系统统一建模框架

image-20240703091146475

无人载具系统统一建模框架将整个无人载具系统分解为如下两个部分,并且机身系统控制系统之间进行着传感器数据与控制信号

  1. 机身系统
    1. 机体子系统
      1. 包含了机身、运行环境、力与力矩等内部子系统模块
      2. 对机体在环境的运动、能耗和故障特性的整体描述
    2. 执行器子系统
      1. 包含了飞行器与外界环境的相互作用
      2. 接收来自控制系统的控制信号,然后产生的力与力矩来驱动机身运动
    3. 三维环境子系统
      1. 描述无人飞行的三维视景环境(包括树木、障碍物、公路等)
      2. 用于为自主控制系统提供视觉数据的模拟。
    4. 传感器子系统
      1. 用于描述控制软件之外的所有电子硬件模型
      2. 包含传感器数据、通信协议、连接接口等特性;
  2. 控制系统

​ 在整个无人载具系统统一建模框架中,机身系统需要进行高精度建模,并且在实时仿真计算机中实现,最后连接控制系统软件或硬件,构成软件在环仿真硬件在环仿真闭环

image-20240703093050325

​ 上述建模框架可以在 Simulink 等可视化建模与仿真软件中快速实现,仿真模型搭建完毕后,可以利用自动代码生成的方法生成不同实时仿真计算机环境下的仿真软件,通过替代其中特定的子系统模块可以快速扩展得到不同类型的载具模型。

  1. RflySim 提供 Simulink 无人动力学建模模版,支持多种旋翼类型,便于模型开发与扩展
  2. 提供标准输入输出接口,可在 Simulink 中自行搭建任意构型无人模型
  3. 支持 Simulink 自动代码生成为 DLL 文件的形式导入到硬件在环仿真器中
  4. 动力系统组件数据库覆盖市面上 2000 款以上组件产品,支持从数据库中选择合适的电机、螺旋桨等组件组装不同构型多旋翼(三、四、六、八旋翼)并估算性能(悬停时间、最大拉力等)与模型参数(质量、转动惯量、螺旋桨拉力系数等),用于多旋翼动力学仿真。

4.3 无人系统仿真场景开发功能

​ RflySim 基于 Unreal Engine 实时三维渲染引擎开发了面向无人的实时视景软RflySim3D和RflySimUE5,它可以接收局域网内的所有飞机数据并集中实时显示在场景中,同时支持单独配置并获取到特定飞机的特定机载摄像头

  1. 支持自行设计并导入三维场景和飞机模型

  2. 支持直接使用 UE4 场景库中的海量三维场景和飞机模型

  3. 支持用 3Ds Max 和 AutoCAD 等软件自行制作三维场景和飞机模型并导入 UE4

  4. 通过典型场景搭建设计模块,能够自定义场景类型,提供典型场景模块设计SDK,对场景内的环境、设施及行人进行自定义。

  5. 支持通过 UDP/ROS 动态改变场景地图、改变飞机三维样式、动态创建障碍物(其他飞机、跟踪靶标、人物、标定板、桌椅等)、动态改变飞机视角(位置、方向、焦距等)、改变三维引擎输

    出图像分辨率等。

​ 下图分别展示了平台目前自带的四旋翼室内飞行、小车街区行驶、六旋翼森林穿梭和固定翼山脉巡航的三维场景。

image-20240703094040239

image-20240703094157040

4.4 无人系统视觉控制开发功能

​ 无人系统视觉控制:

image-20240703094827458

  1. 主要是通过对无人机所处的环境感知
  2. 通过网络通讯节点接收视觉模块发送的无人机视觉传感器数据
  3. 利用图像算法或人工智能完成视觉的导航或态势感知
  4. 顶层控制模块通过综合操控人员的指挥信息无人的状态信息(姿态、速度、位置、电量、健康程度等)、视觉感知的结果等信息,完成无人的上层决策,并将底层控制指令发送给无人自驾仪

image-20240703095108369

RflySim 平台支持外部传感器接入,我们将这些传感器数据分为两类:

  1. 一类直连飞控外部传感器(磁罗盘、差分 GPS、光流测速等)
    1. 飞控传感器通过 Simulink 等程序直接生成传入 Pixhawk 飞控
  2. 另一类是直连机载计算机视觉传感器(双目、Lidar、深度相机等)
    1. 视觉传感器通过三维环境引擎生成,随图像传入机载计算机

RflySim 提供传感器基本参数与安装位置深度相机传感器模块 SDK,用户可以通过设置相关参数对无人机载视觉传感器进行设计朝向、焦距、视场角等,自定义机载视觉模块;根据用决策的输入输出接口协议,提供决策系统输入/输出接口。

image-20240703095622942image-20240703095626958

​ 基于 RflySim3D 的三维视景平台支持视角切换功能,可以获取方便地获取到多个视角的图像数据。

支持通过共享内存或窗口图像抓取的方式在 Simulink、Python、C/C++ 等代码平台中实时获取到图像数据并进行处理,处理得到的视觉数据可以通过 UDP 再返回给 CopterSim 或者 Simulink 控制,形成带有视觉的硬件在环仿真闭环

  1. 支持采用 Python/C/Simulink 接口直接读取 RflySim3D 的窗口图像
    1. 720P 多窗口图像读取消耗用时间在 5ms 以内(200Hz 以上)
    2. 且不会干扰 RflySim3D 三维仿真程序的运行
  2. 支持开启任意个 RflySim3D 窗口,每个窗口可以独立配置显示视角。
    1. 模拟机载相机或者地面观察视角等
  3. 支持键盘快捷键调整,也支持通过 UDP 发送指令来控制 RflySim3D 的视角/机载相机显示参数
  4. 提供的控制接口底层直接收发 Mavlink 数据,由于使用跨平台的 Python 语言,直接拷贝机载计算机就能使用。

4.5 无人系统集群控制开发功能

​ RflySim支持一键启动多机集群仿真功能,支持MATLAB/Simulink、Python端集群仿真开发,支持多架软件在环、硬件在环及软、硬件相结合的虚实集群仿真,支持局域网内多台电脑的分布式集群仿真

​ 随着飞机增加,网络通信负载也会越来越大,此时需要对通信进行优化,目前主要的两种通信使用的数据协议为:

  1. MAVLink数据
  2. UDP压缩结构体

​ 基于上述两种数据协议,Rflysim提出了5中压缩的数据协议,实现了上百架的无人机集群仿真

image-20240703101040229image-20240703101042877

​ 该系统借助大规模集群分布式控制仿真系统平台,可实现大规模无人机集群仿真、分布式无人机集群控制研究、分布式无人机集群视觉感知算法验证、无人机飞行控制及通信算法验证等功能。

image-20240703101202493

4.6 无人协同控制决策算法设计功能

RflySim 的无人协同控制决策算法设计模块,具有:

  1. 顶层集群规划指挥层
  2. 组网通讯节点层
  3. 集群决策层
  4. 底层控制层

大规模无人机集群控制系统主要有以下特3:

  1. 支持集中式的无人集群控制策略,在指挥中心可获取所有无人数据并统一进行轨迹规划与安全防护
  2. 支持分布式的无人集群控制策略,每个飞机可获取临近无人的信息,并进行自主决策;
  3. 支持集中式控制算法的软/硬件在环仿真验证
  4. 支持局域网内多台电脑上的多个软/硬件在环仿真系统组网,形成整体的集群仿真系统,并实现集中显示与控制
  5. 支持集群控制算法快速移植到真机飞行平台中,进行试飞测试;

4.7 分布式网络通讯模块

​ RflySim 采用分布式组网架构,不同的仿真模型可以运行在同一台电脑或者不同的电脑上。

​ 打开多个模型仿真器并连接多个 Pixhawk/PX4 自驾仪硬件就可以形成多无人集群的仿真环境。由于单台电脑的性能是有限的,可以通过局域网内多台电脑间进行相互通信的形式进一步扩展整体飞机数量。

image-20240703103707393

5.RflySim 平台未来功能预览

5.1 兼容ROS的顶层视觉/决策算法开发

​ RflySim 平台可在本地电脑下开发和测试单一的视觉功能,整个开发过程均在 Windows 下进行,具有易用性强、效率高、入门门槛低、成本低等特点。

image-20240703103910104

​ 在完成本地电脑的纯软件在环仿真后,可将 Python/C 视觉感知与控制程序直接部署到机载计算机中的 Linux/ROS 中,使用飞控固件替换软件在环仿真模式,实现算法迁移。

image-20240703103924121

​ 进一步直接将 Pixhawk/PX4 飞控的 PWM 输出口插在机架动力系统上,图像获取接口连接相机,即可完成真机迁移。

5.2 无人系统故障建模与注入开发

​ RflySim 故障注入架构如下图所示。其由实物模块仿真模块评估模块组成。

​ 实物模块由飞控硬件组成,负责与仿真计算机连接,接收来自外部的控制指令并作出姿态响应,组成半物理仿真闭环,可通过飞控进行硬件在环的实时故障注入。

​ 仿真模块由 CopterSim、RflySim3D、QGC 组成,负责整机的故障消息发送三维故障注入,进行实时的故障模拟。

​ 评估模块负责输出故障注入之后的安全状况。

image-20240703104147281

故障用例包含三大类型故障:

​ 模型故障:故障模型在 Simulink 中开发,通过生成动态 DLL 模型嵌入 CopterSim 的模型接口进行仿真。提供 Simulink 模型和外部触发接口,可自行加入任意类型故障。

​ 通信故障:所有通信链路经过统一接口转发,可模拟延迟、丢包等故障。

​ 环境故障:通过在 UE 中创建三维障碍物并导入 RflySim3D,在飞机执行任务中注入三维障碍物故障。

5.3 无人系统安全、健康评估系统开发

​ 抽象来说,安全是指不因人、机、媒介的相互作用而导致系统损失、人员伤害、任务受影响或造成的损失,泛指没有危险、不出事故的状态。而无人机处于安全或不安全的状态,其实是一个二值逻辑。

5.4 基于FPGA实时仿真系统开发

​ 基于 RflySim 平台在软件层面的可信硬件平台、基于 MATLAB 的可信软件平台以及可信仿真模型组成了基于 FPGA 实时仿真系统。

image-20240703104400510

5.5 RflySim Cloud产品简介

​ 随着大规模集群仿真智能强化学习平台、一键部署/无需部署功能、硬件在环虚实结合仿真等需求越来越多,RflySim Cloud 云端化产品也将在未来发布。

image-20240703104437855

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

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

相关文章

springboot+vue+mybatis前台点菜系统+PPT+论文+讲解+售后

21世纪的今天,随着社会的不断发展与进步,人们对于信息科学化的认识,已由低层次向高层次发展,由原来的感性认识向理性认识提高,管理工作的重要性已逐渐被人们所认识,科学化的管理,使信息存储达到…

Golang | Leetcode Golang题解之第214题最短回文串

题目&#xff1a; 题解&#xff1a; func shortestPalindrome(s string) string {n : len(s)fail : make([]int, n)for i : 0; i < n; i {fail[i] -1}for i : 1; i < n; i {j : fail[i - 1]for j ! -1 && s[j 1] ! s[i] {j fail[j]}if s[j 1] s[i] {fail[i…

SDIO学习(2)--SD 2.0协议

目录 1. SD卡简介 1.1 SD卡概念 1.2 SD卡外形和接口 2. SD 2.0主要特性 3. SD 卡系统概念 3.1 读写属性 3.2 总线拓扑结构 3.2.1 SD模式 3.2.2 SPI模式 3.3 SD 2.0总线协议 3.3.1 命令&#xff08;Command&#xff09; 3.3.1.1 命令分类 3.3.1.2 命令格式 3.3.1.…

精确计算应用的冷启动耗时

在iOS项目中&#xff0c;冷启动时间是指从用户点击应用图标开始&#xff0c;到应用完全加载并呈现出第一个界面&#xff08;可能需要网络请求必要的数据&#xff09;所花费的时间。这里以 main 函数为界&#xff0c;分为两个时间段&#xff1a; 从用户点击应用图标 ~ invoke m…

(4)深入探索与优雅安装:Pandas数据处理的魅力之旅

目录 1. 前言1.1 Pandas 概述1.2 Pandas 特点1.3 优化应用举例1.4 Pandas 应用场景 2. DataFrame2.1 DataFrame结构2.2 Pandas 安装2.2.1 Pandas 安装准备2.2.2 Pandas 安装2.2.3 Pandas 包的导入2.2.4 查看 pandas 版本2.2.5 一个简单的 1. 前言 1.1 Pandas 概述 pandas 是 …

大数据招商的应用场景及实施路径有哪些?

当下&#xff0c;我国已经进入数字经济与实体经济融合发展的新阶段&#xff0c;数字技术和数字化转型落地日臻成熟&#xff0c;数据要素价值释放深入到了我国各个领域的发展&#xff0c;招商引资也不例外&#xff0c;在传统招商模式效果日渐甚微的大环境下&#xff0c;大数据招…

Java 基础知识之 switch 语句和 yield 关键字

传统 switch 语句 传统的 switch 语句我们已经写了一万遍了&#xff0c;以下是一个典型的 switch 语句&#xff1a; int dayOfWeek 3; switch (dayOfWeek) {case 1:System.out.println("星期一");break;case 2:System.out.println("星期二");break;case…

NAT地址转换实验,实验超简单

实验拓扑 实验目的 将内网区域&#xff08;灰色区域&#xff09;的地址转换为172.16.1.0 实验过程 配置静态NAT&#xff08;基于接口的静态NAT&#xff09; R1配置 <Huawei>sys Enter system view, return user view with CtrlZ. [Huawei]sysname R1 [R1]un in en I…

游戏AI的创造思路-技术基础-自然语言处理

自然语言处理-可以对游戏AI特别是RPG类、语言类游戏进行“附魔”&#xff0c;开发出“随机应变”和你聊天的“女友”、“队友”或者是根据你定义的文本库来用接近自然语言的生成“语言”&#xff0c;推动游戏情景在受控范围内前进 目录 1. 自然语言处理定义 2. 发展历史 3. …

泛微开发修炼之旅--26前端j实现手机号码验证

文章链接&#xff1a;26前端j实现手机号码验证

AiPPT的成功之路:PMF付费率与增长策略

如果要给 2023 年的 AI 市场一个关键词&#xff0c;那肯定是“大模型”&#xff0c;聚光灯和大家的注意力、资金都投向了那些大模型公司&#xff1b;而如果要给 2024 年的 AI 市场一个关键词&#xff0c;则一定是 PMF&#xff08;产品市场契合&#xff09;。如果没有 PMF&#…

五粮液:稳,还稳得住吗?

前有“酱香”茅台一骑绝尘&#xff0c;后有“清香”汾酒21%的增速虎视眈眈。 在新的股东大会上&#xff0c;管理层把“稳”字说了近30次。 就问白酒二哥——五粮液&#xff0c;你还稳得住吗&#xff1f; 近期&#xff0c;白酒大哥茅台因跌价吸引各方关注&#xff0c;但在这一…

人脸重建迁移攻击FRTA:绕过各种未见过的面部识别系统

随着人脸识别系统在安全关键环境中的部署日益增多&#xff0c;威胁行为者正在开发针对各种攻击点的复杂攻击策略。在这些攻击策略中&#xff0c;面部重建攻击是一个主要的威胁。面部重建攻击的主要目的是创建伪造的生物特征图像&#xff0c;这些图像类似于存储的生物特征模板中…

头条系统-05-延迟队列精准发布文章-概述添加任务(db和redis实现延迟任务)、取消拉取任务定时刷新(redis管道、分布式锁setNx)...

文章目录 延迟任务精准发布文章 1)文章定时发布2)延迟任务概述 2.1)什么是延迟任务2.2)技术对比 2.2.1)DelayQueue2.2.2)RabbitMQ实现延迟任务2.2.3)redis实现 3)redis实现延迟任务4)延迟任务服务实现 4.1)搭建heima-leadnews-schedule模块4.2)数据库准备4.3)安装redis4.4)项目…

【系统架构设计师】计算机组成与体系结构 ⑨ ( 磁盘管理 | “ 磁盘 “ 单缓冲区 与 双缓冲区 | “ 磁盘 “ 单缓冲区 与 双缓冲区案例 )

文章目录 一、" 磁盘 " 单缓冲区 与 双缓冲区1、" 磁盘 " 单缓冲区2、" 磁盘 " 双缓冲区 二、" 磁盘 " 单缓冲区 与 双缓冲区案例1、案例描述2、磁盘单缓冲区 - 流水线分析3、磁盘双缓冲区 - 流水线分析 一、" 磁盘 " 单缓冲…

2024年电子信息工程与电气国际学术会议 (EIEEE 2024)

2024年电子信息工程与电气国际学术会议 &#xff08;EIEEE 2024&#xff09; 2024 International Academic Conference on Electronic Information Engineering and Electrical Engineering 【重要信息】 大会地点&#xff1a;北京 大会官网&#xff1a;http://www.iceieee.co…

Unity休闲手机游戏开发课程

课程介绍 Unity休闲手机游戏开发课程将教您如何利用Unity游戏引擎创建令人愉快的休闲手机游戏。从基础的游戏开发知识到高级的游戏制作技巧&#xff0c;您将学习到创建各种类型的休闲游戏所需的关键技能和工具。无论您是初学者还是有一定经验的开发者&#xff0c;本课程都能帮助…

【Linux】TCP协议【下三】{面向字节流/粘包问题/TCP异常情况/文件和Socket}

文章目录 7.面向字节流TCP&#xff08;传输控制协议&#xff09;和UDP&#xff08;用户数据报协议&#xff09; 8.粘包问题9.TCP异常情况10.再谈文件和socket的关系 7.面向字节流 创建一个TCP的socket, 同时在内核中创建一个 发送缓冲区 和一个 接收缓冲区;一个链接一对发收缓…

使用Charles实现Android抓包,附带Charles破解教程

1.下载Charles 网址&#xff1a;下载Charles 安装完成后的界面&#xff1a; 2.配置http抓包 点击该选项 可以看到代理的 ip 和端口号 然后在手机的wifi中配置代理&#xff08;手机和电脑要在同一局域网&#xff09;&#xff0c;代理选择手动&#xff0c;并填入ip和端…

大语言模型测评工具-ChatHub和ChatAll

背景 现在国内外拥有上百个大语言模型&#xff0c;在AI业务中&#xff0c;我们需要在其中选择一个合适业务模型&#xff0c;就需要对这些模型进行测试。手工去测试这么多模型效率一定不高&#xff0c;今天就介绍两个提高测评模型效率的工具 ChatHub和ChatAll。 介绍 ChatHub…