このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
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
のペア引数を使用して追加オプションを指定します。
例
ファイル 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 ソフトウェア コンポジション /pkg/rootComposition
を XML ファイル mySWCs.arxml
からインポートし、コンポジションの初期の Simulink 表現を作成します。コンポジション内に含まれるコンポーネント mySwc1
と mySwc2
の場合、新しく作成するのではなく、既存の Simulink コンポーネント モデルを使用します。
ar = arxml.importer('mySWCs.arxml') createCompositionAsModel(ar,'/pkg/rootComposition','ComponentModels',{'mySwc1','mySwc2'})
AUTOSAR ソフトウェア コンポジション /pkg/rootComposition
を XML ファイル mySWCs.arxml
からインポートし、コンポジションの初期の Simulink 表現を作成します。AUTOSAR データ型に対応する Simulink データ オブジェクトをデータ ディクショナリ ardata.sldd
に配置します。
ar = arxml.importer('mySWCs.arxml') createCompositionAsModel(ar,'/pkg/rootComposition','DataDictionary','ardata.sldd')
ファイル 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 ソフトウェア コンポジション /pkg/rootComposition
を XML ファイル mySWCs.arxml
からインポートし、コンポジションの初期の Simulink 表現を作成します。AUTOSAR の周期的なランナブルを周期的レートをもつ Function-Call Subsystem としてモデル化します。
ar = arxml.importer('mySWCs.arxml') createCompositionAsModel(ar,'/pkg/rootComposition',... 'ModelPeriodicRunnablesAs','FunctionCallSubsystem')
AUTOSAR ソフトウェア コンポジション /pkg/rootComposition
を XML ファイル mySWCs.arxml
からインポートし、コンポジションの初期の Simulink 表現を作成します。PredefinedVariant
Senior を使用してモデル作成時にコンポーネントの変動点を解決します。
ar = arxml.importer('mySWCs.arxml') createCompositionAsModel(ar,'/pkg/rootComposition',... 'PredefinedVariant','/pkg/body/Variants/Senior');
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'});
入力引数
XML ファイルから以前にインポートした AUTOSAR 情報。arxml.importer
オブジェクト ハンドルとして指定されます。
ソフトウェア コンポジションの短縮名の絶対パス。
例: '/Company/Powertrain/Components/RootComposition'
名前と値の引数
オプションの引数のペアを Name1=Value1,...,NameN=ValueN
として指定します。ここで、Name
は引数名で、Value
は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペアの順序は重要ではありません。
R2021a より前では、コンマを使用して各名前と値を区切り、Name
を引用符で囲みます。
例: 'ModelPeriodicRunnablesAs','AtomicSubsystem'
は AUTOSAR の周期的なランナブルを周期的レートをもつアトミック サブシステムとしてモデル化するようにインポーターに指示します。
コンポジションの Simulink 表現を作成する際に使用する既存のアトミック ソフトウェア コンポーネント モデルの名前。この関数では、新しく作成する代わりに、指定した既存のコンポーネント モデルがコンポジション モデルに組み込まれます。
例: 'ComponentModels',{'mySwc1','mySwc2'}
XML ファイル内の AUTOSAR データ型に対応するデータ オブジェクトのインポート先にする Simulink データ ディクショナリ。指定されたディクショナリがまだ存在しない場合は、インポーターが作成します。その後、そのデータ ディクショナリにモデルが関連付けられます。
'ShareAUTOSARProperties'
引数に true
を指定した場合、指定されたデータ ディクショナリにインターフェイス、データ型などの共有可能な AUTOSAR プロパティも格納され、コンポジションのコンポーネント間で共有されます。
例: 'DataDictionary','ardata.sldd'
既定では、createCompositionAsModel
は ARXML ファイル内で検出した AUTOSAR の周期的なランナブルをインポートし、周期的レートをもつアトミック サブシステムとしてモデル化します。アトミック サブシステムが使用できない状況の場合、この関数によって周期的なランナブルは周期的レートをもつ Function-Call Subsystem としてモデル化されます。
周期的なランナブルをアトミック サブシステムとしてのみモデル化するには、'AtomicSubsystem'
を指定します。アトミック サブシステムが使用できない状況の場合、関数はエラーをスローします。
周期的なランナブルを Function-Call Subsystem としてのみモデル化するには、'FunctionCallSubsystem'
を指定します。
詳細については、複数のランナブルをもつ AUTOSAR ソフトウェア コンポーネントのインポートを参照してください。
例: 'ModelPeriodicRunnablesAs','AtomicSubsystem'
AUTOSAR XML ファイルで定義された PredefinedVariant
へのパス。PredefinedVariant
は、複数の有効な可能性のある組み合わせの中で、AUTOSAR ソフトウェア コンポーネントに適用するシステム定数値の組み合わせを記述します。この引数を使用して、モデルの作成時に AUTOSAR ソフトウェア コンポーネント内の変動点を解決します。指定した場合、インポーターは PredefinedVariant
を使用して、変動点を制御する入力として機能する SwSystemconst
データを初期化します。
詳細については、事前定義値の組み合わせを使用した AUTOSAR バリアントの制御を参照してください。
例: 'PredefinedVariant','/pkg/body/Variants/Senior'
AUTOSAR コンポジションのモデル化において一般的なタスクのパフォーマンスを改善するために、コンポジションのインポートでインターフェイス、データ型といった共有可能なコンポーネント プロパティを Simulink データ ディクショナリに格納できます。その後、コンポジション内のコンポーネントは格納されたプロパティを共有できます。
20 個を超えるソフトウェア コンポーネントを含むコンポジションの場合、コンポーネント間で AUTOSAR プロパティを共有することで、インポート、ディクショナリ ナビゲーション、AUTOSAR 検証、コード生成といったコンポジション ワークフローのパフォーマンスを大幅に改善できます。コンポーネント間でのプロパティの複製を制限することで、コンポーネント モデルのファイル サイズを削減できます。
共有された AUTOSAR ディクショナリは、AUTOSAR コンポジションとコンポーネントのプロパティを一元的に表示および構成するための場所を提供します。共有されたコンポーネント インターフェイスなどの読み取り専用プロパティを表示したり、コンポジションおよびコンポーネントのエクスポートに関する XML オプションを変更したりできます。
AUTOSAR プロパティを共有するには、true
を指定します。インポートされた各コンポーネントに対して、関数はインターフェイス、データ型などの共有可能な AUTOSAR プロパティを 'DataDictionary'
引数で指定された Simulink データ ディクショナリに格納します。'DataDictionary'
引数を指定しなければなりません。
詳細については、AUTOSAR コンポジションのインポートと AUTOSAR ディクショナリの共有を参照してください。
例: 'ShareAUTOSARProperties',true
AUTOSAR XML ファイルで定義された 1 つ以上の SystemConstValueSet
へのパス。SystemConstValueSet
は、AUTOSAR ソフトウェア コンポーネントに適用する一連のシステム定数値を指定します。この引数を使用して、モデルの作成時に AUTOSAR ソフトウェア コンポーネント内の変動点を解決します。指定した場合、インポーターは SystemConstValueSet
を使用して、変動点を制御する入力として機能する SwSystemconst
データを初期化します。
詳細については、事前定義値の組み合わせを使用した AUTOSAR バリアントの制御を参照してください。
例: 'SystemConstValueSets','{'/pkg/body/SystemConstantValues/A','/pkg/body/SystemConstantValues/B'}'
クライアント/サーバー ポートを Simulink 関数端子としてインポートするオプション。数値または logical の 1
(true
) または 0
(false
) として指定します。
true
— 端子スコープ内の Simulink 関数と関数呼び出し元が使用されます。false
— グローバルの Simulink 関数と関数呼び出し元が使用されます。
例: "UseFunctionPorts"=true
データ型: logical
出力引数
作成されたモデルへのハンドルを返す変数。
インポートに成功した場合は true を返す変数。そうでない場合は false を返します。
ヒント
オブジェクト関数 arxml.importer
を呼び出す入力の最後にセミコロン (;) を付けない場合、インポーターは指定された XML ファイルの AUTOSAR の内容をリストします。この情報には、AUTOSAR パッケージ構造のソフトウェア コンポーネントへのパスが含まれます。これは、createCompositionAsModel
および createComponentAsModel
への呼び出しで指定できます。
バージョン履歴
R2017b で導入R2024b 以降では、名前と値の引数 UseFunctionPorts
を指定して、端子スコープ内の Simulink 関数と関数呼び出し元を使用できます。
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- 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)