Main Content

モデル アドバイザー チェックの解析対象からのブロックの除外

モデル アドバイザーの対象外指定の概要

モデルの開発と検証にかかる時間を短縮するため、モデルのモデル アドバイザー解析の範囲を限定することができます。"モデル アドバイザー対象外指定" を作成し、選択したチェックからモデル内のブロックを対象外指定できます。以下について、すべてのチェックを対象外指定することも、選択したチェックのみを対象外指定することもできます。

  • Simulink® ブロック

  • Stateflow® チャート

対象外とするブロックを指定すると、モデル アドバイザーは解析時に対象外指定情報を使用して、指定したチェックの対象からブロックを除外します。既定では、モデル アドバイザーの対象外指定情報はモデルの SLX ファイルに保存されます。あるいは、この情報を対象外指定ファイルに保存することもできます。

モデルの対象外指定情報を表示するには、モデル ウィンドウを右クリックするか、ブロックを右クリックして、[モデル アドバイザー][モデル アドバイザーの対象外指定エディターを開く] を選択します。

[モデル アドバイザーの対象外指定エディター] ダイアログ ボックスには各対象外指定について次の情報が表示されます。

  • フィルター識別子

  • フィルター タイプ

  • 概要

  • チェック ID

Model Advisor Exclusion Editor window

フィールド説明
フィルター識別子

除外されているブロックまたはサブシステムの名前とパス。ブロックのパスにはハイパーリンクが設定されており、クリックすると関係のあるブロックがモデル キャンバス上で強調表示されます。

フィルター タイプ

除外される項目のタイプを定義します。

例: フィルター タイプが [ブロック] である場合、その特定の Simulink ブロックが対象から除外されます。タイプが [サブシステム] である場合、そのサブシステム内のすべてのコンテンツが除外されます。

概要

メモや対象外指定の理由を入力する編集可能フィールド。既定では、このフィールドは、特定のブロックのみを対象外指定するか、特定のタイプのブロックをすべて対象外指定するかを定義します。

チェック ID

ブロックの対象外指定が適用されるチェックの名前。編集 () ボタンをクリックすることで、このセルからチェック セレクターを起動できます。

メモ

ブロックをコメント アウトした場合は、シミュレーションとモデル アドバイザー解析の両方から除外されます。

フィルター タイプ

フィルター タイプは、除外されるエンティティのタイプを定義します。モデル アドバイザーの対象外指定エディターは現在、以下のエンティティの対象外指定をサポートします。

フィルター タイプ説明
Simulink
BlockSimulink ブロックを対象外指定する。
BlockType任意のタイプのすべてのブロックを対象外指定する。
Subsystemサブシステム内のすべてのブロックを対象外指定する。
Libraryライブラリ ブロックのすべてのインスタンスを対象外指定する。
MaskTypeマスク タイプのブロックまたはサブシステムを対象外指定する。
StateflowSimulink 内の Stateflow ブロックを対象外指定する。
Stateflow
ChartStateflow チャート内のすべてのエンティティを対象外指定する。
StateStateflow ステートを対象外指定する。
TransitionStateflow 遷移を対象外指定する。
JunctionStateflow ジャンクションを対象外指定する。
GraphicalFunctionStateflow グラフィカル関数を対象外指定する。
MATLABFunctionStateflow MATLAB® 関数を対象外指定する。
SimulinkFunctionStateflow Simulink 関数を対象外指定する。
TruthTableStateflow 真理値表を対象外指定する。
SimulinkBasedStateStateflow の Simulink ベースのステートを対象外指定する。

