Main Content

モデル アドバイザーの設定エディターを使用したモデル アドバイザーのカスタマイズ

モデル アドバイザーの設定エディターの概要

モデル アドバイザーの設定エディターは、編集時のチェックに使用するチェック、およびモデル アドバイザーに含まれるチェックを指定する方法を提供しています。この組織的階層は、コンフィギュレーション ファイルとして保存され、モデル アドバイザー開始時に読み込まれます。モデル アドバイザーの設定エディターを使用して、既存のコンフィギュレーションの変更、新規モデル アドバイザー構成の作成、既定のコンフィギュレーションの指定を行えます。

モデル アドバイザーの設定エディターは、次の機能を提供することにより、モデル アドバイザー解析を組織の要件に合わせて柔軟にカスタマイズできるようにします。

  • すべての使用可能なモデル アドバイザー チェックを確認する。

  • モデル アドバイザー ツリーに内蔵されているチェックおよびフォルダーを追加、削除、整理する。

  • カスタム モデル アドバイザー チェックを検証および確認ワークフローに統合する。

  • チェックおよびフォルダーの無効化および有効化。

  • チェックとフォルダーの名前を変更する。

  • モデル アドバイザー解析中にチェックにフラグが付けられるとき、警告としてマークされるか、失敗とマークされるかを指定する。

  • モデル アドバイザー構成の読み込み時に、欠けているチェックについての警告メッセージが表示されないようにする。

モデル アドバイザーの設定エディターには、以下が含まれます。

  • [ライブラリ] ペイン — 読み取り専用ペイン。コンフィギュレーションで使用できるすべてのチェックおよびフォルダーが、[製品別] タブと [タスク別] タブに示されています。[ライブラリ] タブを常に表示するには、ツールストリップ上で [ライブラリを表示] をクリックします。

  • [モデル アドバイザー] ペイン — このペインには、現在のモデル アドバイザー構成のチェックおよびフォルダーのリストが表示されます。このリストは以下で絞り込まれます。

    • All checks ― 現在の構成に含まれるすべてのモデル アドバイザー チェック

    • 編集時にサポートされるチェック ― 編集時チェックでサポートされるモデル アドバイザー チェックのみ

  • [情報] タブ — このタブには、[表示名][チェック インスタンス ID][チェック グループ ID][問題にフラグが設定されている場合は結果をチェック] など、チェックまたはフォルダーの詳細が表示されます。

[ライブラリ] および [モデル アドバイザー] ペインの検索機能を使用して、特定のチェックおよびフォルダーを見つけます。

Model Advisor Configuration Editor showing the Library pane, Model Advisor pane, and Information tab

モデル アドバイザーの設定エディターの開始

モデル アドバイザーの設定エディターを開く前に、現在のフォルダーが書き込み可能かどうかを確認します。フォルダーが書き込み可能でない場合、モデル アドバイザーの設定エディターを起動するとエラー メッセージが表示されます。

モデル アドバイザー API を使用してカスタム チェックまたはモデル アドバイザーのカスタマイズを実装するときは、まず、Simulink® 環境を更新して sl_customization.m ファイルを含めなければなりません。MATLAB® コマンド ラインで以下のように入力します。

Advisor.Manager.refresh_customizations

次のいずれかの方法を使用して、モデル アドバイザーの設定エディターを開きます。

  • プログラムから ― MATLAB コマンド ラインで Simulink.ModelAdvisor.openConfigUI を入力する。

  • Simulink エディターから ― [モデル化] タブで、[モデル アドバイザー][設定エディター] を選択する。

  • モデル アドバイザーから ― [開く][設定エディターを開く] を選択する。

モデル アドバイザーの設定エディターを開くと、モデル アドバイザーによって現在使用されているコンフィギュレーション ファイルが表示されます。コンフィギュレーション ファイル名はウィンドウ上部に表示されます。正しい設定ファイルを評価していることを確認してください。別の設定ファイルを開くには、[開く] をクリックし、確認するファイルを参照します。

