用户故事

NASA X-43A超燃冲压发动机使用基于模型的设计实现了破纪录的10马赫速度

挑战

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

解决方案

使用Si金宝appmulink对控制系统进行建模和验证,使用Simulink Coder自动生成飞行代码,使用MATLAB处理和分析飞行后数据

结果

  • 将开发时间缩短几个月
  • 准确预测分离间隙
  • 协助达到SEI CMM 5级工艺评定

“我们的自动驾驶仪在第一次尝试中就成功了,这令人惊讶,因为这样的飞行器以前从未试飞过。MathWorks工具帮助我们设计和实施控制系统,使飞行器在整个飞行过程中保持稳定。”

Dave Bose,分析力学协会
X-43A正在进行创纪录的飞行。

2004年11月16日,美国宇航局创造了历史,发射了X-43A,有史以来第一个吸气式高超音速飞行器,进入大气层,达到10马赫的速度。X-43A与助推器分离,在超燃冲压发动机的动力下以近10倍音速(7000英里/小时)的速度在大约11万英尺的高空加速。该实验使NASA能够验证吸气式高超声速飞机的关键推进和相关技术。


该项目被称为Hyper-X,是来自多个组织的工程师的合作成果,包括NASA德莱顿飞行研究中心、NASA兰利研究中心、分析力学协会(AMA)和波音幻影工厂。这些团队使用基于模型设计的MathWorks工具来开发和自动生成飞行器推进和飞行控制系统的飞行代码。他们还使用了MATLAB®分析飞行前的假设和飞行后的结果。

黑色的X-43A
美国宇航局B-52B母舰机翼下的特殊塔架上悬挂着一枚经过改装的飞马座助推火箭,黑色X-43A正骑在它的前面。图片由NASA提供。

挑战

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

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

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

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

解决方案

NASA的制导、导航和控制团队与波音公司和AMA合作,为X-43A超燃冲压发动机开发推进和飞行控制规律,并将其集成到机载系统中。所有团队通过应用基于模型的设计和MathWorks工具在项目中进行合作。

“目前还没有任何软件包能够与MathWorks工具的功能相匹配,”AMA建模与仿真副总裁戴夫·博斯(Dave Bose)说。“从团队的角度来看,选择MathWorks工具确实是一个简单的决定。”

机载控制系统的设计、仿真与验证

NASA和AMA使用Simulink金宝app®设计控制律增益并确保可接受的稳定裕度。金宝appSimulink还帮助他们快速完成了仿真阶段,包括在主机上运行蒙特卡罗仿真,并在实时计算机上使用飞行前硬件在环(HIL)测试验证设计。

工程师们在Simulink中实现了飞行控制系统的线性模型,并使用控制系统工具箱™设计环路增益并分析稳定裕度。金宝app

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

“在Simulink中构建算法比在Fortran金宝app中要容易得多,因为你构建的是子系统而不是子程序,这些子程序组织起来更直观,”波音公司的系统分析师路易斯·米兰达(Luis Miranda)说。“而且,我想不出比使用Simulink模型更有效的交付软件需求的方法了。”金宝app

来自AMA和NASA的工程师使用MATLAB和Simulink对分离事件进行建模和模拟,金宝app以确保助推器的适配器和研究飞行器没有接触。他们从分离活塞的地面测试中获取传感器数据,并使用MATLAB测量和分析测试数据,并使用优化工具箱™将参数与数据匹配。然后,他们利用这些数据在Simulink中开发了一个精确的模型,作为验证模拟和飞行前测试结果的真实模型。金宝app

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

NASA和波音公司使用Simulink C金宝appoder™为X-43A的推进和飞行控制系统自动生成C代码。他们使用该代码进行了6自由度模拟,用于非实时执行器测试和HIL测试。自动生成的代码也在X-43A上飞行的霍尼韦尔H-764 FMU中运行。

工程师使用Simulink C金宝appoder生成头文件、注册、参数和主要算法C文件。由于这些参数很容易获得,他们在测试期间和飞行当天对飞行控制和推进系统进行了检查。

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

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

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

对于HIL测试,他们测试了整个软件应用程序的功能,包括FMU上自动生成的代码。波音公司使用惯性模拟器作为飞行表,将速度数据输入FMU,指示它以不同的速度“飞行”。在HIL测试期间,工程师监测了从助推到分离到溅落的整个飞行轨迹,从FMU总线控制器收集遥测数据,用于MATLAB的后处理。

波音公司还使用Simulink C金宝appoder为NASA提供了构建更新,以满足飞行器集成和测试的各种里程碑。

Seigman说:“如果没有自动生成的代码,我们就无法为NASA提供如此高效的临时构建,因为控制法则经常变化。”“我们从未在自动生成的代码中发现任何错误,所以我们有信心为NASA创建一个快速原型。”

飞行后数据分析与后处理

为了准确估计飞行器发射后的轨迹,NASA使用MATLAB构建了卡尔曼滤波器,以去除来自遥测源的噪声,如原始惯性测量、大气条件和GPS天线的信息。

为了分析分离事件,NASA使用MATLAB自动化处理大型八维气动数据表,模拟适配器和研究飞行器之间的干扰效应。他们用MATLAB绘图和图表将数据可视化。

NASA系统分析师约翰•马丁(John Martin)表示:“数据的规模和复杂性构成了严峻的挑战。”“如果没有MATLAB,我不可能解决这个问题。”

NASA现在正在使用MathWorks工具来推进高超音速技术,研究如何延长燃烧时间,并在未来可能的任务中实现更高的马赫速度。

结果

  • 将开发时间缩短几个月.“用Simulink Coder自动生成代码节省了我们几个月的时间,”S金宝appeigman解释道。“如果我们必须手写所有的代码,我不相信我们能在最后期限前完成任务。”

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

  • 协助达到SEI CMM 5级工艺评定.Seigman解释说:“由于我们在开发飞行代码方面的严格流程,我们在这个项目上被评为SEI 5级。”“我们将自动生成代码的组件和HIL测试作为流程改进之一,这满足了5级标准。”

下载188bet金宝搏产品使用

展示你的成功

加入客户推荐计划