モデル アドバイザー対象外指定の作成

  1. モデル ウィンドウで、ブロックを右クリックして [モデル アドバイザー] を選択します。実行する対象外指定のタイプに対応するメニュー オプションを選択します。

    タスク [モデル アドバイザー] メニューで選択するオプション
    すべてのチェックからブロックを対象外指定する。

    [ブロックのみを除外][すべてのチェック]

    すべてのチェックから、指定したタイプのすべてのブロックを対象外指定する。

    [タイプ <block_type> のすべてのブロックを除いて][すべてのチェック]

    選択したチェックからブロックを対象外指定する。
    1. [ブロックのみを除外][チェックの選択]

    2. [チェック セレクター] ダイアログ ボックスで、チェックを選択します。[OK] をクリックします。

    選択したチェックから、指定したタイプのすべてのブロックを対象外指定する。
    1. [タイプ <block_type> のすべてのブロックを除いて][チェックの選択]

    2. [チェック セレクター] ダイアログ ボックスで、チェックを選択します。[OK] をクリックします。

    失敗したすべてのチェックからブロックを対象外指定する。このオプションは、モデル アドバイザー解析の実行後にのみ使用できます。

    [ブロックのみを除外][失敗したチェックのみ]

    失敗したすべてのチェックから、指定したタイプのすべてのブロックを対象外指定する。このオプションは、モデル アドバイザー解析の実行後にのみ使用できます。

    [タイプ <block_type> のすべてのブロックを除いて][失敗したチェックのみ]

    失敗した 1 件のチェックからブロックを対象外指定する。このオプションは、モデル アドバイザー解析の実行後にのみ使用できます。

    [ブロックのみを除外][<失敗したチェックの名前>]

    失敗した 1 件のチェックから、指定したタイプのすべてのブロックを対象外指定する。このオプションは、モデル アドバイザー解析の実行後にのみ使用できます。

    [タイプ <block_type> のすべてのブロックを除いて][<失敗したチェックの名前>]

  2. [モデル アドバイザーの対象外指定エディター] ダイアログ ボックスで、下のいずれかのプロセスを使用して、対象外指定をモデルまたは対象外指定ファイルに保存します。

Model ブロックを右クリックして [モデル アドバイザー] の下のオプションを選択すると、必要な数だけモデル アドバイザー対象外指定を作成できます。

モデル アドバイザーの対象外指定をモデル ファイルに保存

モデル アドバイザーの対象外指定をモデルの .slx ファイルに保存するには、[モデル アドバイザーの対象外指定エディター] ダイアログ ボックスで保存アイコン () をクリックします。モデルの .slx ファイルを開くと、そのモデルには対象外指定が含まれています。

モデル アドバイザーの対象外指定を対象外指定ファイルに保存

"モデル アドバイザー対象外指定ファイル" とは、指定したチェックから除外する一連のブロックを対象外指定ファイルとしてまとめたものです。対象外指定を作成し、それらを対象外指定ファイルに保存できます。

モデル アドバイザーの対象外指定を対象外指定 .xml ファイルに保存するには、以下を行います。

  1. モデル アドバイザーの対象外指定エディターを開きます。

  2. 保存アイコンの横にある下矢印 () をクリックします。

  3. [名前を付けて保存] を選択し、対象外指定ファイルの望ましい名前を [ファイル名] フィールドに入力します。

  4. [保存] をクリックします。

モデル アドバイザーは、別のフォルダーが指定された場合を除き、対象外指定ファイルを現在のフォルダーに保存します。

対象外指定ファイルを作成してモデルを保存する場合、対象外指定ファイルをモデルに付加します。モデルを開くたびに、対象外指定ファイルで指定されたブロックとチェックが解析から除外されます。

チェック セレクター

[チェック セレクター] ウィンドウでは、チェックを選択して、特定のブロックまたは指定されたタイプのすべてのブロックを除外することができます。チェック セレクターを開くには、ブロックを右クリックして以下のいずれかを選択します。

  • [モデル アドバイザー][ブロックのみを除外][チェックの選択]

  • [モデル アドバイザー][タイプ <block_type> のすべてのブロックを除いて][チェックの選択]

チェック セレクターでは、検索機能を使用して、除外する必要があるチェックを検索することができます。チェック セレクターは、[チェック ID] 列にある編集 () ボタンをクリックすることで、[モデル アドバイザーの対象外指定エディター] ウィンドウから起動することもできます。

Check Selector window with no checks selected

モデル アドバイザー対象外指定の確認

モデルに関連付けられている対象外指定を確認することができます。モデル アドバイザー解析の前または後に対象外指定情報を表示するには、次を行います。

  • モデル ウィンドウを右クリックするか、ブロックを右クリックして、[モデル アドバイザー][モデル アドバイザーの対象外指定エディターを開く] を選択します。[モデル アドバイザーの対象外指定エディター] ダイアログ ボックスには、モデルに対して設定された対象外指定が表示されます。

  • モデル アドバイザーの解析後、各チェックの対象外指定情報がレポート ファイルに表示されます。

    • チェックを実行した後、モデル アドバイザー ウィンドウの左ペインで対象外指定ルールを含むチェックがオレンジ色で強調表示されます。モデル アドバイザーの結果には、対象外指定についての追加情報が含まれます。

      チェックの状態HTML レポートとモデル アドバイザー ウィンドウの状態
      対象外指定規則が適用されていない。 対象外指定がチェックに適用されていないことを示します。
      対象外指定を実行できない。チェックで対象外指定を実行できないことを示します。
      ブロックから対象外指定されている。チェック対象外指定規則をリストします。

