主要内容

updateModel

使用 ARXML 更改更新 AUTOSAR 模型或架构

说明

updateModel(ar,modelName) 使用与 arxml.importer 对象 ar 关联的 AUTOSAR XML (ARXML) 文件中的更改更新指定的开放式模型。ARXML 文件必须包含模型映射的 AUTOSAR 软件组件,并且必须适合代码生成。

在将 ARXML 文件的当前版本与以前版本进行比较时,比较例程按以下顺序应用这些规则:

  1. 如果元素具有相同的 UUID 和类型,则元素匹配。函数不更新模型。

  2. 如果元素具有不同 UUID,则元素不匹配。函数使用 ARXML 更改更新模型。

  3. 如果元素具有相同的限定名称,则元素匹配。函数不更新模型。

  4. 否则,元素不匹配。函数使用 ARXML 更改更新模型。

更新器生成并打开报告,其中详细说明对模型所做的更改以及函数未完成的必需更改。您可以使用 OpenReport 参量控制是否打开此报告。

AUTOSAR 包结构更新会影响存储的 AR-PACKAGE 结构,并应用于将来的导出。导入的包结构更新不会影响 AUTOSAR 字典包路径 XML 选项。XML 包路径选项适用于在 Simulink® 中创建的 AUTOSAR 元素,而不是导入的元素。

仅为 AUTOSAR Classic 平台配置的模型和架构支持此函数。

示例

updateModel(ar,archModelName) 使用与 arxml.importer 对象 ar 关联的 ARXML 文件中的更改更新指定的开放式架构模型。ARXML 文件必须包含模型映射的 AUTOSAR 软件组合,并且必须适合代码生成。

示例

updateModel(___,OpenReport=OpenReportValue) 支持上述语法中的任何输入参量组合,且可指定名称-值参量 OpenReport。要指定在更新过程完成时打开 AUTOSAR 更新报告,请将 OpenReport 设置为 "on"

示例

示例

全部折叠

使用 ARXML 文件 updatedSWC.arxml 中所述的更改更新模型 mySWC,然后打开 AUTOSAR 更新报告。

open_system("mySWC")
ar = arxml.importer("updatedSWC.arxml");
updateModel(ar,"mySWC",OpenReport="on");
### Updating model mySWC
### Saving original model as mySWC_backup.slx
### Creating HTML report mySWC_update_report.html

使用 updatedArchModel.arxml 中所述的 ARXML 更改更新架构模型 myArchModel,然后打开 AUTOSAR 更新报告。

arModel = autosar.arch.loadModel("ControllerArchitecture");
impObj = arxml.importer("ControllerArchitecture.arxml");
updateModel(impObj,arModel)
### Updating model autosar_tpc_controller_bus
### Saving original model as autosar_tpc_controller_bus_backup_1.slx
### Creating HTML report autosar_tpc_controller_bus_update_report.html
Updated model 'autosar_tpc_controller_bus' for component 1 of 1: /Components/autosar_tpc_controller_bus
### Saving original model as ControllerArchitecture_backup.slx
Updating composition 1 of 1: /Components/ControllerArchitecture
### Creating HTML report ControllerArchitecture_update_report.html 

输入参数

全部折叠

包含先前从 ARXML 文件导入的 AUTOSAR 信息的 arxml.importer 的句柄。

要使用与 arxml.importer 对象关联的 ARXML 文件中的更改更新打开模型的名称,指定为字符向量或字符串标量。

示例: "mySWC"

要使用与 arxml.importer 对象关联的 ARXML 文件中的更改更新开放式架构模型的名称,指定为字符向量或字符串标量。

示例: "myArchModel"

用于在更新模型后打开 AUTOSAR 更新报告的选项,指定为 "on""off"

  • "on" - 报告打开。

  • "off" - 报告不打开。

示例: updateModel(ar,"myControllerModel",OpenReport="off")

限制

您可以将端口分支到多个可运行系统。如果 ARXML 更新删除了对某些(但非全部)访问端口的可运行实体的数据访问,则软件不会更新模型画布,并且 AUTOSAR 更新报告不会指示更改。受影响的可运行系统上的连接器和端口必须被手动删除。

版本历史记录

在 R2014a 中推出

全部展开