Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

Configurable Subsystem の Variant Subsystem への変換

メモ

Configurable Subsystem は将来のリリースで削除されます。既存のモデル内の Configurable Subsystem ブロックは、Variant Subsystem ブロックに変換されなければなりません。

Variant Subsystems には、Configurable Subsystems よりも多くの機能が備わっており、次の利点があります。

  • Model ブロックと Subsystem ブロックをバリアントの選択肢として混在させることができます。

  • 入力端子と出力端子の数が異なるバリアントを指定できます。

次の手順を実行して、Configurable Subsystem ブロックを Variant Subsystem ブロックに変換します。

  1. Configurable Subsystem ブロックを含むモデルを開きます。

  2. コンテキスト メニューで Configurable Subsystem ブロックを右クリックし、[サブシステムとモデル参照][変換][Variant Subsystem] を選択します。

  3. 既定では、[設定可能なサブシステム ライブラリへのリンクを作成せずにコピーする] チェック ボックスがオンになっています。これにより、ライブラリへのリンクを作成せずにバリアントの選択肢が作成されます。

  4. [OK] をクリックします。Configurable Subsystem ブロックは Variant Subsystem ブロックに変換され、新しいウィンドウに表示されます。

    メモ

    Configurable Subsystem ブロックが Variant Subsystem ブロックに変換されると、Configurable Subsystem ブロックのブロック選択は Variant Subsystem ブロックの LabelModeActiveChoice に変更されます。

  5. Configurable Subsystem ブロックを、元のモデルで変換された Variant Subsystem ブロックに手動で置き換えます。

Configurable Subsystem の読み込み時の動作

Configurable Subsystem ブロックを含むモデルを読み込むと、Configurable Subsystem ブロックを Variant Subsystem ブロックに変換するように指示する警告が表示されます。

  1. Configurable Subsystem ブロックを含むモデルについて考えます。このモデルを読み込むと、警告が [診断ビューアー] に表示されます。

    メモ

    新しい Configurable Subsystem ブロックを作成すると、Configurable Subsystem ブロックを Variant Subsystem ブロックに変換するようにアップグレード アドバイザー アラートが表示されます。

  2. [診断ビューアー][推奨アクション] セクションで [開く] をクリックします。

  3. アップグレード アドバイザーで、[Variant Subsystem ブロックに変更するための Configurable Subsystem のブロックを特定] を選択し、[このチェックを実行] をクリックします。モデル内のすべての Configurable Subsystem ブロックのリストおよび実行が推奨されるアクションが表示されます。

    メモ

    モデル レベルまたはサブシステム レベルでモデルの離散化により作成された Configurable Subsystem インスタンスをアップグレードするには、[推奨アクション] を実行します。推奨アクションによって、離散化に関する情報は必ず保持されます。

    Variant Subsystem に変換するには、リストに示される各 Configurable Subsystem インスタンスを右クリックし、[サブシステムとモデル参照][変換][Variant Subsystem] を選択します。

また、Configurable Subsystem ブロックを含むモデルのシミュレーションを実行すると、アップグレード アドバイザーの警告がエディターに表示されます。サンプルのスクリーンショットを次に示します。

アクティブなバリアントの変更

Configurable Subsystem ブロックが Variant Subsystem ブロックに変換されると、Configurable Subsystem ブロックのブロック選択は Variant Subsystem ブロックのラベル モードのアクティブな選択肢に変更されます。

アクティブなバリアントを変更するには、次のいずれかの手順を実行します。

  • Variant Subsystem ブロック上のバッジを右クリックし、[ブロック パラメーター (Subsystem)] を選択します。ブロック パラメーター ダイアログ ボックスで、[ラベル モードのアクティブな選択肢] ドロップダウン リストからアクティブなバリアントを選択します。

  • Variant Subsystem ブロックのバッジを右クリックして [ラベル モードのアクティブな選択肢] を選択します。

メモ

マスクをもつ Configurable Subsystem ブロックが Variant Subsystem ブロックに変換されると、ブロック パラメーター ダイアログ ボックスの [ラベル モードのアクティブな選択肢] オプションとその他のパラメーターすべてが無効になります。アクティブなバリアントを変更するには、Variant Subsystem ブロックのバッジを右クリックして [ラベル モードのアクティブな選択肢] を選択します。

プログラムによる Configurable Subsystem ブロックの Variant Subsystem ブロックへの変換

convertToVariant メソッドを使用して、モデル内の Configurable Subsystem ブロックを Variant Subsystem ブロックにプログラムにより変換できます。

Configurable SubsystemVariant Subsystem ブロックに変換されると、Configurable Subsystem ブロックのブロック選択は Variant Subsystem ブロックの LabelModeActiveChoice に変更されます。

Configurable Subsystem テンプレート ブロックのブロック選択がリンクされている場合、ブロックが Variant Subsystem グラフにコピーされ、コピーされたブロックのリンクが保持されます。Configurable Subsystem テンプレート ブロックのブロック選択がリンクされていない場合、ブロックが Variant Subsystem グラフにコピーされ、Configurable Subsystem ライブラリのブロックがリンクされます。

次の手順を実行して、モデルの Configurable Subsystem ブロックを Variant Subsystem ブロックに変換します。

  1. Configurable Subsystem ブロックを含むモデルを開きます。

  2. コマンド ラインで find_system コマンドを入力し、モデル内のすべての Configurable Subsystem ブロックを見つけます。

    find_system(bdroot, 'Regexp', 'on', 'LookUnderMasks', 'on','FollowLinks', 'on', 'Variants', 'AllVariants', 'TemplateBlock', '.')

    モデル内に存在する Configurable Subsystem ブロックがリストされます。

    {'mconfigsub/config_sub'}
    {'mconfigsub/nested config'}
  3. get_param コマンドを使用して、リストからライブラリのテンプレート ブロックを見つけます。

    get_param('mconfigsub/nested config','TemplateBlock')
    ans =
        'mconfiglib/nested config'
    
    get_param('mconfigsub/config_sub','TemplateBlock')                                                                               
    ans =
        'mconfiglib/Subsystem/config_sub'
    
  4. convertToVariant メソッドを使用して、ライブラリのテンプレート ブロックを Variant Subsystem ブロックに変換します。

    Simulink.VariantManager.convertToVariant('mconfiglib/nested config')
    
    Simulink.VariantManager.convertToVariant('mconfiglib/Subsystem/config_sub')

    このメソッドの使用方法の詳細については、convertToVariantを参照してください。

  5. ライブラリを保存します。ライブラリを保存するには、save_system コマンドを使用できます。

  6. モデルを閉じてもう一度開きます。モデル内の Configurable Subsystem ブロックが Variant Subsystem ブロックに変換されます。

関連するトピック