Main Content

サブシステムから参照モデルへの変換

この例では、モデル参照変換アドバイザーツールまたは関数Simulink.SubSystem.convertToModelReferenceを使用して、サブシステムを参照モデルに変換する方法を説明します。

モデル例の確認

モデル例を開いて、シミュレーションを実行します。

sldemo_mdlref_conversion モデルには、カウンター アルゴリズムをモデル化する Bus Counter という名前の atomic サブシステムが含まれています。

サブシステム インターフェイスは In Bus Element ブロックと Out Bus Element ブロックを使用して、バーチャル バスをサブシステムに渡したりサブシステムから受け取ったりします。バーチャル バスはそのデータ型を継承します。変換後に新しいモデルのインターフェイスをより強力に定義するには、Simulink.Bus オブジェクトを作成し、それらをバスのデータ型として使用します。

サブシステムから参照モデルへの対話形式での変換

モデル参照変換アドバイザーを使用して、サブシステムを対話形式で変換します。[Subsystem ブロック] タブで、[変換]、[Model ブロック] を選択します。モデル参照変換アドバイザーで [新規モデル名]sldemo_bus_counter に設定し、[変換] をクリックします。

関数 Simulink.SubSystem.convertToModelReference を呼び出す際に 'UseConversionAdvisor''true' に設定することでもモデル参照変換アドバイザーを開けます。

サブシステムから参照モデルへのプログラムでの変換

関数 Simulink.SubSystem.convertToModelReference を使用して、プログラムで atomic サブシステムを参照モデルに変換します。Bus Counter サブシステムを sldemo_bus_counter という名前の参照モデルに変換し、Subsystem ブロックを新しいモデルを参照する Model ブロックで置き換えるには、MATLAB® コマンド ウィンドウで次のコマンドを入力します。

Simulink.SubSystem.convertToModelReference(...
    'sldemo_mdlref_conversion/Bus Counter', ...
    'sldemo_bus_counter', ...
    'ReplaceSubsystem', true);

または、青色のブロックをダブルクリックします。これにより、OpenFcn ブロック コールバックを使用してこのコマンドを実行します。

参考

ブロック

ツール

関数

関連するトピック