新しいコンフィギュレーションを作成するには、ツールストリップの [新規] ボタンをクリックします。[名前を付けて保存] を使用してコンフィギュレーション ファイルの名前を変更します。モデル アドバイザー構成ファイルは .json 形式で保存されます。

既定のコンフィギュレーション ファイルの指定

モデル アドバイザーの設定エディターを使用して、モデル アドバイザーが開くときに自動的に読み込まれる既定のコンフィギュレーションを指定できます。既定のコンフィギュレーションを設定するには、モデル アドバイザーの設定エディターでコンフィギュレーション ファイルを開き、ツールストリップで [既定に設定] ボタンをクリックします。

メモ

既定のコンフィギュレーションを以前に指定したことがある場合、[既定のコンフィギュレーション設定のクリア] を使用して現在の既定のコンフィギュレーション ファイルを指定している設定をクリアできます。このボタンをクリックしても、モデル アドバイザーの設定エディターに現在表示されているコンフィギュレーションは変わりません。既定のコンフィギュレーションを指定しない場合、モデル アドバイザーは、システム管理者によって定義される標準のコンフィギュレーションを使用します。

コンフィギュレーション ファイルを既定として指定しない場合、ファイルを保存するとき、ファイルを既定のコンフィギュレーションにするかどうかの確認が表示されます。そのファイルを既定のコンフィギュレーションにするには、[はい] をクリックします。

カスタム コンフィギュレーションをモデルに関連付けて、そのモデルを開くたびにモデル アドバイザーでそのコンフィギュレーションが使用されるようにするには、Load and Associate a Custom Configuration with a Modelを参照してください。

モデル アドバイザー構成のカスタマイズ

モデル アドバイザーの設定エディターを使用して、モデル アドバイザー構成ツリーをカスタマイズできます。これには、チェックおよびフォルダーの追加と削除、チェック実行順序の指定などが含まれます。また、ユーザーがチェックを解析に含めたり除外したりできる機能を無効にすることもできます。モデル アドバイザーの設定エディターを使用して、チェックの入力パラメーターを定義できます。

メモ

[ライブラリ] タブからコピーされたチェックには、既定のパラメーター設定が保持されています。カスタム コンフィギュレーション フォルダーにペーストされると、各チェックの横のボックスはオフになります。

[モデル アドバイザー] タブのフォルダーからコピーされるか切り取られたチェックは、そのユーザー定義パラメーター設定を保持します。チェックが複数のフォルダーに含まれるとき、各チェックに個別に異なるパラメーターを指定できます。

階層の整理

モデル アドバイザー構成ツリー内のチェックおよびフォルダーのレイアウトを以下を使用してカスタマイズできます。

  • 新規フォルダー - フォルダーを作成する。

  • コピー切り取り貼り付け - チェックおよびフォルダーを追加、コピー、および移動する。

  • 削除 - チェックおよびフォルダーを削除する。

  • 上に移動、または下に移動 - コンフィギュレーション ツリー内のチェックまたはフォルダーの位置をずらす。コンフィギュレーション ツリーの高い位置にあるフォルダーおよびチェックは、解析で先に実行されます。

モデル アドバイザーの構成エディターの代わりに、ModelAdvisor.Group クラスおよび ModelAdvisor.FactoryGroup クラスを使用してモデル アドバイザーをカスタマイズできることに留意してください。ただし、これらの API は、柔軟性が劣り、時間がかかるモデル アドバイザー カスタマイズ方法です。カスタマイズされたチェックを、モデル アドバイザー ツリーの最上位 (モデル アドバイザーのルート) に配置するには、ModelAdvisor.Group クラスを使用します。カスタマイズされたチェックを [タスク別] フォルダーの新しいフォルダーに配置するには、ModelAdvisor.FactoryGroup クラスを使用します。これらのタスクおよびフォルダーを関数 sl_customization に登録するメソッドを含めなければなりません。

チェックの有効化と無効化

モデル アドバイザーの設定エディターを使用して、モデル アドバイザーのチェックおよびフォルダーのチェック ボックス制御を無効にすることができます。そうすることで、モデル アドバイザー構成ツリーにチェックはリスト表示されますがグレー表示になり、解析にチェックを追加したり削除したりできなくなります。

