Anwenderberichte.

韩国航空飞行无人机飞行控制软件开发和基于模型的设计验证

挑战

开发和验证无人机飞行控制软件

解决方案

利用基于模型的设计(Model-Based Design)对飞行控制规律和运行逻辑进行设计和仿真,生成和验证生产代码,进行HIL测试

结果

  • 100%识别并消除了手写代码中的运行时错误
  • 开发工作减少了60%
  • 成本高昂的飞行测试被最小化

通过MATLAB和Simulink实现的模型重用和效率提升节省了时间,降低了成本。金宝app我们估计,与手工编码相比,基于模型的设计可以节省50%以上的时间,而且随着项目的复杂性增加,基于模型的设计的优势也在增加。”

文正浩,大韩航空
大韩航空无人驾驶飞机。

工程师开发高完整飞行管理和控制软件,用于无人驾驶飞行器(无人机)使用各种技术在开发中验证软件,包括模拟,单元测试,正规测试和循环硬件(HIL)模拟。在韩国航空公司,工程团队加速了这些验证步骤,以及无人机飞行控制软件的整体发展,基于模型的设计。

“基于模型的设计使我们的团队能够建立一个可以在多个UAV平台上使用的过程。该过程包括建模和模拟系统,自动生成生产代码,并验证我们生成和手写的代码是否没有运行时差,“韩国空气的高级飞行控制系统工程师Jungho Moon说。“因此,我们在开发早期消除了潜在的关键误差,提高了发展效率和降低的发展成本。”

挑战

过去,韩国空气工程师手工编码无人机飞行控制软件。该公司确定了这种方法的几种缺点,特别是当单个飞行控制系统针对多个UAV平台时。首先,团队正在开发的算法对于手动中的程序进行太复杂。其次,它们需要能够快速部署硬件规范变化和最新的控制算法。第三,手动代码审查和单元测试需要太多时间和努力完成。

为了满足飞行测试和认证的不可移动截止日期,韩国空气需要通过模拟设计模型,自动生成代码和验证生成和手写代码来缩短开发。

解决方案

大韩航空利用模型设计(Model-Based Design)开发了新型无人机(UAV)飞行控制软件。

在开发的早期阶段,工程师们开发了Simulink金宝app®模型改进并验证高级要求。

工程师开发了无人机的动态模型,包括采用Aerospace BlockSet™模拟自动起飞和降落的着陆齿轮动力学。后来他们使用系统识别工具箱™来估计飞行动态和性能验证的模型参数。

该团队使用鲁棒控制工具箱™和控制系统工具箱™设计了飞行控制法,以计算最佳控制增益。

在Simulink和statflow中对包括自动着陆制导子系统在内的飞行管理与控制系统进行建模金宝app®

运行桌面模拟以验证飞行控制法律并收集控制响应数据后,他们分析了Matlab中的结果,后来飞行试验结果®

使用Simu金宝applink Check™和Simulink Coverage™,该工程师进行了定期检查,以确保模型符合公司的建模标准(基于MAAB指南),并为其测试套件衡量100%MC / DC模型覆盖范围。

该团队使用Embedded Coder从他们的模型生成了超过45000行源代码®.他们使用他们已经为硬件驱动程序手写的代码集成了这个C代码,并且他们重​​复使用了模型覆盖率的测试用例,以测量100%MC / DC码覆盖范围。

使用PolySpace Code Prover™,该团队检查了所有运行时错误的代码,识别它们随后更正的手写代码中的几个。生成的代码中没有找到运行时错误。

该团队通过Simulink Real-Time™进行实时HIL模拟。金宝app在飞行控制和飞行动态子模型中包含超过11,000个块的HIL模型被重用,以为UAV创建一个操作员培训模拟器。

大韩航空工程师向认证机构提供了Simulink Check生成的MC/DC覆盖报告,以及Polyspace Code Prover生成的Simulink覆盖报告和测试报告。金宝app

大韩航空按照计划完成了开发工作,并获得了韩国政府的适航认证。

结果

  • 100%识别并消除了手写代码中的运行时错误.“PolySpace守则箴言对于开发安全软件并消除飞行中可能发生的关键错误至关重要,”月亮说。“PolySpace在手写代码中发现了数十个逐个零和溢出错误,并证明了嵌入式编码器生成的代码中的运行时误差。”

  • 开发工作减少了60%.“我们用MATLAB和Simulink开发的软件比我们手工编码的项目有更多的功能和验证金宝app范围,”Moon说。模型重用、代码生成和基于模型的设计减少的测试时间使开发工程师的工作时间减少了60%。

  • 成本高昂的飞行测试被最小化.“一次飞行测试的成本可能超过1万美元,”穆恩说。“基于模型的设计,我们知道,如果我们模拟正确,无人机将正确飞行。例如,自动驾驶仪的性能和功能只需验证之前要求的三分之一的飞行测试次数。”