主要内容

作者AUTOSAR建筑模型中的经典组合和组件

通过使用体系结构模型为经典平台开发AUTOSAR组合和组件。

AUTOSAR体系结构模型为开发AUTOSAR组合和组件模型提供了资源和画布。从架构模型中,您可以:

  • 添加和连接AUTOSAR组合和组件。

  • 创建用于分析的架构视图。

  • 将组件链接到需求(需要需求工具箱)。

  • 通过创建、导入或链接Simulink模型来定义组件行为。金宝app

  • 配置调度和模拟。

  • 导出组合和组件ARXML描述并生成组件代码(需要Embedded Coder)。

体系结构模型提供了端到端的AUTOSAR软件设计工作流。在Si金宝appmulink中,您可以编写高级应用程序设计,实现应用程序组件的行为,添加基本软件(BSW)服务调用和服务实现,并模拟应用程序。

创建架构模型

要开始在软件架构画布中开发AUTOSAR组合和组件,请创建一个AUTOSAR架构模型(需要System Composer)。

1.输入MATLAB命金宝app令打开Simulink起始页金宝app

2.在选项卡,向下滚动到AUTOSAR块集,并展开模型模板列表。将光标放在软件架构模板,单击创建模型

打开一个新的AUTOSAR体系结构模型。

3.探索软件体系结构画布中的控件和内容。

  • 在Simuli金宝appnk工具条中建模TAB支金宝app持用于体系结构建模的常见任务。

  • 在模型窗口的左侧,调色板包括用于向模型添加不同类型的AUTOSAR组件的图标。对于经典架构,支持的组件块包括经典组件(classic金宝app component)、软件组合(Software Composition)、基本软件建模(BSW modeling)、诊断服务组件(Diagnostic Service component)和NVRAM服务组件(NVRAM Service component)。

  • 组合编辑器提供了基于AUTOSAR虚拟功能总线(VFB)的AUTOSAR软件体系结构视图。模型画布最初是空的。

autosar_arch_initial.png

你选择架构平台,经典的平台自适应平台,来自建模选项卡。默认是经典的。不支持在同一体系结构模型中混合经典组件和自适应组件。金宝app

这个例子构造了一个油门位置控制应用程序。在新的经典体系结构模型中执行步骤或参考示例模型autosar_tpc_composition,显示最终结果。

