技术文章和通讯

如何使用仿真软件对IS万博1manbetxO 26262项目

汤姆Erkkinen MathWorks


汽车工程师致力于安全、嵌入式系统对传统和自主车辆正在寻找有效的方法来实现这一过程严格由ISO®26262[1],为机动车发展功能安全标准。

与所有媒体关注自主车辆,没有缺乏的建议。不过,往往这个建议关注最新的编码方法或bug-zapping工具。作为行业专家长期以来公认的,安全是更多关于正确的系统及其需求比关于软件和它是如何编码的[2]。

连续和离散时间模拟为骨干,基于模型的设计与仿真软件万博1manbetx®让你设计和测试你的全系统在各种驾驶条件下和故障场景之前你去试验场或执行舰队测试。它还支持流程活动万博1manbetx指定的ISO 26262,包括工具资格。IEC认证工具包细节这个支持和提供国际认证的证书和报告工具权威技术。万博1manbetx

本文介绍了德国莱茵SUD-approved工作流使用仿真软件对ISO 26262的项目。万博1manbetx介绍了ISO 26262和基于模型的设计,然后覆盖了以下活动:

  • 需求开发
  • 设计建模
  • 设计验证
  • 代码生成
  • 代码验证
  • 工具资格

ISO 26262和基于模型的设计

ISO 26262包括指导手册的设计和代码,以及基于模型的设计。特别是,它列出了5种不同的基于模型的用例设计[3]:

  • 软件安全要求的规范
  • 开发的软件架构设计
  • 设计和实现的软件单元,有或没有代码生成
  • 设计、实现和集成的软件组件,包括软件组件的代码生成模型
  • 静态或动态验证

它也承认一些使用基于模型的设计[3]的好处:

旁边使用MBD的具体原因(如模拟或代码生成),一个充分定义的语法和语义的基础标准,如可理解性的成就,含混标准、信息的正确性、一致性和可验证性或工作产品尤其是合作各方所描述的模型。s manbetx 845

指出标准提到了图形建模和建模工具使用半正式的软件开发方法。不仅指出建模捕获功能实现(嵌入式软件),还可以模拟真实的物理系统(车辆模型和环境模型)来生成一个完整的系统模型:

模型,建模和编码规则,可以用来设计、实现和集成软件在更高层次的抽象。

而且,

模型也可以作为一种手段来启用或支持验证活动(如植物模型所需的半实物闭环控制的模拟环境试验测试万博1manbetx设备)。模型验证的目的的使用可以使错误/故障的早期和有效的检测工作产品(包括软件),更有效的测试用例生成、高度自动化的测试,甚至正式验证技术s manbetx 845

图1显示了一个典型的闭环系统仿真软件模型。万博1manbetx它由一个控制器和植物,加上信号处理器。在ISO 26262,系统需求和建筑设计规范是一个软件开发的输入,但它是比这更安全从根本上是一个系统问题[2]。

闭环系统图的设计模型和输入,处理器和植物。图窗口显示了输出信号。

图1所示。一个万博1manbetx仿真软件系统的设计模型。

系统分配给软件架构元素通常是阐述了,直到他们成为你的软件蓝图足够的细节来生成生产代码。ISO 26262将这个模型精化过程描述为“模型细化”[2]:

模型本身可能由各种层次的细化或引用精炼模型在一个较低的水平层次级(如层次结构与黑盒和白盒视图为每个模型元素)。

ISO 26262推荐方法基于汽车安全完整性水平的各种活动(ASILs)。你使用这个指导建立一个适当的工作流基于你的用例。图2概述了ISO 26262的过程。扎实的箭头显示开发活动,而虚线箭头表示验证和确认活动。

ISO 26262使用仿真软件系统,软件开发和验证过程。万博1manbetx虽然这篇文章关注软件开发中,您可以使用基于模型的设计与系统的作曲家和仿真软件系统级活动显示在图左边的工作流。万博1manbetx

图2。ISO 26262使用仿真软件系统,软件开发和验证过程。万博1manbetx虽然这篇文章关注软件开发中,您可以使用基于模型的设计与系统的作曲家和仿真软件系统级活动显示在图左边的工作流。万博1manbetx

需求开发

你开始的安全开发流程编辑功能和安全要求。ISO 26262建议你验证软件架构设计使用之间“双向追溯软件架构设计和软件安全要求。“为了实现这一点,您可以使用需求工具箱™作者和跟踪需求到模型,测试,和代码。其他工具需求工具箱支持双向跟踪,包括微软万博1manbetx®®,微软Excel®和IBM®理性的®®。此外,你可以使用仿真万博1manbetx软件和需求工具箱创建正式的和明确的要求规范。需求的实现和验证状态监控和管理工具箱内部需求。要求链接可以出现在生成的代码(图3)。

模型万博1manbetx图包括表格要求窗口和属性检查器显示选择的细节要求。