[モデル アドバイザー] ペインで、フォルダーまたはチェックで右クリックし、[無効] を選択します。モデル アドバイザーの設定エディターのチェック ボックスの選択状態により、モデル アドバイザーでは次のような結果になります。

  • モデル アドバイザーの設定エディターのチェックの横のボックスがオンの場合、モデル アドバイザーのチェックは自動的に選択されます。[無効] を選択したので、チェックはグレー表示され、解析からこのチェックを削除することはできません。

    チェックの横のボックスがグレー表示になってい "ない" 場合、かつ [無効] オプションがモデル アドバイザーの設定エディターに適用されている場合、モデル アドバイザーにはチェックが選択されておらず、解析に含めることはできません。

  • モデル アドバイザーの設定エディターで、フォルダーの横のボックスがオンの場合、モデル アドバイザーにおいてフォルダー内のチェックが自動的に選択されます。ここでは [無効] を選択したため、フォルダーとそのチェックがグレー表示され、解析からチェックを削除しようとしてもできません。

    フォルダーの横のボックスが選択されてい "ない" 場合、かつ [無効] オプションがモデル アドバイザーの設定エディターに適用される場合、モデル アドバイザーで、フォルダー内のいずれのチェックも選択されず、解析に含めることはできません。

チェックまたはフォルダーが無効になっているとき、[有効] オプションを使用して、解析にチェックを含めるかどうかをユーザーに決めさせることができます。

メモ

[有効][無効] は、モデル アドバイザー ユーザー インターフェイスと編集時のチェックの両方において、解析時のチェックの実行に影響を与えます。

チェックをカスタマイズするパラメーターの指定

モデル アドバイザーの設定エディターを使用して、モデル アドバイザー チェックをカスタマイズできます。たとえば、チェックの表示名、入力パラメーターなどです。

[情報] タブで、チェックについてカスタマイズできる内容を確認します。

  • 表示名 — チェックにモデル アドバイザーに表示される新しい名前を付けます。表示名を変更しても、チェックのタイトルは変更されないことに注意してください。

  • 問題にフラグが設定されている場合は結果をチェック — チェックによってモデルの問題にフラグが付けられるとき、結果を警告とマークするか、失敗とマークするかを指定します。既定値は [警告] です。[失敗] を選択すると、フラグが付けられたチェックは結果で失敗とマークされます。

  • 入力パラメーター — チェックに追加の特性や機能を加えます。モデル アドバイザーはこれらのパラメーターを使用して解析の重点をさらに定義します。たとえば、モデル アドバイザー チェック Check indentation of code in Stateflow statesの解析に、サブチェック jc_0736_b のみを選択して、許容される半角スペースの数を指定することができます。

欠けているチェックについての警告メッセージの非表示

モデル アドバイザーは、モデル アドバイザー構成を読み込むときに欠けているチェックについて自動的に警告を出します。モデル アドバイザーの設定エディターを使用してこのメッセージを非表示にすることができます。[モデル アドバイザーの設定エディター] のルート ノードを選択し、[情報] タブで [構成を読み込む際に、欠けているチェックについての警告メッセージを非表示にします。] を選択します。

あるいは、モデル アドバイザーの警告をプログラムによって非表示にすることもできます。その場合、MATLAB コマンド ラインに次のコマンドを入力します。

warning('off','Simulink:tools:MALoadConfigMissCorrespondCheck')

モデル アドバイザーの設定エディターを使用したカスタム モデル アドバイザー構成の作成

モデル アドバイザーの設定エディターを使用して、モデル アドバイザーの階層を整理し、チェック解析に含まれるチェックを指定できます。この例では、新しいコンフィギュレーション ファイルを作成し、モデル アドバイザーおよび編集時のチェック用のチェックを指定し、チェック パラメーターを定義し、モデル アドバイザーにコンフィギュレーションを読み込む方法について説明します。

モデル アドバイザー構成の作成

この例では、custom_Configuration.json という名前のカスタム コンフィギュレーション ファイルを作成します。このコンフィギュレーションは、モデル アドバイザーを使用して実行する MathWorks Advisory Board (MAB) モデリング ガイドライン チェックおよび業界標準チェックで構成されます。

