用户故事

阿莱尼亚公司为DO-178B A级认证开发自动驾驶仪软件

挑战

开发公司首个DO-178B A级认证的自动驾驶系统

解决方案

使用基于模型的设计来模拟系统和软件设计,验证要求覆盖,生成代码,并为认证机构生成报告和其他工件

结果

  • 认证的需求评审缩短30%
  • 飞行时间减少20%
  • 自动化低级认证活动

“对我们来说,基于模型的设计的一个关键优势是能够专注于设计和开发,而不是低级的编码、验证和认证任务。其结果是更高的质量,通过DO-178B认证的软件,以及更快的迭代。”

Massimiliano Campagnoli, Alenia Aermacchi
alenia aermacchi m-346。

通过类似于最新的战斗机的飞行特性,Alenia Aermacchi M-346使飞行员能够在飞机中安全地训练,以低生命周期成本。配备四台冗余计算机,M-346飞行控制系统(FCS)支持逐线控制和高级自动驾驶仪功能。金宝app

阿莱尼亚公司采用Model-Based Design开发了自动驾驶仪软件,并通过了DO-178B Level A认证。

“采用基于模型的设计,一切都链接了,”Alenia Aermacchi的FCS应用软件团队负责人Massimiliano Campagnoli说。“我们的S金宝appimulink系统模型是可执行的,实现了早期验证要求。与DO-178B建模标准更新的相同模型用于生成飞行代码。“

挑战

由于M-346自动驾驶系统是工程团队开发的第一个系统,主要目标是快速识别问题并吸收试飞员的反馈。最终的自动驾驶软件需要DO-178B A级认证。

该团队决定沿两条路径追求发展方法:实验和认证。对于实验路径,他们将使用较严格的DO-178B级别D标准专注于快速发展,并采用架构解决方案来保护整体系统可靠性和安全性。金宝搏官方网站对于认证路径,它们将重用和优化设计的实验版本,以开发全面DO-178B级别的软件认证。

Alenia Aermacchi需要一个支持两种路径的活动和目标的开发环境,包括设计模拟、需求跟踪、模型覆盖分析、代码生成金宝app和分析,以及报告生成。

解决方案

阿莱尼亚航空公司的工程师使用基于模型的设计和Simulink开发了M-346的自动驾驶软件金宝app®

一组系统和控制工程师在Simulink和statflow中开发了一个系统模型金宝app®对于ARP-4754,使用StateFlow定义六个主自动驾驶仪状态,它们之间的转换和其他控制逻辑。它们耗尽模拟以验证系统行为。

该团队详细阐述了系统模型以创建自动驾驶软件模型,并对其进行优化以提高性能,并结合建模和安全标准以满足认证限制。

他们在软件模型上运行额外的模拟,并使用Simulink coverage™的模型覆盖分析确保这些测试100%覆盖软件需求。金宝app

他们使用Simulink Requirements™中的Requirements Management金宝app Interface链接IBM中的软件需求®理性的®®在其模金宝app型中同时同意和extendflow对象。使用Sim金宝appulink Report Generator™,它们为认证提供了需求可追溯性报告。

他们使用模型顾问来检查他们的软件模型是否对DO-178B高完整标准和Alenia Aermacchi自定义规则。

使用嵌入式编码器®,该团队从他们的软件模型中生成了大约17000行C代码。他们为PowerPC编译生成的代码®处理器使用绿山®AdaMULTI®编译器。

该团队使用了Polyspace®静态分析工具要检查运行时错误的代码,请确保遵守MISRA C.®编码标准,并为认证信贷创建文物。他们合格的PolySpace代码验证者和Simulink覆盖使用Do-178的资格套件。金宝app

该团队基于他们为Simulink创建的软件模型测试,为生成的代码创建了测试套件。金宝app在运行这些测试之后,他们将代码覆盖结果与从Simulink coverage中获得的模型覆盖结果进行了比较。金宝app

M-346飞机(包括自动驾驶功能)已获得意大利国防部国防和国家军备理事会秘书处的型号认证。阿莱尼亚航空公司的工程师目前正在进行一个项目,该项目中所有的软件组件(csci)将使用基于模型的设计进行开发,并通过DO-178C认证。

结果

  • 认证的需求评审缩短30%.“关于以前的项目,要求覆盖分析是手动进行的,并根据主观评估,”Campagnoli说。“金宝appSimulink,Simulink Coverage和Simulink要求使我们能够自动化此分析并提供客观覆盖度量,这有助于我们缩短了验证的需求审查,高达30%。”

  • 飞行时间减少20%.“基于模型的设计使我们能够根据飞行员和飞行工程师的反馈迅速改进设计,”Campagnoli说。“我们将飞行时间缩短了20%左右。更重要的是,我们是在提高软件质量的同时这么做的。”

  • 自动化低级认证活动.“我们自动化许多低级认证活动,包括需求覆盖率分析,运行时错误检查和标准合规性检查,”Campagnoli说。“自动化释放我们花费更多时间精炼要求,优化系统,改善我们的测试,并执行其他更高价值的任务。”