主要内容

生成和打包AUTOSAR合成XML描述和组件代码

如果你有金宝app®编码器™和嵌入式编码®软件,从AUTOSAR架构模型,您可以:

  • 导出组合和组件AUTOSAR XML (ARXML)描述并生成组件代码。

  • 可以选择创建一个ZIP文件来从模型层次结构打包构建工件,例如,用于重新定位和集成。

  • 可选地,对于AUTOSAR ECU配置,导出一个ECU提取,将组成中的软件组件映射到AUTOSAR ECU。

您可以导出整个体系结构模型、嵌套组合或单个组件。如果您启动一个包含组合的导出,那么导出将包括组合、组件原型、组合端口和连接器的XML描述。

配置组合XML选项

要准备导出ARXML文件,请检查和修改XML选项。在导出过程中,模型中的每个组件继承在体系结构模型级别指定的XML选项。

打开一个体系结构模型,例如示例模型autosar_tpc_composition.(要在本地工作文件夹中打开模型,请使用openExample(“autosar_tpc_composition”).)

要在体系结构模型级别检查XML选项,请从建模选项卡上,选择出口>配置XML选项.AUTOSAR字典在XML Options视图中打开。

您所做的修改会被层次结构中的每个组件继承。有关更多信息,请参见配置AUTOSAR XML选项

系统包选项只应用于合成级别。如果您为体系结构模型中的一个组合导出ECU提取,系统包指定要在组合ARXML中生成的系统包路径。有关更多信息,请参见出口成分ECU提取

导出组合XML和组件代码

为架构模型导出ARXML文件并生成代码:

  1. 打开一个体系结构模型,例如示例模型autosar_tpc_composition.(要在本地工作文件夹中打开模型,请使用openExample(“autosar_tpc_composition”).)

  2. 要导出体系结构模型,请从建模选项卡上,选择出口>生成代码和ARXML.在导出组合对话框中:

    • 指定将生成的文件打包在其中的ZIP文件的名称。

    • 也可以指定存放导出的ARXML文件的文件夹路径。

    • 如果您想从合成中导出ECU提取,请选择出口ECU提取.有关更多信息,请参见出口成分ECU提取

    要开始导出,请单击好吧

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

  4. 展开ZIP文件。它的内容组织在arxmlsrc文件夹。

  5. 检查arxml文件夹中。每个AUTOSAR组件都有组件和实现描述文件,而体系结构模型有组合、数据类型、接口和时序描述文件。组合文件包括对组合、组件原型、组合端口和连接器的XML描述。数据类型、接口和计时文件聚合了来自整个体系结构模型层次结构的元素。

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

要导出体系结构模型中的嵌套组合或单个组件,请使用组合或组件块提示或右键单击选项。例如,右键单击组件块并选择出口组件.从体系结构模型导出的组件继承在体系结构模型级别指定的XML选项。

在体系结构模型中,为了导出,AUTOSAR模式版本必须在体系结构模型和层次结构中的组件模型之间匹配。如果导出标记了版本差异,请修复组件模型或体系结构模型中的差异。要查看架构模型模式版本,请打开“配置参数”对话框。在建模选项卡上,选择模型设置.在对话框中,导航到AUTOSAR代码生成选项窗格。

要以编程方式从体系结构模型层次结构导出,请使用体系结构功能出口.例如,生成和打包ARXML文件和示例模型代码autosar_tpc_composition

% Load AUTOSAR架构模型archModel = AUTOSAR .arch. loadmodel ('autosar_tpc_composition');% Export ARXML描述和代码到ZIP文件导出(archModel,'PackageCodeAndARXML','myArchModel.zip');

出口成分ECU提取

您可以从AUTOSAR体系结构模型中的组合中导出ECU提取。ECU提取是AUTOSAR ECU配置的重要输入。在AUTOSAR架构中,顶级组合可以对映射到一个AUTOSAR ECU的软件组件进行建模。要创建ECU作用域系统的软件描述,您可以从组合中导出ECU摘录。

在开放体系结构模型中,您可以使用Simulink Toolstrip、软件体系结构画布或金宝app出口函数。例如,从建模选项卡上,选择出口>生成代码和ARXML.在“导出组合”对话框中,选择该选项出口ECU提取.要开始导出,请单击好吧

为了生成ECU提取,软件自动将组合中的软件组件映射到ECU。如果组合包含嵌套的组合,则软件使用组合层次结构的扁平版本,只包含组件。例如,这些函数调用导出AUTOSAR示例体系结构模型的ECU提取autosar_tpc_composition,其中包含嵌套的组合。

%加载和导出AUTOSAR架构模型,生成ECU提取addpath(fullfile(matlabroot,'/examples/autosarblockset/main'));archModel = autosar.arch.loadModel(“autosar_tpc_composition”);打开(archModel);%在编辑器中打开加载的模型(可选)出口(archModel, ExportECUExtract,真的);

出口函数调用生成ECU提取到文件中System.arxml,它位于合成文件夹中。ECU提取autosar_tpc_composition映射来自顶层组合和嵌套组合的组件传感器组成到一个ECU。

<系统UUID = "……" > <字>EcuExtract ECU_EXTRACT   SystemMapping   SwcToEcuMapping   / / TPC_Composition / Ctrl组件< / TARGET-COMPONENT-REF > < / COMPONENT-IREF >…< COMPONENT-IREF > < TARGET-COMPONENT-REF DEST = " SW-COMPONENT-PROTOTYPE " >/ / TPC_Composition / PedalSensor组件   < ecu-instance - ref dest =" ecu-instance ">/系统/ EcuInstance     < root - software - components > < root-sw-composition-prototype uuid ="…">  rootswcomposition - prototype   ./组件/ TPC_Composition   < ecu-instance uuid ="…" > <字>EcuInstance< /字> < / ECU-INSTANCE >

要为包含ECU提取的系统包指定AUTOSAR包路径,请使用组合XML选项系统包.查看系统包路径值,从建模选项卡上,选择出口>配置XML选项

或者,使用AUTOSAR属性函数配置AUTOSAR系统包路径得到

%设置AUTOSAR系统包路径addpath(fullfile(matlabroot,'/examples/autosarblockset/main'));archModel = autosar.arch.loadModel(“autosar_tpc_composition”);arProps = autosar.api.getAUTOSARProperties(“autosar_tpc_composition”);集(arProps,‘XmlOptions’,‘SystemPackage’,‘/系统);systemPackage =得到(arProps XmlOptions, systemPackage);

有关分层AUTOSAR包结构的更多信息,请参见配置AUTOSAR包

另请参阅

||

相关的话题