1.コマンド プロンプトで次のコマンドを入力して、モデル アドバイザーの構成エディターを開きます。

Simulink.ModelAdvisor.openConfigUI

2.ツールストリップで [ライブラリを表示] を選択し、[ライブラリ] ペインを表示します。[製品別] タブの検索フィールドに ISO 26262 と入力します。

3.[Simulink Check]、[モデリング標準]、[IEC 61508、IEC 62304、ISO 26262、ISO 25119、EN 50128 および EN 50657 のチェック] フォルダーを右クリックして [コピー] を選択します。モデル アドバイザーの構成エディターのルート フォルダーを右クリックし、[貼り付け] をクリックします。フォルダーおよびチェックがルート フォルダーにコピーされたことを確認します。

メモ: [ライブラリ] ペインからコピーされたチェックでは、既定のパラメーター設定が保持されています。カスタム コンフィギュレーション フォルダーにペーストされると、各チェックの横のボックスはオフになります。

4.[モデル アドバイザー] ペインの [タスク別] フォルダーで、[MAB のモデリング標準] フォルダーを右クリックし、[切り取り] を選択します。[モデル アドバイザーの構成エディター] のルート フォルダーをクリックし、[貼り付け] をクリックします。フォルダーは [タスク別] フォルダーから削除され、[モデル アドバイザーの構成エディター] のルート フォルダーに新しいサブフォルダーとして追加されます。

メモ: [モデル アドバイザー] ペインのフォルダーからコピーされるか切り取られたチェックは、ユーザー定義のパラメーター設定を保持します。チェックが複数のフォルダーに含まれるとき、各チェックに個別に異なるパラメーターを指定できます。

5.[IEC 61508、IEC 62304、ISO 26262、ISO 25119、EN 50128 および EN 50657 のチェック] フォルダーを選択し、[下に移動] ボタンを使用して階層内のフォルダーの位置を変更します。モデル アドバイザーは [MAB のモデリング標準] フォルダー内のチェックを最初に実行します。

6.[製品別] および [タスク別] フォルダーを選択し、[削除] を選択します。

7.[モデル アドバイザー] ペインで、コンフィギュレーション フォーカス オプションを [Edit-Time supported checks] に設定します。[Edit-Time supported checks] オプションは、このコンフィギュレーション内にある編集時のチェックをサポートするチェックを表示します。

8.[名前を付けて保存] をクリックし、コンフィギュレーション ファイルの名前を custom_Configuration にします。プロンプトで [はい] を選択し、コンフィギュレーションを既定の構成として保存します。ファイルは自動的に .json 形式で保存されます。

メモ: 既定のコンフィギュレーションを以前に指定している場合、[既定のコンフィギュレーション設定のクリア] を使用して現在の既定のコンフィギュレーション ファイルを指定しているフラグをクリアできます。このボタンをクリックしても、モデル アドバイザーの設定エディターに現在表示されているコンフィギュレーションは変わりません。

9.モデル アドバイザーの設定エディターを閉じます。

10.MATLAB コマンド ラインに次を入力して、AdvisorCustomizationExample.slx モデルを開きます。

open_system('AdvisorCustomizationExample.slx');

11.[モデル化] タブで、[モデル アドバイザー]、[編集時チェック] をクリックします。[コンフィギュレーション パラメーター] ダイアログ ボックスで、[編集時チェック][適用] を選択します。[コンフィギュレーション パラメーター] ダイアログ ボックスを閉じます。

12.モデル内で、3 つのブロックが強調表示されていることに注目してください。これらのブロックには、このコンフィギュレーションにおける編集時のチェック項目違反が含まれます。警告にカーソルを合わせてブロックをクリックし、問題を確認します。

13.モデル アドバイザーを開き、モデル アドバイザーにフォルダー [MAB のモデリング標準] および [IEC 61508、IEC 62304、ISO 26262、ISO 25119、EN 50128 および EN 50657 のチェック] が表示されていることを確認します。

14.モデル アドバイザーを閉じます。

モデル アドバイザー構成の更新

