Alenia Aermacchi开发了DO-178B级别的Autopilot软件A认证

挑战

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

解决方案

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

结果

  • 要求审查认证高达30%较短
  • 飞行减少了20%
  • 自动化的低级认证活动

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

Massimiliano Campagnoli,Alenia Aermacchi
alenia aermacchi m-346。

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

Alenia Aermacchi使用基于模型的设计来开发自动驾驶仪软件,并证明它至DO-178B级别A.

“通过基于模型的设计,一切都是联系的,”艾琳尼亚Aermacchi的FCS应用软件团队负责人Massimiliano Campagnoli说。“我们的S金宝appimulink系统模型是可执行的,启用对需求的早期验证。相同的模型,更新符合DO-178B建模标准,用于生成飞行代码。“

挑战

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

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

Alenia Aermacichi需要一个开发环境,这些开发环境将支持这两条路径的活动和目标,包括设计模拟,需求可追溯性,金宝app模型覆盖率分析,代码生成和分析以及报告生成。

解决方案

Alenia Aermacchi工程师使用基于模型的设计开发了M-346的自动驾驶仪软件,使用模型的设计使用Simulink金宝app®

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

该团队详细阐述了系统模型,以创建自动驾驶仪软件模型,优化它以提高性能,并采用建模和安全标准来满足认证约束。

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

它们在Simulink要求™中使用了需求管理界面,以将软件要求链接在IBM中金宝app®合理的®®在其模金宝app型中同意和eventflow对象。使用Sim金宝appulink Report Generator™,它们为认证提供了需求可追溯性报告。

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

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

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

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

M-346飞机(包括自动驾驶仪功能)已从意大利国防部的秘书处和国家军备局秘书处获得型式认证。Alenia Aermacchi工程师目前正在研究一个项目,其中所有软件组件(CSCIS)将使用基于模型的设计和经过认证到DO-178C开发。

结果

  • 要求审查认证高达30%较短。“在以前的项目中,要求覆盖分析是手动进行的,基于主观评估,”Campagnoli说。“金宝appSimulink,Simulink覆盖范围和Simulink要求使我们能够自动化此分析并提供客观覆盖度量,这帮助我们缩短了最高30%的要求审查。”

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

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