主要内容

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

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

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

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

  • 可选地,对于AUTOSAR ECU配置,导出将组合中的软件组件映射到AUTOSAR ECU的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.在Export Composition对话框中:

    • 指定用于打包生成文件的ZIP文件的名称。

    • 可选地,指定存放导出ARXML文件的文件夹的路径。

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

    单击,开始导出好吧

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

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

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

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

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

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

要以编程方式从架构模型层次结构中导出,请使用架构函数出口.例如,生成并打包ARXML文件并为示例模型编写代码autosar_tpc_composition

加载AUTOSAR架构模型archModel = AUTOSAR .arch. loadmodel ('autosar_tpc_composition');%导出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 dest =" sw-component-prototype ">/ / TPC_Composition / PedalSensor组件   < ecu-instance - ref dest =" ecu-instance ">/系统/ EcuInstance     < root - software - composition > < root-sw-composition-prototype uuid ="…"> RootSwCompositionPrototype  ./组件/ 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 = get(arProps,'XmlOptions',' systemPackage ');

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

另请参阅

||

相关的话题