次に、カスタム コンフィギュレーション ファイル custom_Configuration.json ファイルのチェックをカスタマイズし、そのカスタマイズが AdvisorCustomizationExample.slx モデルのモデル アドバイザー解析に与える影響を確認します。

1.[モデル化] タブで、[モデル アドバイザー]、[設定エディター] をクリックします。

2.[モデル アドバイザーの設定エディター] のルート ノード フォルダーの横にあるチェック ボックスをクリアします (この手順はオプションです。しかし、チェックをオフにすることで、モデル アドバイザーの設定エディターを使用してモデル アドバイザーに表示するチェックを指定した結果をより簡単に確認できるようになります)。

3.モデル アドバイザーでモデル アドバイザー解析に含めるチェックを指定できるようにするため、[モデル アドバイザーの構成エディター] ルート フォルダーを右クリックし、[有効] をクリックします。(メモ: [有効] は既定の設定です。無効になっているチェックがない場合、このオプションはグレー表示されています)。

4.[MAB のモデリング標準]、[命名規則]、[コンテンツ]、[ブロック名での文字の使用をチェック] チェックの横のボックスをオンにします。

5.以下の各チェックを右クリックし、[無効] を選択します。

  • [MAB のモデリング標準]、[命名規則]、[コンテンツ]、[ブロック名での文字の使用をチェック]

  • [MAB のモデリング標準]、[命名規則]、[コンテンツ]、[サブシステム名の長さをチェック]

6.[MAB のモデリング標準]、[Simulink]、[ブロック線図の外観]、[ブロック名がブロックの下になっているかどうかをチェック] チェックをクリックし、[情報] タブの [問題にフラグが設定されている場合は結果をチェック] オプションで Fail を選択します。[適用] をクリックします。

メモ: [問題にフラグが設定されている場合は結果をチェック] オプションの既定値は Warning です。

7.[保存] をクリックしてコンフィギュレーションを保存します。モデル アドバイザーの設定エディターとモデルを閉じます。

8.モデル アドバイザー キャッシュを更新し、MATLAB コマンド ラインに次のコマンドを入力して、モデル AdvisorCustomizationExample.slx を開きます。

Advisor.Manager.refresh_customizations();
open_system('AdvisorCustomizationExample.slx');

9.モデル アドバイザーを開きます。

これらのチェックが、モデル アドバイザーの設定エディターで選択した設定を反映して、次のようになっていることを観察します。

  • [MAB のモデリング標準]、[命名規則]、[コンテンツ]、[ブロック名での文字の使用をチェック] はグレー表示されており、チェック ボックスはオンになっている。このチェックはモデル アドバイザー解析で常に実行されます。グレー表示されているため、解析から除外することはできません。

  • [MAB のモデリング標準]、[命名規則]、[コンテンツ]、[サブシステム名の長さをチェック] がグレー表示されており、チェック ボックスはオフになっている。このチェックは解析に含まれません。グレー表示されているため、解析に含めるよう選択することはできません。

10.[MAB のモデリング標準]、[Simulink]、[ブロック線図の外観]、[ブロック名がブロックの下になっているかどうかをチェック] チェックの横のボックスをオンにします。

11.モデル アドバイザー解析を実行するには、[MAB のモデリング標準] ルート ノードを右クリックし、[選択したチェックを実行] を選択します。

12.以下のチェックをクリックし、モデル アドバイザー解析結果を確認します。

  • [MAB のモデリング標準]、[命名規則]、[コンテンツ]、[ブロック名での文字の使用をチェック] チェックが警告アイコンでマークされており、結果によりチェック項目違反が Gain ブロックにあることが示されている。

  • [MAB のモデリング標準]、[命名規則]、[コンテンツ]、[サブシステム名の長さをチェック] チェックは、解析に選択できないため、結果がない。

  • [MAB のモデリング標準]、[Simulink]、[ブロック線図の外観]、[ブロック名がブロックの下になっているかどうかをチェック] チェックは失敗アイコンでマークされている。モデル アドバイザーの設定エディターを使用してこのチェック設定を指定したため、この動作は意図されたものです。

参考

|

関連するトピック