图3。在仿真软件需求规范。万博1manbetx

设计建模

您可以使用基于模型的设计和仿真软件系统的作曲家来指定您的软件架构设计。万博1manbetx这包括静态(即。、结构与块层次结构和接口信息)和动态方面(即。、行为与功能、逻辑、数据和控制流)。

与仿真软件万博1manbetx,你也可以完善你的软件的功能模型从高层可执行单元和组件规范详细设计准备生产代码生成。典型的改进包括:

  • 将模块从连续时间(S域)转换为离散时间(Z域)使用仿真软件控制设计™离散化的工具万博1manbetx
  • 将双精度的数据转换为单精度或定点使用定点设计师™
  • 增加诊断模式逻辑,状态机,并使用Stateflow调度®

ASIL A到D, ISO 26262高度推荐使用建模指南,为此,你可以使用马伯高度集成风格指南[4]和ISO 26262仿真软件中提供的指导方针。万博1manbetx万博1manbetx模型检查™自动化检查指导方针。它可以国旗问题,比如不合规的块的插入,在编辑时间。您还可以包括自己的指导方针和检查,也可以配置为编辑时间检查。

设计验证

ISO 26262推荐的静态和动态方法验证软件设计和实现,包括单位和上的活动。基于模型的设计,它指出,“根据软件开发过程测试对象代码来自这个模型或模型本身,或“

万博1manbetx仿真软件测试™为ISO 26262提供了一个框架在仿真软件验证和确认活动。你可以用它来创建、管理和执行系统,基于仿真的测试模型,从模型生成的代码。图4显示了一个示例测试序列和评估模块。

测试序列编辑器窗口显示的步骤在一个测试场景和测试工具窗口显示了测试序列块和测试评估。

图4。万博1manbetx建模和仿真软件测试序列和评估块编写复杂的测试场景。

TUV SUD报告在IEC认证工具包(ISO 26262)澄清的作用仿真软件测试的自动化验证和确认:万博1manbetx

(万博1manbetx仿真软件测试)允许自动化的核心仿真软件验证和确认活动模型和生成的代码。以下用例反映活动,在软件开发过程中需要根据功能安全标准ISO 26262:

  • 开发和执行的测试仿真软件模型万博1manbetx
  • 开发和执行的测试模型和代码之间的连续测试
  • 评估测试结果
  • 生成测试报告
  • 识别需求和测试用例之间的可跟踪性

ISO 26262推荐结构覆盖率分析来确定测试完整性和识别意想不到的功能。它列出了三个方法越来越严格,最后两个是ASIL-D强烈推荐。

  • 语句覆盖
  • 分支覆盖
  • MC / DC(修改条件/决定覆盖)

的标准指出,基于模型的设计”分析模型层级结构覆盖率可以执行的使用类似的结构覆盖率度量模型”。它继续状态,如果结构覆盖率不足,“额外的测试用例应当指定或应当提供理由。”

万博1manbetx仿真软件覆盖™提供结构覆盖率分析模型和生成的代码,这很容易使与仿真软件测试执行测试。如果你的模型覆盖不足,您可以使用仿真软件设计验证人™自动生成额外的测试用例达到所需的报道,包括MC / 万博1manbetxDC。万博1manbetx模型检查仪表盘包括模型试验来评估基于需求的测试用例和结果的完整性和质量指标符合ISO 26262 - 6:2018 9.4.3和条款9.4.5(图5)。

截图的仪表板上的工件列表左边和右边的小部件显示基于需求的测试指标。

图5。使用该模型测试仪表板来评估你的基于需求的测试活动的质量和完整性符合ISO 26262。

IEC资格认证工具包提供了工具支持,与技术人员证书和报告,为仿真软件检查,仿真软件覆盖(包括模型和代万博1manbetx码覆盖),仿真软件设计验证器,仿真软件测试。万博1manbetx

代码生成

ISO 26262州”的实现软件单元包括源代码的生成和翻译成目标代码。“为了实现这一点,您可以使用嵌入的编码器®生成C, c++, AUTOSAR代码从你的仿真软件和系统作曲家模型。万博1manbetx可以符合MISRA C代码®:2012自动代码指南[5]。ISO 26262指出代码指南基于模型的设计和手工代码可以不同,MISRA列表®作为一个例子。

IEC资格认证工具包提供了工具支持嵌入式编码(包括ASIL通过D) C, c++, AUTOSAR。万博1manbetx其技术人员认证报告指出:

嵌入式编码器满足ISO 26262的要求关于工具支持和自动化。万博1manbetx

嵌入式编码通常是应用于之后的三个用例:

  1. 为模型生成C代码用于生产代码生成
  2. 生成c++代码为模型用于生产代码生成
  3. 生成C / c++代码和文件对AUTOSAR应用软件组件从模型用于生产代码生成

