NASA的X-43A超音速冲压喷射装置达到破纪录的10马赫的速度使用基于模型的设计

挑战

设计并自动生成10马赫超音速冲压发动机飞行器的飞行控制软件

解决方案

利用Si万博1manbetxmulink对控制系统进行建模和验证,利用Simulink Coder自动生成飞行代码,利用MATLAB对飞行后数据进行处理和分析

结果

  • 将开发时间缩短了数月
  • 准确预测分离间隙
  • 协助完成SEI CMM 5级过程评级

“我们的自动驾驶仪工作的第一次尝试,这是惊人的考虑到这样的车辆从未坐过飞机。MathWorks工具帮助我们设计和实现保持整个飞行车辆稳定控制系统。”

戴夫·博斯,分析力学协会的
它的创纪录飞行的X-43A。

2004年11月16日,美国国家航空航天局(NASA)将史上第一架吸气式高超音速飞行器X-43A发射到大气中,达到10马赫的速度。X-43A从助推器中分离出来,在大约11万英尺的高空,利用超燃冲压发动机的动力以接近10倍音速(7000英里/小时)的速度加速。该实验使NASA能够验证呼吸式高超音速飞机的关键推进和相关技术。


配音的Hyper-X,该项目是由各种组织,包括NASA德莱顿飞行研究中心,美国航空航天局兰利研究中心,分析力学协会(AMA)和波音PhantomWorks涉及工程师的协作努力。这些团队使用MathWorks工具进行基于模型的设计开发,并自动生成车辆的推进和飞行控制系统飞行代码。他们还使用MATLAB®分析预检假设和飞行后的结果。

黑色的X-43A安装在一枚改进型飞马助推火箭的前部,该火箭悬挂在NASA B-52B母舰机翼下的特殊塔架上。照片由美国航天局。

挑战

NASA的任务是为X-43A及其子系统开发控制,包括飞行控制、推进、执行器和传感器。这些控制将使无人驾驶飞行器在半度攻角内保持稳定,并确保研究飞行器和助推器前部的适配器之间有足够的间隙,当两部分分离时。工程师们需要在各种环境条件和未知的飞行制度下完成这个项目。

由于这个独特的项目涉及多个团队和高度复杂的设计,NASA将需要一个共同的建模环境和一个基于可靠模型的经过验证的设计过程。

由于系统需求和模型极有可能随着程序的成熟而改变,他们也寻求自动化开发,并将手工编码和调试最小化。

最后,NASA需要有效分析千兆字节多维遥测数据的工具。
X43-A车辆部件,包括控制器、执行器和FMU。

解决方案

在制导,导航与控制小组在美国宇航局正与波音,AMA合作开发的X-43A超燃冲压发动机推进和飞行控制律,并将其集成到车载系统。所有参赛队通过应用基于模型的设计与MathWorks工具合作的项目。

AMA的建模和仿真副总裁Dave Bose说:“目前还没有任何软件包可以与MathWorks工具的能力相媲美。”“从团队的角度来看,选择MathWorks工具确实是一个简单的决定。”

设计,仿真和验证机载控制系统

NASA和AMA使用Simulink万博1manbetx®设计控制律增益,确保可接受的稳定裕度。万博1manbetxSimulink还帮助他们快速通过仿真阶段,其中包括在主机上运行蒙特卡罗仿真,并在实时计算机上进行飞行前半环硬件(HIL)测试来验证设计。

工程师在Simulink中实现了飞行控制系统的线性模型,并使用控制系统工具箱™来设计回路增益和分析稳定裕度。万博1manbetx

在Simulink中,万博1manbetxAMA开发了整个车辆和子系统的复杂非线性模型,包括一个六自由度(6 DOF)工厂环境、带有复杂滤波器的控制系统、高保真执行器模型和详细的传感器表示。他们使用MATLAB和Simulink将这万博1manbetx些模型与实际飞行数据进行协调。

“在Simulink大厦算法比Fortran语言万博1manbetx,因为你正在构建子系统而不是子程序要容易得多,而这些都是更直观的组织,”在波音的系统分析员路易斯·米兰达说。“另外,我想不出一个更有效的方式来交付软件的需求比使用Simulink模型。”万博1manbetx