対象外指定の管理

対象外指定ファイルの読み込み

モデルで使用する既存の対象外指定ファイルを読み込むには、次の手順に従います。

  1. [モデル アドバイザーの対象外指定エディター] ダイアログ ボックスで [対象外指定ファイルを開きます] ボタン をクリックします。

  2. モデルで使用する対象外指定ファイルに移動します。[開く] を選択します。

  3. [モデル アドバイザーの対象外指定エディター] ダイアログ ボックスで [OK] をクリックして、対象外指定ファイルをモデルに関連付けます。

対象外指定の削除

  1. [モデル アドバイザーの対象外指定エディター] ダイアログ ボックスで、削除する対象外指定を選択します。

  2. [対象外指定行を削除します] ボタン () をクリックします。

対象外指定への概要の追加

モデル アドバイザー解析時に選択したチェックから特定のブロックを対象外指定した理由を説明するテキストを追加することができます。この説明は、モデルを確認する人にとって便利です。

  1. [モデル アドバイザーの対象外指定エディター] ダイアログ ボックスで、対象外指定の [概要] フィールドをダブルクリックします。

  2. 現在のテキストを削除します。

  3. このオブジェクトの対象外指定に関する概要を追加します。

R2020b 後の互換性についての考慮事項

R2020b では、対象外指定の保存形式が変更されました。R2020b 後のリリースでは、モデル アドバイザーは前のリリースで使用されていた形式を読み取り、新しい形式に変換することができます。変換は 1 回のみ発生します。モデルは新しいファイル パスで更新され、後で対象外指定エディターによって使用されます。

R2020a 以前に作成された対象外指定ファイルを開くときに、対象外指定ファイルがモデル内に保存されたか、あるいは別のファイルとして保存されたかに基づいて、ファイルおよびモデルが更新されます。各ケースで実行される一連のアクションを以下に示します。

モデル内に保存された対象外指定ファイル

  1. 元の対象外指定ファイルが読み取られ、新しいファイルに書き込まれます。

  2. モデルを保存するときに、新しいファイルがモデルの SLX ファイルに保存されます。

こうした変更は自動的に実行され、ファイルの更新は通知されません。

対象外指定ファイルを別の対象外指定ファイルに保存

  1. 古いファイルが読み取られ、既存の対象外指定ファイルを上書きするか、対象外指定ファイルを新しい名前で同じ場所に保存するかを選択できます。

  2. モデルの保存時に、そのモデルによって新しいファイル パスが更新されます。

対象外指定エディターは、変更が実行されたことを報告します。

モデル アドバイザーの対象外指定をプログラムによって変更

モデル アドバイザーの対象外指定エディターを以下の関数で使用できるようになりました。

タスク関数
モデル アドバイザーに新しい対象外指定を追加。Advisor.addExclusion
モデル アドバイザーから対象外指定を削除。Advisor.removeExclusion
モデル アドバイザーからすべての対象外指定をクリア。Advisor.clearExclusion
モデルまたはフィルターの対象外指定を取得。Advisor.getExclusion
既定のオプションまたは新しいファイルに対象外指定を保存。Advisor.saveExclusion
モデル内に保存されている、またはパス設定に従った既定の対象外指定を読み込む。Advisor.loadExclusion

モデル アドバイザーの対象外指定ファイルのパスは、MAModelFilterFile というモデル パラメーターによって追跡されます。set_param API を使用して、このパラメーターを更新します。

set_param('<model name>','MAModelFilterFile', '<new_file_path>');

モデルを保存し、再度開くと、変更が対象外指定エディターに反映されています。<new_file_path> が空の文字ベクトルである場合、モデル アドバイザーの対象外指定エディターは、ファイルがモデルの SLX ファイル内に保存されていると想定します。

関連する例

詳細