Main Content

updateAUTOSARProperties

AUTOSAR 要素パッケージからの ARXML 定義を使用したモデルの更新

説明

updateAUTOSARProperties(ar,modelname) は、開いている指定のモデルを arxml.importer オブジェクト ar に関連付けられている XML ファイル内のパッケージから AUTOSAR 要素定義を使用して更新します。この更新により、モデルに追加された AUTOSAR 要素の詳細が記載されたレポートが生成されます。updateAUTOSARProperties では、モデルによってマッピングされた AUTOSAR ソフトウェア コンポーネントを格納するための関連付けられた XML 定義ファイルは必要ありません (コンポーネントを必要とする updateModel との比較)。

この関数は、既定では変更できない読み取り専用の定義として AUTOSAR 要素をインポートします。インポートした要素の変更を許可するには、ReadOnly プロパティを false に設定します。

この関数は、インポートする各 AUTOSAR 要素について、それらの要素の従属要素も一緒にインポートします。たとえば、この関数で CompuMethod 要素をインポートすると、Unit 要素と PhysicalDimension 要素もインポートされます。

AUTOSAR の数値データ型または列挙データ型をインポートする場合は、関数 createNumericType および関数 createEnumeration を使用して、対応する Simulink® データ型オブジェクトを作成します。

updateAUTOSARProperties(ar,modelname,Name,Value) は、Name,Value のペアの引数を使用して特定の要素カテゴリ、パッケージ、またはパスを指定することで、開いている指定のモデルを AUTOSAR 要素を使用して更新します。

すべて折りたたむ

複数の製品ラインおよびチームで共有する事前定義の SwAddrMethod 要素をインポートする AUTOSAR ソフトウェア コンポーネント モデルを開発しているとします。この例では、共有の記述ファイル例 SwAddrMethods.arxml からモデル例 autosar_swc に定義をインポートし、更新レポートを生成する方法を示します。

ARXML ファイルは、既定の MATLAB® 検索パス上の matlabroot/examples/autosarblockset/data にあります。

addpath(fullfile(matlabroot,'/examples/autosarblockset/main'));  % Add path to model
modelName = 'autosar_swc';
open_system(modelName);
ar = arxml.importer('SwAddrMethods.arxml');
updateAUTOSARProperties(ar,modelName);
### Updating model autosar_swc
### Saving original model as autosar_swc_backup.slx
### Creating HTML report autosar_swc_update_report.html

こので例は、ルート パス /ExternalElements/CompuMethods/RpmCm および /AUTOSAR_PlatformTypes/ImplementationDataTypes/uint16 で指定された 2 つの AUTOSAR 要素でモデルを更新する関数呼び出し構文を示します。

open_system('mySWC')
ar = arxml.importer('ExternalElements.arxml');
updateAUTOSARProperties(ar,'mySWC','RootPath',{'/ExternalElements/CompuMethods/RpmCm',...
                           '/AUTOSAR_PlatformTypes/ImplementationDataTypes/uint16'});

この例では、AUTOSAR ソフトウェア アドレス メソッドの XML 定義を読み取り/書き込み要素としてインポートする関数呼び出し構文を示します。この関数は、既定では変更できない読み取り専用の定義として AUTOSAR 要素をインポートします。

open_system('mySWC')
ar = arxml.importer('SwAddressMethods.arxml');
updateAUTOSARProperties(ar,'mySWC','ReadOnly',false);

この例では、パッケージ /AUTOSAR_PlatformTypes/CompuMethods からの AUTOSAR 要素でモデルを更新する関数呼び出し構文を示します。

open_system('mySWC')
ar = arxml.importer('ExternalElements.arxml');
updateAUTOSARProperties(ar,'mySWC','Package',{'/AUTOSAR_PlatformTypes/CompuMethods'});

この例では、カテゴリ ImplementationDataType の AUTOSAR 要素でモデルを更新する関数呼び出し構文を示します。ImplementationDataType 要素をインポートすると、SwBaseType 要素などの従属要素もインポートされます。

open_system('mySWC')
ar = arxml.importer('ExternalElements.arxml');
updateAUTOSARProperties(ar,'mySWC','Category',{'ImplementationDataType'});

入力引数

すべて折りたたむ

XML ファイルから以前にインポートした AUTOSAR 情報。arxml.importer オブジェクト ハンドルとして指定されます。

arxml.importer オブジェクトに関連付けられている XML ファイル内の AUTOSAR 要素の定義を使用して更新する開いているモデルの名前。

例: 'mySWC'

名前と値の引数

オプションの引数のペアを Name1=Value1,...,NameN=ValueN として指定します。ここで、Name は引数名、Value は対応する値です。名前と値の引数は他の引数の後に配置しなければなりませんが、ペアの順序は重要ではありません。

R2021a より前では、コンマを使用して各名前と値を区切り、Name を引用符で囲みます。

例: 'Category',{'ImplementationDataType'} はカテゴリ ImplementationDataType の AUTOSAR 要素を使用してモデルを更新するようにインポーターに指示します。

要素のインポート元の 1 つ以上の AUTOSAR 要素カテゴリ。

例: 'Category',{'ImplementationDataType'}

要素のインポート元の 1 つ以上の AUTOSAR 要素パッケージのパス。

例: 'Package',{'/AUTOSAR_PlatformTypes/CompuMethods'}

カテゴリまたはパッケージのインポートを調整するために、要素のインポート元のカテゴリとパッケージの両方を指定できます。以下に例を示します。

'Category',{'ImplementationDataType'}, ...
'Package',{'/AUTOSAR_PlatformTypes/ImplementationDataTypes'}

インポートした要素を定義を変更できない読み取り専用として扱う (既定) か読み取り/書き込みとして扱うかを指定します。

例: 'ReadOnly',false

インポートする 1 つ以上の特定の AUTOSAR 要素のルート パス。

例: 'RootPath',{'/ExternalElements/CMs/RpmCm','/AUTOSAR_PlatformTypes/IDTs/uint16'}

アプリケーション データ型要素に関連付けられている 1 つ以上の AUTOSAR データ型マッピング セットのパス。

例: {'/AUTOSAR_PlatformTypes/DataTypeMappingSets/MapSet1'}

バージョン履歴

R2019a で導入