このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
createCompositionAsModel
AUTOSAR ARXML ソフトウェア コンポジションの Simulink 表現の作成
構文
説明
createCompositionAsModel(
は AUTOSAR ソフトウェア コンポジション ar
,CompositionName
)CompositionName
に対応する Simulink® モデルを作成します。コンポジションの記述は以前に AUTOSAR XML ファイルからインポートした AUTOSAR 情報の一部です。これは arxml.importer
オブジェクト ar
で表されます。インポーターにより、インポートされる AUTOSAR コンポジションの初期の Simulink 表現が作成されます。この初期表現が、AUTOSAR の構成やモデルベース デザインの開始点となります。詳細については、AUTOSAR ARXML インポーターを参照してください。
[
は、Simulink モデルの作成に、1 つ以上の mdl
, sts
] = createCompositionAsModel(ar
,CompositionName
,Name,Value
)Name,Value
のペア引数を使用して追加オプションを指定します。
例
AUTOSAR コンポジションのインポート
ファイル ThrottlePositionControlComposition.arxml
から AUTOSAR ソフトウェア コンポジション /Company/Components/ThrottlePositionControlComposition
をインポートします。ARXML ファイルは、既定の MATLAB® パス上の
にあります。コンポジションの初期の Simulink 表現を作成します。matlabroot
/examples/autosarblockset/data
ar = arxml.importer('ThrottlePositionControlComposition.arxml'); names = getComponentNames(ar,'Composition')
names = 1×1 cell array {'/Company/Components/ThrottlePositionControlComposition'}
createCompositionAsModel(ar,'/Company/Components/ThrottlePositionControlComposition');
AUTOSAR コンポジションをインポートして既存のコンポーネント モデルを含める
AUTOSAR ソフトウェア コンポジション /pkg/rootComposition
を XML ファイル mySWCs.arxml
からインポートし、コンポジションの初期の Simulink 表現を作成します。コンポジション内に含まれるコンポーネント mySwc1
と mySwc2
の場合、新しく作成するのではなく、既存の Simulink コンポーネント モデルを使用します。
ar = arxml.importer('mySWCs.arxml') createCompositionAsModel(ar,'/pkg/rootComposition','ComponentModels',{'mySwc1','mySwc2'})
AUTOSAR コンポジションのインポートおよびデータ ディクショナリの使用
AUTOSAR ソフトウェア コンポジション /pkg/rootComposition
を XML ファイル mySWCs.arxml
からインポートし、コンポジションの初期の Simulink 表現を作成します。AUTOSAR データ型に対応する Simulink データ オブジェクトをデータ ディクショナリ ardata.sldd
に配置します。
ar = arxml.importer('mySWCs.arxml') createCompositionAsModel(ar,'/pkg/rootComposition','DataDictionary','ardata.sldd')
AUTOSAR コンポジションのインポートと AUTOSAR ディクショナリの共有
ファイル ThrottlePositionControlComposition.arxml
から AUTOSAR ソフトウェア コンポジション /Company/Components/ThrottlePositionControlComposition
をインポートします。ARXML ファイルは、既定の MATLAB パス上の
にあります。コンポジションの初期の Simulink 表現を作成します。matlabroot
/examples/autosarblockset/data
インポートされた各コンポーネントに対して、インポーターはインターフェイス、データ型などの共有可能な AUTOSAR プロパティをデータ ディクショナリ ardata.sldd
に格納します。その後、コンポジション内のコンポーネントは格納されたプロパティを共有できます。
ar = arxml.importer('ThrottlePositionControlComposition.arxml') createCompositionAsModel(ar,'/Company/Components/ThrottlePositionControlComposition',... 'ModelPeriodicRunnablesAs','Auto',... 'DataDictionary','ardata.sldd','ShareAUTOSARProperties',true);
共有プロパティを表示するには、コンポーネント モデルの AUTOSAR ディクショナリを開きます。この例では、ThrottlePositionSensor
を開きます。AUTOSAR ディクショナリ ノード ardata.sldd を展開します。共有されたコンポーネント インターフェイスなどの読み取り専用プロパティを表示したり、コンポジションおよびコンポーネントのエクスポートに関する XML オプションを変更したりできます。
autosar_ui_launch('ThrottlePositionSensor')
AUTOSAR コンポジションのインポートおよび周期的なランナブルの Function-Call Subsystem としてのモデル化
AUTOSAR ソフトウェア コンポジション /pkg/rootComposition
を XML ファイル mySWCs.arxml
からインポートし、コンポジションの初期の Simulink 表現を作成します。AUTOSAR の周期的なランナブルを周期的レートをもつ Function-Call Subsystem としてモデル化します。
ar = arxml.importer('mySWCs.arxml') createCompositionAsModel(ar,'/pkg/rootComposition',... 'ModelPeriodicRunnablesAs','FunctionCallSubsystem')
AUTOSAR コンポジションのインポートおよび変動点解決のための PredefinedVariant
の使用
AUTOSAR ソフトウェア コンポジション /pkg/rootComposition
を XML ファイル mySWCs.arxml
からインポートし、コンポジションの初期の Simulink 表現を作成します。PredefinedVariant
Senior を使用してモデル作成時にコンポーネントの変動点を解決します。
ar = arxml.importer('mySWCs.arxml') createCompositionAsModel(ar,'/pkg/rootComposition',... 'PredefinedVariant','/pkg/body/Variants/Senior');
AUTOSAR コンポジションのインポートおよび変動点解決のための SwSystemconstantValueSet
の使用
AUTOSAR ソフトウェア コンポジション /pkg/rootComposition
を XML ファイル mySWCs.arxml
からインポートし、コンポジションの初期の Simulink 表現を作成します。SwSystemconstantValueSet
A と B を使用してモデル作成時にコンポーネント内の変動点を解決します。
ar = arxml.importer('mySWCs.arxml') createCompositionAsModel(ar,'/pkg/rootComposition',... 'SystemConstValueSets',{'/pkg/body/SystemConstantValues/A','/pkg/body/SystemConstantValues/B'});
入力引数
ar
— arxml.importer
オブジェクト
ハンドル
XML ファイルから以前にインポートした AUTOSAR 情報。arxml.importer
オブジェクト ハンドルとして指定されます。
CompositionName
— コンポジション パス
文字ベクトル | string スカラー
ソフトウェア コンポジションの短縮名の絶対パス。
例: '/Company/Powertrain/Components/RootComposition'
名前と値の引数
オプションの引数のペアを Name1=Value1,...,NameN=ValueN
として指定します。ここで、Name
は引数名、Value
は対応する値です。名前と値の引数は他の引数の後に配置しなければなりませんが、ペアの順序は重要ではありません。
R2021a より前では、コンマを使用して各名前と値を区切り、Name
を引用符で囲みます。
例: 'ModelPeriodicRunnablesAs','AtomicSubsystem'
は AUTOSAR の周期的なランナブルを周期的レートをもつアトミック サブシステムとしてモデル化するようにインポーターに指示します。
ComponentModels
— Simulink コンポーネント モデル
文字ベクトルの cell 配列 | string 配列
コンポジションの Simulink 表現を作成する際に使用する既存のアトミック ソフトウェア コンポーネント モデルの名前。この関数では、新しく作成する代わりに、指定した既存のコンポーネント モデルがコンポジション モデルに組み込まれます。
例: 'ComponentModels',{'mySwc1','mySwc2'}
DataDictionary
— Simulink データ ディクショナリ
文字ベクトル | string スカラー
XML ファイル内の AUTOSAR データ型に対応するデータ オブジェクトのインポート先にする Simulink データ ディクショナリ。指定されたディクショナリがまだ存在しない場合は、インポーターが作成します。その後、そのデータ ディクショナリにモデルが関連付けられます。
'ShareAUTOSARProperties'
引数に true
を指定した場合、指定されたデータ ディクショナリにインターフェイス、データ型などの共有可能な AUTOSAR プロパティも格納され、コンポジションのコンポーネント間で共有されます。
例: 'DataDictionary','ardata.sldd'
ModelPeriodicRunnablesAs
— 周期的なランナブルのサブシステムのタイプ
'Auto'
(既定値) | 'AtomicSubsystem'
| 'FunctionCallSubsystem'
既定では、createCompositionAsModel
は ARXML ファイル内で検出した AUTOSAR の周期的なランナブルをインポートし、周期的レートをもつアトミック サブシステムとしてモデル化します。アトミック サブシステムが使用できない状況の場合、この関数によって周期的なランナブルは周期的レートをもつ Function-Call Subsystem としてモデル化されます。
周期的なランナブルをアトミック サブシステムとしてのみモデル化するには、'AtomicSubsystem'
を指定します。アトミック サブシステムが使用できない状況の場合、関数はエラーをスローします。
周期的なランナブルを Function-Call Subsystem としてのみモデル化するには、'FunctionCallSubsystem'
を指定します。
詳細については、複数のランナブルをもつ AUTOSAR ソフトウェア コンポーネントのインポートを参照してください。
例: 'ModelPeriodicRunnablesAs','AtomicSubsystem'
PredefinedVariant
— AUTOSAR の事前定義されたバリアントへのパス
文字ベクトル | string スカラー
AUTOSAR XML ファイルで定義された PredefinedVariant
へのパス。PredefinedVariant
は、複数の有効な可能性のある組み合わせの中で、AUTOSAR ソフトウェア コンポーネントに適用するシステム定数値の組み合わせを記述します。この引数を使用して、モデルの作成時に AUTOSAR ソフトウェア コンポーネント内の変動点を解決します。指定した場合、インポーターは PredefinedVariant
を使用して、変動点を制御する入力として機能する SwSystemconst
データを初期化します。
詳細については、事前定義値の組み合わせを使用した AUTOSAR バリアントの制御を参照してください。
例: 'PredefinedVariant','/pkg/body/Variants/Senior'
ShareAUTOSARProperties
— AUTOSAR コンポーネント プロパティを共有ディクショナリに追加
false
(既定値) | true
AUTOSAR コンポジションのモデル化において一般的なタスクのパフォーマンスを改善するために、コンポジションのインポートでインターフェイス、データ型といった共有可能なコンポーネント プロパティを Simulink データ ディクショナリに格納できます。その後、コンポジション内のコンポーネントは格納されたプロパティを共有できます。
20 個を超えるソフトウェア コンポーネントを含むコンポジションの場合、コンポーネント間で AUTOSAR プロパティを共有することで、インポート、ディクショナリ ナビゲーション、AUTOSAR 検証、コード生成といったコンポジション ワークフローのパフォーマンスを大幅に改善できます。コンポーネント間でのプロパティの複製を制限することで、コンポーネント モデルのファイル サイズを削減できます。
共有された AUTOSAR ディクショナリは、AUTOSAR コンポジションとコンポーネントのプロパティを一元的に表示および構成するための場所を提供します。共有されたコンポーネント インターフェイスなどの読み取り専用プロパティを表示したり、コンポジションおよびコンポーネントのエクスポートに関する XML オプションを変更したりできます。
AUTOSAR プロパティを共有するには、true
を指定します。インポートされた各コンポーネントに対して、関数はインターフェイス、データ型などの共有可能な AUTOSAR プロパティを 'DataDictionary'
引数で指定された Simulink データ ディクショナリに格納します。'DataDictionary'
引数を指定しなければなりません。
詳細については、AUTOSAR コンポジションのインポートと AUTOSAR ディクショナリの共有を参照してください。
例: 'ShareAUTOSARProperties',true
SystemConstValueSets
— 1 つ以上の AUTOSAR システム定数値セットへのパス
文字ベクトルの cell 配列 | string 配列
AUTOSAR XML ファイルで定義された 1 つ以上の SystemConstValueSet
へのパス。SystemConstValueSet
は、AUTOSAR ソフトウェア コンポーネントに適用する一連のシステム定数値を指定します。この引数を使用して、モデルの作成時に AUTOSAR ソフトウェア コンポーネント内の変動点を解決します。指定した場合、インポーターは SystemConstValueSet
を使用して、変動点を制御する入力として機能する SwSystemconst
データを初期化します。
詳細については、事前定義値の組み合わせを使用した AUTOSAR バリアントの制御を参照してください。
例: 'SystemConstValueSets','{'/pkg/body/SystemConstantValues/A','/pkg/body/SystemConstantValues/B'}'
出力引数
mdl
— モデル ハンドル
ハンドル
作成されたモデルへのハンドルを返す変数。
sts
— 成功または失敗
true または false
インポートに成功した場合は true を返す変数。そうでない場合は false を返します。
ヒント
オブジェクト関数 arxml.importer
を呼び出す入力の最後にセミコロン (;) を付けない場合、インポーターは指定された XML ファイルの AUTOSAR の内容をリストします。この情報には、AUTOSAR パッケージ構造のソフトウェア コンポーネントへのパスが含まれます。これは、createCompositionAsModel
および createComponentAsModel
への呼び出しで指定できます。
バージョン履歴
R2017b で導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)