从AMA和NASA的工程师使用MATLAB和Simulink来建模和仿真分离过程,以保证万博1manbetx增压器的适配器和研究车辆没有进行接触。他们获得从在分离活塞和使用MATLAB地面试验传感器数据,以测量和分析测试数据和优化工具箱™匹配参数的数据。然后,他们使用的数据来开发Simulink中的精确模型,它充当了验证模拟和预检测试结果的真相模型。万博1manbetx

生成和集成C代码到飞行管理单元(FMU)

美国航空航天局和波音公司使用Simulin万博1manbetxk的编码器™自动生成的X-43A的推进和飞行控制系统的C代码。他们使用代码来运行非实时执行测试和HIL测试6个自由度模拟。自动生成的代码还运行了霍尼韦尔H-764 FMU,关于X-43A飞到内部。

工程师使用Simulink C万博1manbetxoder来生成头文件、注册文件、参数和主要算法C文件。因为这些参数很容易获取,他们在测试期间和飞行当天检查了它们的飞行控制和推进系统。

波音公司使用Simulink和Simulink Coder自动化了两个主要测试阶段:组件测试和万博1manbetxHIL测试。他们验证软件需求并执行结构性覆盖分析,在实现透明的验证和验证过程的同时避免对自动生成的代码的检查。

“为了对系统进行修改,我们更新了Simulink图,自动生成代码,安装生成的代码,然后按下构万博1manbetx建按钮,”波音PhantomWorks的软件工程师Paul Seigman说。“我们经历了生产率的显著提高,并避免了手工编码的缺陷。”

对于组件测试,波音在组件集成到嵌入式代码之前,使用Simulink在主万博1manbetx机处理器上运行其刺激模型的测试。然后,他们使万博1manbetx用Simulink Coder自动生成C代码,并检查模拟结果和生成代码之间的潜在差异。

为HIL测试,测试它们的完整的软件应用程序的功能,包括对FMU自动生成的代码。波音使用惯性模拟器作为飞行表馈速度数据到FMU,这指示其“飞行”在不同的速度。在HIL测试,工程师从监控提振分离整个飞行轨迹溅落,收集遥测数据功能,用于MATLAB的后处理FMU总线控制器。

波音公司还使用Simulink的编万博1manbetx码器提供NASA与构建更新,以满足整车集成和测试的各个里程碑。

“我们不会已经能够提供与美国航空航天局,因为临时控制律频繁变更为有效地建立无自动生成的代码,” Seigman说。“我们从来没有发现在自动生成的代码的任何错误,所以我们是在创造一个快速原型NASA信心。”

分析和后处理飞行后数据

为了准确地估计推出后车辆的轨迹,NASA使用MATLAB建立卡尔曼滤波器,从遥测源,如原惯性测量,大气条件和信息从他们的GPS天线去除噪音。

为了分析分离过程,NASA使用MATLAB自动化的大八维空气动力学数据表的处理该模型的适配器和研究车辆之间的干扰效应。他们与可视化MATLAB情节和图形数据。

“数据的规模和复杂性提出了严峻的挑战,” NASA的系统分析师约翰·马丁说。“我不可能解决了这个问题,而无需MATLAB。”

NASA现在正在使用MathWorks工具,通过研究延长燃烧时间和实现更高马赫速度的方法来推进高超音速技术,以实现未来可能的任务。

结果

  • 将开发时间缩短了数月.“使用Simulink Coder自动生成代码节省了我们几个月的时间,”万博1manbetxSeigman解释道。“如果我们必须手工编写所有代码,我相信我们无法在截止日期前完成任务。”

  • 准确预测分离间隙.Martin解释说:“因为我们的动画软件包不能告诉我们在分离过程中适配器与飞行器的距离有多近,所以我们无法设计出最大间隙的控制策略。”“我们用MATLAB很容易地计算出了接近度,我们的后处理结果证明了我们的预测是准确的。”

  • 协助完成SEI CMM 5级过程评级.“随着我们开发飞行代码严谨的过程中,我们被评为在SEI 5级这个项目,” Seigman解释。“我们所使用的自动生成的代码的我们的组分和HIL测试作为我们的工艺改进之一,它满足了第5级的标准。”