打开示例模型autosar_tpc_composition供参考open_system (“autosar_tpc_composition”

添加组合和组件以及链接实现模型

创建AUTOSAR体系结构模型后,使用组合编辑器和Simulink Toolstrip金宝app建模选项卡添加和连接组合和组件。

AUTOSAR应用程序的行为是由其AUTOSAR组件定义的,您可以将这些组件链接到Simulink实现模型。金宝app为了方便起见,这个例子为每个AUTOSAR组件提供了一个Simulink实现模型:金宝app

  • autosar_tpc_throttle_sensor1.slx为组件TPS_Primary

  • autosar_tpc_throttle_sensor2.slx为组件TPS_Secondary

  • autosar_tpc_throttle_sensor_monitor.slx为组件监控

  • autosar_tpc_pedal_sensor.slx为组件PedalSensor

  • autosar_tpc_controller.slx为组件Ctrl

  • autosar_tpc_actuator.slx为组件致动器

四个油门位置控制组件是传感器组件,本例中放置在传感器组成。

在您的架构模型中:

1.创建一个嵌套的传感器合成,添加一个软件组成块。例如,在建模选项卡上,选择软件组成并在画布中插入一个软件组合块。在突出显示的名称字段中输入传感器

2.打开传感器块,以便模型画布显示组合内容。在构图内部,添加经典的组件块来表示命名为AUTOSAR的组件TPS_PrimaryTPS_Secondary监控,PedalSensor。例如,在建模Tab,可以选择经典的组件创建每一个。

3.将每个AUTOSAR传感器组件链接到实现其行为的Simulink模型。金宝app例如,选择TPS_Primary组件块,将光标放在显示的省略号上,然后选择提示链接到模型

在“链接到模型”对话框中,浏览到实现模型autosar_tpc_throttle_sensor1.slx

要将组件链接到实现模型,请单击好吧

在架构模型中,当您开始将组件块链接到实现模型时,软件将验证指定的模型是否满足链接要求。例如,实现模型必须使用与体系结构模型相同的目标,使用固定步骤求解器,并使用根级总线端口。如果实现模型不满足一个或多个链接需求,该软件将打开AUTOSAR model Linker应用程序,该应用程序将为未满足的需求提供修复。有关更多信息,请参见实现模型链接

为本例提供的实现模型满足链接需求。

4.在链接每个模型之后,您可以调整相关的组件块的大小,以便更好地显示组件端口。

5.将组件彼此连接并连接到组合根端口。

  • 要连接组件,请将一条线从组件提供端口拖到另一个组件接收端口。

  • 将组件连接到传感器组合根端口,从组件端口拖到传感器组合边界。

可选地,以精确匹配示例模型中的根端口命名autosar_tpc_composition,重命名端口TPS_HwIO而且TPS_HwIO1TPS1_HwIO而且TPS2_HwIO

6.返回到架构模型的顶层。要完成应用程序,添加两个Classic Component块并命名它们Ctrl而且致动器。将AUTOSAR组件链接到它们的Simulink实现模型,金宝appautosar_tpc_controller.slx而且autosar_tpc_actuator.slx。连接传感器成分,Ctrl组件,致动器组件之间和架构模型边界之间的连接。

7.要检查接口或数据类型问题,请更新体系结构模型。在建模选项卡上,选择更新模型。如果发现问题,将您的模型与示例模型进行比较autosar_tpc_composition.slx

8.保存具有唯一名称的模型,例如myTPC_Composition.slx

可选:为分析创建架构视图

为了帮助分析AUTOSAR体系结构模型的结构和功能方面,您可以创建模型层次结构的筛选视图。在建模选项卡,在体系结构视图菜单:

  • 选择关注的焦点创建聚光灯视图。

  • 选择体系结构视图创建具有分组标准的自定义视图。

要帮助分析组件或组合依赖关系,请创建聚光灯视图。聚光灯视图是捕获其上游和下游依赖关系的体系结构组件或组合的简化视图。

对于本例,选择组件监控,在示例模型中autosar_tpc_composition或者在您创建并保存的体系结构模型中。在建模选项卡上,选择架构视图>聚光灯

聚光灯视图打开并显示组件或组合在层次结构中连接到的模型元素。聚光灯图是自动布局的,不能编辑。

您可以选择在单独的、持久的模型窗口中创建聚光灯视图。用更改更新架构模型图会刷新打开的聚光灯视图。在聚光灯视图中,您可以移动聚光灯焦点。

要创建具有更复杂过滤条件的自定义视图,请使用架构视图库。在建模选项卡上,选择体系结构视图。自定义视图可以与体系结构模型一起保存,然后由协作用户访问和共享。有关更多信息,请参见为AUTOSAR体系结构分析创建概要文件、原型和视图

可选:将组件链接到需求(需求工具箱)

如果您有需求工具箱软件,您可以将架构模型中的组件链接到需求。示例文件夹提供了示例需求文件TPC_Requirements.slreqx。该文件包含四个油门位置控制应用程序组件的要求。

将组件链接到需求:

1.打开要求经理在架构模型窗口中,使用需求选项卡打开,需求浏览器停靠在底部。

2.在需求浏览器中,打开需求集TPC_Requirements.slreqx。需求集包含模型中四个组件的需求。

3.要将AUTOSAR组件链接到需求,请将需求从Requirements Browser拖到组件块中。例如,将需求4拖到致动器组件块。

有关更多信息,请参见将AUTOSAR组件链接到需求

配置和运行模拟

若要模拟AUTOSAR体系结构模型中聚合组件的行为,请单击运行

如果尝试运行本例中构造的经典体系结构模型,则会出现一条错误消息,报告没有为基本软件(BSW)函数调用方块找到函数定义。其中三个组件实现模型包含需要BSW服务实现的BSW函数调用。

要查看这些函数调用,请打开架构模型,例如,myTPC_Composition.slx。在调试选项卡上,选择信息覆盖>功能连接器。此选项列出了每个具有函数的模型的函数连接器。要查看具有BSW函数调用的模型,请打开传感器组成。

这些模型包含对诊断事件管理器(Dem)和NVRAM管理器(NvM)服务的函数调用。在模拟应用程序之前,必须添加诊断服务组件而且NVRAM业务组件积木到顶层模型。

添加和配置服务实现块:

1.返回到体系结构模型的顶层,并选择建模选项卡。的实例选择并放置诊断服务组件还有一个例子NVRAM业务组件。要将函数调用者连接到BSW服务实现,请更新模型。

2.检查BSW函数调用方客户端端口到BSW服务id的映射。Dem客户端端口对应Dem服务事件id, NvM客户端端口对应NvM服务块id。

对于本例,更新Dem映射。打开DEM/FIM块对话框,选择RTE选项卡,输入显示的事件ID值。点击好吧。有关BSW ID映射的详细信息,请参见模拟AUTOSAR基本软件服务和运行时环境

现在可以对体系结构模型进行模拟了。点击运行

将架构模型连接到包含植物模型和踏板输入的测试线束

为了向油门位置控制仿真提供模拟踏板输入,您可以将架构模型置于测试线束模型中。测试线束可以提供带有踏板输入块的植物模型。参考示例测试控制模型autosar_tpc_system.slx

要将架构模型连接到测试工具:

1.插入一个Model块。

2.配置Model块以引用您的架构模型,例如,myTPC_Composition.slx

3.在Model块对话框中,选择该选项进度率。对于相关参数使用中,选择时间表编辑器。油门位置控制组件具有显式分区,您可以使用计划编辑器进行调度。

4.将架构模型端口连接到测试线束信号。

现在可以对测试线束模型进行模拟了。点击运行。在模拟应用程序时,油门位置范围指示架构模型中的油门位置控制算法跟踪油门踏板输入的情况。

在测试集线器模型中,从引用的AUTOSAR体系结构模型的model块中,您可以使用Schedule Editor为组件可运行程序调度速率。要打开日程编辑器,单击模型块上方的日程编辑器徽章。在Schedule Editor显示中,您可以可视化和控制应用程序组件中可运行程序(分区)的执行顺序。有关更多信息,请参见使用日程编辑器配置AUTOSAR可运行执行顺序,配置AUTOSAR调度和仿真

生成和打包ARXML描述和组件代码(嵌入式编码器)

如果您拥有Simulin金宝appk Coder和Embedded Coder软件,则可以导出组合和组件AUTOSAR XML (ARXML)描述,并从AUTOSAR体系结构模型生成组件代码。可选地,创建一个ZIP文件来打包模型层次结构的构建构件,例如,用于重新定位和集成。

导出ARXML文件并生成代码:

1.打开本例中构造的体系结构模型或打开示例模型autosar_tpc_composition.slx

2.要准备导出ARXML,请检查和修改XML选项。在建模选项卡上,选择出口>配置XML选项。AUTOSAR字典在XML Options视图中打开。在体系结构模型级别指定的XML选项在模型中的每个组件导出期间继承。

3.生成并打包代码用于节气门位置控制的应用,对建模选项卡上,选择出口>生成代码和ARXML。在“导出组合”对话框中,指定打包生成文件的ZIP文件的名称。单击,开始导出好吧

在构建体系结构模型时,您可以在Diagnostic Viewer中查看构建日志。首先构建组件模型,每个都作为独立的顶级模型构建。最后,导出组合ARXML。构建完成后,当前文件夹包含架构模型和层次结构中每个组件模型的构建文件夹,以及指定的ZIP文件。

4.展开ZIP文件。它的内容被组织在arxml而且src文件夹。

5.检查arxml文件夹中。在这个例子中,因为XML选项导出XML文件打包设置为模块化的,XML被导出到多个文件中,根据所包含的信息类型命名。每个AUTOSAR组件都有组件和实现描述文件,而体系结构模型有组合、数据类型、接口和定时描述文件。组合文件包括组合、组件原型以及组合端口和连接器的XML描述。数据类型、接口和定时文件聚合了来自整个体系结构模型层次结构的元素。在构造型和概要文件中捕获的非功能性属性不包括在描述文件中。

6.检查src文件夹中。每个组件模型都有一个构建文件夹,其中包含来自独立模型构建的构件。

相关链接