嵌入式编码器提供了选择优化代码的内存和速度。此外,您可以生成了特定于处理器的优化利用SIMD等硬件加速器®的手臂®和英特尔®。您可以验证优化代码匹配仿真结果在规定的公差,使用模型到代码,processor-in-the-loop(公益诉讼)ISO 26262中描述的测试。

可执行的目标代码生成从生成的源代码使用你的编译器和链接器。工作流在IEC认证工具包允许编码器,编译器和处理器的优化,为大规模生产ecu至关重要,只要公益诉讼测试是用来验证可执行的目标代码。

代码验证

ISO 26262提供几个选项验证软件设计和实现。基于模型的设计,您可以比较模型覆盖代码覆盖使用仿真软件覆盖在software-in-the-loop (SIL)测试,或者你可以使用仿真软件代码检查员™。万博1manbetx

最后,您可以检查MISRA遵守Polyspace错误发现者™。使用MISRA检查和代码覆盖分析特别有用如果你的项目包括一个混合的生成和手动编码软件。为了更加严格,您可以使用Polyspace代码验证™来证明没有运行时错误,如被零除。

IEC资格认证工具包提供了工具支持,对Polyspace TUV SUD证书和报告,万博1manbetx®s manbetx 845产品。

在编译和生成可执行代码之后,您可以重用模型试验目标处理器上执行的代码使用公益诉讼测试(图6)。

笔记本电脑连接到一个小电路板,连接到一个电动马达。

图6。公益诉讼为嵌入式处理器的例子。

ISO 26262高度建议背靠背测试ASILs C和d .笔记中测试的重要性代表目标硬件环境和压力之间的差异需要意识到测试和硬件环境:

测试环境和目标环境之间的差异可能出现在源代码中或对象的代码,例如,由于不同宽度的数据字和地址字处理器。

但正如每一个计算机科学家应该知道[6],有很多潜在的跨平台数字差异来源,尤其是对浮点数据。一些开始轻微但积累和增长,特别是在反馈控制系统。因此,ISO 26262列出各种循环中的连续测试方法:

软件单元测试可以在不同环境中执行,例如:

-model-in-the-loop测试;
-software-in-the-loop测试;
-processor-in-the-loop测试;和
-hardware-in-the-loop测试。

万博1manbetx仿真软件测试自动化循环中的测试,包括硅和公益诉讼与仿真软件实时嵌入式编码器和边境™,并提供通过/失败报告与覆盖率度量模型的报道。

工具资格

ISO 26262 - 8描述了额外的支持过程,包括变更控制、配置万博1manbetx管理和文档。支持这些过程仿真软件项目,仿真软件模型差万博1manbetx分和合并,分别和仿真软件报万博1manbetx告生成器™。

标准的分类和资格指导还提供了工具。它需要用户资格的具体项目的工具。IEC认证工具有效地对工具通过提供典型的用例,参考工作流,工具分类分析,软件工具文档、工具资格计划,和验证测试。如果您的项目涉及到支持用例和参考工作流,可以生产所需工具合万博1manbetx格工件通过调整认证工具包的模板文件,在您的开发环境中执行验证测试。

德国莱茵SUD MathWorks审查和审计®工具开发和质量流程,以及错误报告功能和工具资格预审的工件,在每个产品发布和认证结果。IEC认证组件包括这些技术人员证书和报告,这是基于需要遵循适当的验证和确认工作流程。工具包提供了参考工作流基于典型工具用例,如本文中突出显示。

这个工具包提供了更详细的信息,包括ISO 26262的目标映射到仿真软件支持能力(图7)。万博1manbetx万博1manbetx

一个表显示了ISO 26262的目标映射到基于模型的设计工具。

图7。摘录ISO 26262 -模型映射在IEC认证工具包万博1manbetx。

ISO 26262:2018承认仿真软件和Stateflow适合软万博1manbetx件体系结构和软件设计符号和单位为基础自动代码生成(图8)。

一个表显示软件设计符号和ASIL水平。

图8。摘录ISO 26262 - 6:2018显示合适的软件设计符号。

注意,使用合格的工具不能确保考虑软件或系统的安全。

ISO 26262

ISO 26262是一个国际公路车辆功能安全标准[1]。地址可能危害造成的故障、安全电子/电气(E / E)系统。它使用一个汽车安全完整性水平(ASIL)作为风险分类名称从a到D, ASIL D表示最高的诚信水平。指南的标准有九个规范部分,部分地区10和11所示。12是一个适应的一部分对摩托车零件1 - 11。每个部分提供的标准是作为一个单独的文档。ISO 26262是基于目标而不是规定性的性质,但也包含几百页的指导。部分4、6和8个地址系统(ISO 26262 - 4),软件(ISO 26262 - 6)和工具资格(ISO 26262 - 8)。

2022年出版的

引用

  1. ISO 26262:2018公路车辆-功能安全

  2. ISO 26262 - 6:2018公路车辆功能安全- 6:在软件产品开发水平

为相关行业观点文章