Simulink无人机参考应用程序

版本2.1 (114 MB) by 巴勃罗·罗梅罗
Simulink项目展示了一个小型固定翼无人机,它的自动驾驶仪和操作界面

4.7 k下载

更新2022年2月8日

从GitHub

在GitHub上查看License

Simulink无人机参考应用程序在文件交换中查看Simulink无人机参考应用程序

该Simulink®项目展示了远程遥控无线电控制固定翼飞机(即无人机,UAV)的实现,用于飞行稳定的自动驾驶仪和控制其轨迹的操作界面。

组件

该模型由三个主要部分组成:

工厂模式

一个六自由度(六自由度)动力学模型的泡沫建造,65英寸翼展,多路导师业余无线电控制飞机。它包括飞机动力学、天气、电机、执行器和传感器的模型。装置接收四个执行器通道的命令:(1)油门,(2)副翼,(3)舵,(4)电梯。反过来,它产生一组读数,就像这类飞机上的传感器套件产生的读数一样。

植物模型使用的是地面近似,因此它只适用于距离约20公里的飞行。

自动驾驶仪模型。

自动驾驶控制器是一个经典的横向/纵向通道飞行控制器,包括制导、导航和控制(除了姿态估计,因为这假定直接从传感器套件获得)。自动驾驶仪,基于地面控制站的命令和传感器读数,为控制面产生控制命令,也报告遥测回地面站。这个挡板使飞机保持稳定,使其保持飞行状态。

它允许操作员命令它以四种不同的模式飞行:

  • 路标指引。
  • 圆形的指导。
  • 回到基地。
  • 中级控制命令(Uc, phi_c, H_c)

飞机运营商接口。

这表示控制台操作遥控飞机在飞行。它从地面向飞机发出指令(航路点、空速、高度等)。

该区块接收飞机报告的遥测数据,如姿态、传感器读数和整体飞机状态。这将允许在飞行中设置飞机的预期行为。

该模型可以选择与众所周知的、公开可用的开源微型飞行器地面站软件进行交互QGroundControl.要与QGroundControl通信,该模型使用MAVLink通信协议。

功能

这个Simulink项目练习了飞行控制开发中的几个常见工作流程。其目的是展示一种基于模型的设计(MBD)过程的推荐方法,以开发无人机飞行控制器(自动驾驶仪)的概念证明。我们特别展示了以下工作流程:

  1. 飞行控制器设计开发一个固定翼无人机自动驾驶仪,并在一个合理真实的6自由度飞机模拟中测试其行为。

  2. 模拟不同条件下的飞行控制器:使用局部并行模拟,快速评估自动驾驶仪在许多模拟飞行条件下的性能。

  3. 飞行包线特征通过使用MATLAB分布式计算服务器进行广泛的环境和初始条件扫描,快速描述飞机的性能。

  4. 无人机中小企业能力评估在设计过程早期,通过Simulink和QGroundControl地面站软件之间的联合仿真,向主题问题专家(SME)演示无人机的能力,并收集关于可用性和功能的反馈。

  5. 测试战斗控制器生成代码的正确性在开发计算机上使用Simulink的software - in - loop测试代码行为,以获得与设计的自动驾驶仪相同的结果(在边界内)。

  6. 部署和测试飞行控制员生成代码的正确性在开发板(树莓派)上使用Simulink的processor - in - loop测试代码的行为,以获得相同的结果(在边界内)。

  7. 系统集成测试(硬件在环)测试部署在开发板(树莓派)的飞行控制器,在一个运行6自由度的飞机模拟Speedgoat®实时计算机仿真软件实时™

  8. 运行回归测试在本地运行回归测试。

联合仿真与控制接口

该模型可以与开源的QGroundControl地面站软件交互,在“飞行中”控制飞机:

QGC联合仿真

开始

要运行模型,将存储库克隆到您自己的工作目录,并从MATLAB命令行:

>>openProjectpathToYourProject / MBDRI.prj);>>configSim;>>runShortFlight

这将产生5个图,第一个是一个完整任务的XY图,围绕6个航路点,如下图所示:

XY任务情节

设置

为了获得完整的功能,您需要一台运行MATLAB®、Simulink®和支持的编译器的计算机,根据工作流程,还需要以下产品:2022世界杯八强谁会赢?

飞行控制设计

模拟不同条件下的飞行控制器

飞行包线特征

中小企业评估及与QGroundControl的连接

用于测试和部署战斗控制器生成的代码的行为

用于系统集成测试(硬件在环)

用于自动测试(背靠背和回归测试)

许可证

license文件在许可文件在这个库。

贡献

如果你有兴趣贡献,我们绝对有兴趣听到你的消息。有许多开放的门票,我们相信这个名单只会增长,所以请随意贡献,拥有这些门票之一,并发送我们的拉请求。

如果您想建议一个增强,请创建一个新问题并应用增强标签。这并不能保证我们一定会做到,但我们一定会把它考虑进去。

如果遇到错误,请创建一个新问题并应用错误标签。

世界杯预选赛小组名单社区支持

MATLAB中央

版权所有:The MathWorks, Inc.

引用作为

巴勃罗·罗梅罗(2022)。Simulink无人机参考应用程序GitHub (https://github.com/mathworks/simulinkDroneReferenceApp/releases/tag/v2.1)。检索

MATLAB版本兼容性
创建R2021b
兼容R2021b及后续版本
平台的兼容性
窗户 macOS Linux

世界杯预选赛小组名单社区寻宝

在MATLAB中央找到宝藏,并发现社区可以如何帮助你!世界杯预选赛小组名单

开始狩猎!
要查看或报告此GitHub插件中的问题,请访问GitHub库
要查看或报告此GitHub插件中的问题,请访问GitHub库
Baidu
map