AUTOSAR经典&适应了简单的基于模型的设计
概述
基于模型的设计提供许多优势传统开发提供高级设计抽象和生产代码的自动生成。AUTOSAR建模和代码生成的软件组件允许您指定的过程自动化,并同步冗长的标识设计,代码,描述文件。
加入我们学习仿真软件推进支持AUTOSAR A万博1manbetxUTOSAR经万博1manbetx典特性建模和自适应软件应用程序,创建AUTOSAR软件体系结构,模拟AUTOSAR成分和ecu, C / c++代码生成生产。
MathWorks工程师将提供最新的AUTOSAR标准的简要概述,包括经典和自适应平台,提供产品演示展示如何使用仿真软件,AUTOSAR Blockset和嵌入式编码设计、模拟、验证,并生成代码AUTOSAR应用软件组件。万博1manbetx
突出了
- 万博1manbetx仿真软件对AUTOSAR经典
- 万博1manbetx为适应平台仿真软件
- 编写软件架构
- 生产C和c++代码生成
- AUTOSAR软件组件的验证和ISO 26262认证
的主持人
在MathWorks Shwetha Bhadravathi帕蒂尔是一个产品经理,致力于AUTOSAR和代码生成产品。s manbetx 845Shwetha MathWorks之前,作为嵌入式软件工程师工作了德尔福汽车基于AUTOSAR项目和技术销售工程师在模拟设备公司。
记录:2020年11月17日
大家好。欢迎来到网络研讨会上AUTOSAR经典和适应性与基于模型的简单设计。所以我Shwetha Bhadravathi帕蒂尔、产品经理AUTOSAR Blockset MathWorks。这是我们今天的日程我。首先,我将给你AUTOSAR的概况,然后讨论仿真软件对AUTOSAR经典和最新的支持我们从AUTOSAR Blockset万博1manbetx提供,然后我将讨论对AUTOSAR自适应模型。万博1manbetx
让我开始提供你AUTOSAR的概述。在这里,你可以看到non-AUTOSAR AUTOSAR和经典。当你看到在non-AUTOSAR架构、应用软件和基本软件紧密集成。层看起来很僵硬。应用软件依赖于硬件,而在AUTOSAR经典,它有一个分层架构。这将提供一个清晰的标准软件和硬件相关的高级应用功能。实际上,硬件和软件将广泛相互独立的,和软件将增加模块化和可转移性的特点。
因此,发展可以解耦水平层。这减少了开发时间和成本。在OEM软件的重用也增加,以及供应商。这提高质量和效率,减少投放市场的时间。
经典的软件架构遵循ieee沟通和静态分配的ecu软件组件和支持整体更新。万博1manbetx这是对传统的汽车应用程序,包括身体控制模块、动力系统,等等。为了满足高度自主驾驶的应用程序的需要,介绍了自适应AUTOSAR的AUTOSAR的组织。它利用更多的计算能力和满足需求的可伸缩性和容易更新。自适应创建AUTOSAR基于面向服务的体系结构的新范式,实现应用程序的组合系统中可用的服务。
这个概念,应用程序可以动态重新配置自己基于新的和更新的服务,以满足可伸缩性和容易更新。好消息是仿真软件,你可以设计你的软件一次,然万博1manbetx后配置并将其部署到许多目标后多个架构。重点是开发人员可以从遗留模型和配置它的经典或自适应体系结构,而不是每次都从头开始。
您还可以将现有组件迁移到新架构通过使用现有的工作流。仿真软件,您可以万博1manbetx设计、部署模型和模拟遗留ecu AUTOSAR经典或自适应应用程序或fpga和gpu要求应用,如电机控制和自动驾驶的应用程序。AUTOSAR经典很流行,它已经在路上了。我们提供经典AUTOSAR支持从过去10年的生产目的。万博1manbetx
所以在这张幻灯片,我列出了用户从AUTOSAR客户文章和演讲。FCA描述他们的完整的开发过程从需求到建模和仿真软件的代码生成对AUTOSAR车载测试软件。万博1manbetx所以宝马,AUTOSAR联盟的创始成员之一,谈到使用基于模型的开发和AUTOSAR在敏捷工作流与持续集成。
约翰迪尔提供了一个有趣的谈论他们如何使用AUTOSAR和基于模型的设计来处理复杂的农业机械的挑战。LG化学和Magneti公司讨论开发AUTOSAR软件在上下文的ISO 26262标准的遵从性和一种香料。最后,IDNEO提供了一个不同的角度使用AUTOSAR工具链发展的复杂的设备驱动程序。他们报道70%更快的开发时间和设计阶段中发现80%的错误而不是在硬件测试。
好,现在让我谈谈对AUTOSAR经典模型。万博1manbetx在这里,我们看到一个放大AUTOSAR古典建筑的代表。应用层包含算法软件的一部分,它分为软件组件。所有软件组件和基本软件之间的通信是通过RTE路由的标准化接口。通过这种方式,RTE巴士就像一个虚拟函数。
万博1manbetx使用仿真软件客户应用软件的建模和代码生成。如果您正在使用一个架构定义AUTOSAR创作工具,您可以导入或导出模型的软件描述文件或ARXML文件。万博1manbetx从发布2019 b,你可以直接使用系统作曲家创造组合模型在仿真软件环境和有一个版本的建筑模型与仿真软件实现紧密集成。万博1manbetx我们稍后会详细讨论这个。所以最后AUTOSAR Blockset,可以模拟基本的软件服务。所以在这种方式,您可以模拟功能行为的应用程序软件仿真软件中直接调用基本软件服务。万博1manbetx
好,现在我将向您展示如何non-AUTOSAR模型转换为一个AUTOSAR模型。这里,我有一个简单的仿真软件模型,我想直接转化成A万博1manbetxUTOSAR。,我要发动AUTOSAR组件应用程序。它将启动快速启动。在这里,你可以选择组件类型。创建模型参考,这样你就可以映射模型的软件组件。
在这里,您可以创建默认的基于仿真软件模型从一个ARXML或导入。万博1manbetx
好的,快速启动工具做了映射。现在让我发射映射的代码,你可以看到这些函数如何映射到可运行在AUTOSAR。在右边,有一个选项来更改代码的属性。在这里,你可以看到仿真软件端口映射到AUTOSAR元万博1manbetx素。再一次,在这里,你可以改变通信属性等等。
AUTOSAR的字典,你可以看到这些接收机端口配置和运行的配置。你可以点击runnable,然后改变(听不清)的事件。默认情况下,它被设置为TimingEvent。还有一个interrunnable变量。这就是数据元素发送一个接收器接口相关联。
在这里,您可以更改XML选项,按你的需要。一旦你是快乐的,现在你可以去配置参数设置。和你可以去AUTOSAR代码创窗格。在这里,你可以选择你想生成代码的模式一个ARXML 4。
现在我们准备做一个代码生成。让我继续生成代码。好吧,在这里你可以看到创建代码生成报告。(听不清)视图中,你可以点击一个生成的代码的函数。它将显示在相应的块。如果你点击一个模型块,它将显示相应的代码。万博1manbetx你也可以查看ARXML文件生成的。
通过这种方式,您可以转换non-AUTOSAR模型为AUTOSAR模式。现在我要谈谈AUTOSAR工作流。如果你已经有一个现有的仿真软件模型,您可以配置AUTOSAR直接万博1manbetx在仿真软件。或者你也可以从作曲家创作你的架构系统。然后连接配置的AUTOSAR系统架构模型在仿真软件模型作曲家。万博1manbetx一旦你满意你的发展,你可以生成代码并使用嵌入式ARXML编码器。这称为自底向上的工作流。
另一方面,如果你开始在一个第三方的创作工具,您可以导出一个ARXML,可以导入仿真软件或系统的作曲家。万博1manbetx这创建了一个预配置的系统模型和体系结构模型的骨架模型的作曲家,你只需要添加的实现。万博1manbetx这称为自顶向下流程。
最后一个工作流是前两个的组合。如果您使用的是一个编写工具,你仍然可以与系统进行架构更改作曲家或仿真软件。万博1manbetx在这种情况下,生成的ARXML文件必须回到第三方进口创作工具来保持一致性。这叫做圆的跳闸。
在这里,我将向您展示一个演示自下而上通过创建AUTOSAR工作流体系结构模型。万博1manbetx我将演示的创作ARXML代码生成通过构建一个符合AUTOSAR的油门位置控制系统。这里是组件模型的实现。例如,控制器模型和节气门传感器模型。接下来,我们可以通过推出作者架构模型开始页面。万博1manbetx
让我打开软件架构模板。打开一个新的AUTOSAR架构模型。在这个新的仿真软件工具条万博1manbetx,架构建模的建模选项卡支持常见的任务。万博1manbetx这里,面板包括软件组件的图标,软件组成和基本软件建模,包括诊断和NvM与模型服务组件采取行动。
这个目的构建编辑器被称为合成编辑器。它提供了一个视图的AUTOSAR软件架构基于AUTOSAR总线虚拟函数。现在让我清晰的从窗口默认内容,这样我就可以构造一个新的成分。因为我们有一堆传感器组件,让我创建一个sub-composition架构传感器。内部传感器,我们可以添加一个组件和可能称之为TPS_Primary。
注意有选项来创建一个新的模型为该组件模型。万博1manbetx你可以链接到现有的模型从一个ARXML模型并创建一个组件万博1manbetx。在这里,我们将链接到一个AUTOSAR_Throttle_sensor1模型。注意组件上的徽章的变化来反映组件模型指定的类模型。万博1manbetx同样的,我们将添加其他传感器组件和连接。
组合编辑器重用所有伟大的事情你喜欢模型的直观万博1manbetx编辑功能。它会自动减少杂波你线连接。
好吧,现在我们组装构成层次结构,我们可以清除任何更新模型集成问题。所有好的去。现在我们将拯救我们的模型,称之为myTPC组成。您可以使用任何常规仿真软件模型相同的扩展。万博1manbetx
现在,我们已经创建了我们的作文,我将向您展示一个与仿真软件的集成需求。万博1manbetx让我打开需求管理器应用程序。它打开需求选项卡,这样我们可以打开需求集。注意,它包含四个节气门位置控制应用程序的组件。在AUTOSAR组件链接到一个需求,我们可以拖动的要求从浏览器到组件。
现在的下一步自然工作流应用V, V通过模拟组成。,我们将打开功能连接器可视化组件模型可能调用的函数调用。节气门传感器模型调用在排雷NvM服务功能和诊断功能。模拟,让我添加的参考实现诊断和NvM服务组件块。
让我们再次更新模型。好了,现在我们可以为客户端端口配置IDs。接下来,我想连接构成真正的刺激输入和输出数据。我有我们的测试在这个模型节气门体植物和踏板输入。我们将添加一个模型块和参考TPC组成,然后连接输入和输出。
现在我将安排我的作文的所有入口点可运行组件使用时间表编辑器。我可以想象和控制可运行的执行顺序。看起来很好。现在让我点击播放,以确保你的算法是符合您的要求。它看起来很酷。
现在让我为组件生成AUTOSAR代码和出口整个ARXML组成。现在成分,通常是处理组件的数量,因此生成的构件。这里,我们使您易于收集所有这些工件所以你准备好下一步工作流程,可能没有外部环境集成。
这已经开始构建组件模型,这个查看器显示进展。注意,有六个组件构建组件的组件。现在它是创建ARXML组成。好的,有两个子文件夹名为ARXML和源。ARXML文件夹,每个AUTOSAR组件组件和实现描述文件,而体系结构模型组成,数据类型和接口描述文件。
源文件夹,您将看到每个组件的代码。通过这种方式,您可以创建架构模型组成,然后生成代码。此外,你可以尝试使用这个脚本可以生活在这个例子文档。
现在让我给你演示的自上而下的工作流。首先我将进口成分描述。导入的过程组成的体系结构应该很熟悉的用于组件进口国。但这是我们重要的组成和系统描述作曲家,我们创建了架构模型在前面的演示。
这是一个创建ARXML第三方工具。注意,这是为4.2.2创建。我可以使用这个API创建一个新的体系结构模型和对象。那么API我打开一个架构模板。这里,我要去建模选项卡。然后使用这个从ARXML进口选项。
这进口程序会问你选择ARXML你想进口。如果你想要,你可以配置建模选项。这个导入应用程序创建一个框架体系结构模型。请注意,这是创建所有五个组件的体系结构模型。
好了,这是一个体系结构模型。让我们继续看看建模设置。让我进入代码生成的面板。是的,它已经在schema 4.2进口。在这个组合模型,在该组件,您可以扩展添加一个仿真软件模型。万博1manbetx同时你可以看到标志代表了组件类型。现在添加你的逻辑后,准备在ARXML出口代码。
总而言之,在演示中,我们有进口ARXML使用此选项。此外,您还可以使用该importFromARXML API这篇作文描述导入到我们的体系结构模型。再一次,这个例子也可作为一个生活脚本演示。你可以试着更了解这个特性。
现在让我谈谈AUTOSAR时机扩展规范。当你意识到汽车问题的复杂性的增长,它包括两到三个核心,大概15到20任务,数以百计的RTE事件任务的关系。一些任务可能映射到50到60可运行事件。所以集成成为一个重要和关键任务,任务分配给核心。
因此,AUTOSAR引入一个概念叫做时间扩展提供时间指导系统建设的需求和分析和验证系统的时间行为。在这里,你可以看到有许多可运行任务,然后映射到一个代码。同时,重要的是要保护功能行为和及时执行。
这里的问题是执行顺序应可运行是什么?那么你怎么知道你有什么订单评估或模拟该模型?很难告诉与数据依赖性。让我试试这个如何执行顺序影响最终的结果。在这里,我们的端口被连接到一个范围检查的最终结果。如果runnable R1执行之前运行的R2,你会得到一个这样的图。但是如果我把执行顺序,结果会改变。延迟与不同的值是完全不同的。
客户提到的这些信息是非常重要的。我们出口进一步使用的执行顺序。这里,我有一个例子来展示我们支持执行顺序约束模型。万博1manbetx万博1manbetx这里,有一个仿真软件模型,它有多个可运行万博1manbetx。你可以看到它的执行顺序可以在时间表编辑器。我被拖拽改变执行顺序。现在我将继续验证,然后生成代码。你可以看到在这ARXML执行顺序约束。
总结,在释放20 b,我们支持执行顺序约束的导入和导出,包括可运行的时间表万博1manbetx编辑器修改和执行顺序和ARXML文件和更新与ARXML AUTOSAR组件模型改变执行顺序约束。AUTOSAR Blockset总结,你可以AUTOSAR经典模型和模拟软件,你可以采用多个工作流设计导入、更新和出口软件描述文件,包括它的时间扩展。然后你可以作者AUTOSAR成分系统作曲家和进出口组成ARXML文件并生成优化的C代码用于生产目的。
所以我想提到AUTOSAR Blockset可用于开发周期的每个阶段。你可以链接模型与需求和模型软件组成,组件和子组件的水平。而且,您可以验证您的设计通过模拟和优化您的软件。这包括模拟AUTOSAR基本的软件服务。
从组件生成C代码。验证工作流使用硅和公益诉讼仿真软件测试,以确保足够的覆盖算法。万博1manbetx我们还生成ARXML,包括组合ARXML和包到拿起工具链的下一个元素。例子,一个RTE生成器。
然后使用嵌入式代码和一个AUTOSAR Blockset,您可以为应用程序生成AUTOSAR代码ASIL d IEC认证工具包开发过程帮助你简化你的ISO 26262。它包含表之间的映射在ISO 26262和相应的基于模型的设计工具,如连续测试,可以执行,工程符合AUTOSAR的代码。
好,现在让我谈谈对AUTOSAR自适应模型。万博1manbetx自适应的层类似于经典,有组件,运行时,基本服务和硬件。也许最大的适应性和经典的区别是,应用程序称为公共接口直接服务的基础,所以API服务面积要大得多。
也许是有用的,自适应不一定是运行在裸露的金属,但可以运行在一个虚拟机。这里还MathWorks工具用于建模的自适应应用程序的代码生成。我要经历的一些适应性的关键概念。
现在关键概念,操作系统提供的多进程POSIX系统能力。然后每个自适应应用程序是一个系统过程,与自己的主要功能,逻辑内存空间和名称空间。现在,如果你看看流程管理,操作系统还提供了进程调度。执行经理提供生命周期管理过程,开始运行,终止流程。通信管理器提供了进程间通信。
现在两个关键概念,使用面向服务的进程间通信。如果你看看之间的IPC流程、IPC可以是本地通信管理器或通过网络,再通过通信管理器。现在,如果你看看沟通的类型,典型的发送方接收客户端服务器。自适应面向服务的,可以分为方法——它更像是功能——通过事件——想消息通信和通信领域,像数据一样思考。到目前为止,我们支持建万博1manbetx模仿真软件的事件的消息。万博1manbetx
第三个关键概念是,一切都是c++。所有的模块和应用程序需要用c++写的。那些对AUTOSAR适应性三个关键概念。这是AUTOSAR适应性路线图。我们现在在第四版的标准。我很高兴说MathWorks开始支持自适应标准从2019年释放。万博1manbetx
在接下来的几张幻灯片,我将这些适应性概念,并向您展示如何为一个自适应模型和生成代码的应用程序模型。万博1manbetx自适应应用程序要求并提供港口,由一个服务接口类型作为我们讨论了。在仿真万博1manbetx软件中,一个自适应应用程序将映射到一个模型。所需端口事件将在模型映射到一个消息。万博1manbetx在这里,我将消息转换为一个信号使用航运AUTOSAR街区对于这个应用程序。
在提供港口方面,这是非常相似的。一种自适应应用程序映射到模型,甚至将映射到一个端口。现在我将向您展示如何在自适应工作流模型。万博1manbetx你也可以导入或导出一种适应性ARXML文件到仿真软件就像我们做的经典ARXML工作流。万博1manbetx
可以从仿真软件模型,您可以通过万博1manbetx使用仿真软件模型转换为AUTOSAR适应他们的数据字典。一旦你满意你的设计,你可以生成代码,然后ARXML。这就叫做自下而上的工作流。或者你可以从创作开始适应应用程序架构,然后ARXML导出,然后导入到仿真软件。万博1manbetx这就叫做自上而下的工作流。迭代之间的自顶向下和自底向上流程叫做圆的跳闸。
现在,让我们看到在行动。这里,我有一个ARXML,创造了在一个创作工具。现在我想,导入仿真软件使用这些两行代码。万博1manbetx好,现在这创造了一个自适应模型框架模型。万博1manbetx注意,在港口和港口创建。现在让我看看代码映射。注意端口映射到AUTOSAR属万博1manbetx性模型,如何将这些需要的端口配置。
在这里,服务发现模式设置为前。我可以切换到动态发现。那么相应的服务接口导入的事件和名字空间。这是你可以选择XML选项。现在在代码映射编辑器中,我们看到哪个模型端口映射到哪个AUTOSAR的事件。万博1manbetx
现在让我们去设置。注意,系统目标文件设置为AUTOSAR适应性和语言设置为c++。在这里,你可以看到进口ARXML的模式。我要保持相同的模式代码生成。好,现在让我添加示例实现车道指导骨架模型。
好,现在让我们继续在ARXML并生成代码。在生成的代码中,它有ARA在相应的地方调用。我们可以看到应用程序、清单和服务清单也ARXML文件被生成。
你刚看到的演示,您可以配置您的应用程序使用一次性服务发现或动态服务发现模式。一次性发现应用程序中找到并订阅在初始化自适应服务一次。一次性发现可能需要自适应服务开始之前,应用程序和阻止应用程序使用新的服务可用。
2020年上映,你也可以使用动态服务发现它在后台监控服务可用性和订阅的自适应服务可用。这将导致一个更健壮的系统。释放2020 b,作为自适应代码生成的一部分,您可以创建一个可执行您的Linux主机上运行时校准机器。您可以运行可执行作为一个独立的应用程序。
自适应AUTOSAR Linux可执行的工具链提供了AUTOSAR自适应功能集群库来编译生成的代码。使用ASAP2发生器应用程序,您可以配置您的ASAP2文件生成指定一个ASAP2文件版本。你可以选择排除或包括评论A2L文件生成。
总之,AUTOSAR Blockset,模型,可以模拟和测试AUTOSAR自适应软件通过自适应建模应用程序事件通信和动态服务发现。你也可以导入和导出适应性ARXML文件。最后,您可以生成优化AUTOSAR为代码生成c++代码。
好吧,现在是你的时间在仿真软件建立AUTOSAR应用程序算法。万博1manbetx开始,你也可以试试这些航运例子和探索最新的特性与AUTOSAR Blockset的支持。万博1manbetx更多地了解AUTOSAR支持,您可以访问我们的AUTOS万博1manbetxAR Blockset页面MathWorks.com。谢谢你听。
相关产品s manbetx 845
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。