User Stories

洛克希德·马丁太空系统开发了虹膜卫星的GN&C系统,其基于模型的设计

挑战

发展制导、导航和控制(gnC) system for the Interface Region Imaging Spectrograph (IRIS) observatory satellite

解决方案

Use Model-Based Design with MATLAB and Simulink to model components of the GN&C system and the IRIS satellite, run closed-loop and processor-in-the-loop simulations, and generate production code

结果

  • 发展效率翻了一番
  • Efficient, defect-free code generated
  • 一天内完成的设计更新

“大约四个工程师组成的团队在短短23个月内设计,集成和测试了GN&C系统。我们更有效,因为我们使用相同的工具来进行分析和代码开发,并生成了20,000行缺陷的代码。对我们来说,这是基于模型设计的引人注目的案例。”

Vincentz Knagenhjelm,GN&C工程师,洛克希德·马丁太空系统
虹膜天文台。

界面区域成像光谱仪(IRIS)天文台目前在地球轨道上,它正在捕获太阳的紫外光谱和高分辨率图像。这些图像将帮助科学家更好地了解太阳大气层最低水平的能量和血浆的流动。

IRIS由洛克希德·马丁(Lockheed Martin)空间系统设计和建造,其有效的空间分辨率为0.33 ARCSEC,使其能够提供太阳的色球环和过渡区域的前所未有的视图。为了获得这些高分辨率图像,虹膜依赖于洛克希德·马丁(Lockheed Martin)空间系统使用MATLAB开发的洛克希德·马丁太空系统的精确指导,导航和控制系统(GN&C)系统®和Sim金宝appulink®

洛克希德·马丁(Lockheed Martin)的首席GN&C工程师鲍勃·多尔蒂(Bob Dougherty)说:“基于模型的设计使我们的小型团队能够满足飞行软件的积极交付截止日期。”“该软件在轨道​​上完美无缺,该项目突出了我们建造低成本,低风险航天器的能力。”

挑战

在过去的类似项目中,洛克希德·马丁工程师(Lockheed Martin Engineers)生产了广泛的算法设计文档,长达1000多页。程序员根据对这些文档的解释手动编写代码。整个过程都很慢,有时在手动编码期间引入缺陷。

With just 23 months scheduled for software design, integration, and testing, the team needed to accelerate the software delivery process significantly. To meet this goal, they sought to replace the detailed algorithm design document with a self-documenting design, reuse existing plant models for satellite hardware, replace hand coding with automatic code generation, and use a single environment for analysis and software development.

解决方案

Lockheed Martin engineers accelerated the development of the IRIS GN&C flight software by using Model-Based Design.

Working in MATLAB and Simulink, the engineers developed a basic model of the control system to analyze pointing performance, or how accurately the spacecraft could be reoriented.

为了创建植物模型,团队重复了现有的simulink和stateflow金宝app®models of satellite components developed by the Lockheed Martin Space Vehicle Integration Laboratory (SVIL). They combined models of reaction wheels, magnetic torque rods, a star tracker, sun sensors, and other components with a Simulink model of the environment.

该团队使用Simulink Report Gen金宝apperator™导出了他们的Simulink控制模型,以创建一个交互式Web视图,该视图在设计评论过程中进行了深入研究。

They verified the initial GN&C design by running closed-loop simulations with the plant model and performing model coverage analysis on the simulations using Simulink Coverage™.

他们与Mathworks Pilot Engineering Group合作,将其初始飞行软件GN&C模型分为组件,包括姿态控制器,反应轮控制器和态度确定模块。每个组件对应于飞行代码中的软件单元。

They used Embedded Coder®to generate C code for these components, adding a small amount of hand-generated “glue” code for a Moog Broad Reach Engineering radiation-hardened microprocessor and its executive software. Using a custom MATLAB user interface, the team exercised a variety of Simulink test cases for each GN&C flight software unit.

SVIL工程师在工厂模型中添加了一个集成层,并使用嵌入式编码器生成C代码,该代码已部署到实时计算机进行处理器进行测试。

After running real-time tests and optimizing the design in Simulink, the team generated approximately 20,000 lines of code for the production RAD750 processor. The GN&C system is in operation aboard IRIS, which is already delivering high-resolution images and spectral data.

结果

  • 发展效率翻了一番。GN&C软件工程师Phil Boyle说:“我们测量了每个开发人员小时代码的等效源线,发现基于模型的设计的效率是飞行软件的手工编码的两到三倍。”“不仅对于Iris项目,而且对于我们使用基于模型设计的其他项目都是正确的。”

  • Efficient, defect-free code generated。博伊尔说:“我们尝试使用10年前的自动代码生成,但是必须在使用该代码之前重新设计该代码。”“相反,我们使用嵌入式编码器为IRIS生成的代码不仅没有缺陷,而且还有效。”

  • 一天内完成的设计更新。“After IRIS was put into operation, we discovered some peculiarities with the hardware that were unknown before launch,” Boyle says. “To account for this hardware behavior, we simply updated our Simulink models, re-generated code, and reran our unit tests and software item qualification tests. In one day, we were ready with an updated system.”