Main Content

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

モデル参照変換アドバイザー

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

説明

モデル参照変換アドバイザーは、サブシステム (条件付きサブシステムおよび参照サブシステムを含む) を参照モデルに変換します。

サブシステムを参照モデルに変換することは、大規模で複雑なシステムのモデル化やチームベースの開発にとって有益です。多くの大規模モデルでは、サブシステムと参照モデルを組み合わせて使用します。サブシステムを参照モデルに変換するかどうかを決定するには、モデル コンポーネントのタイプの選択を参照してください。

変換で問題が発生すると、アドバイザーを使って問題を確認および修正できます。Subsystem ブロックの内容を準備すると、アドバイザーで識別される問題がなくなるか、問題の数が削減されます。このような問題はモデル編集環境で解決する方が、アドバイザーと Simulink® エディターの間を何度も切り替えるよりも効率的です。

モデル参照変換アドバイザーは、いくつかの種類のサブシステムで変換をサポートしません。以下に例を示します。

  • サブシステム境界を越える Simscape™ Multibody™ コンポーネントのある Subsystem ブロック

  • 非同期サブシステム — 非同期サブシステムを非同期関数呼び出しを受け入れる参照モデルに変換するには、非同期サポートの確認事項 (Simulink Coder)を参照してください。

The Model Reference Conversion Advisor window.

モデル参照変換アドバイザー を開く

  • Simulink エディターで、Subsystem ブロックを選択します。Simulink ツールストリップで、次のいずれかの操作を実行します。

    • [Subsystem ブロック] タブで、[変換][Model ブロック] を選択します。

    • [モデル化] タブの [コンポーネント] ギャラリーで、[Model ブロックに変換] を選択します。

  • MATLAB® コマンド ウィンドウで、引数 'UseConversionAdvisor'true に設定して関数 Simulink.SubSystem.convertToModelReference を使用します。

すべて展開する

変換の出力を決定し、アドバイザーが変換エラーの修正を自動的に試みるかどうかを制御する入力パラメーターを指定します。

アドバイザーを開くときに、左側のペインで、最上位ノードが選択されています。このノードによって、アドバイザーが参照モデルに変換する Subsystem ブロックが特定され、変換入力パラメーターが提供されます。既定のパラメーター値を使用するか、あるいは値を変更して変換をカスタマイズすることができます。

入力パラメーター説明

新規モデル名

アドバイザーは Subsystem ブロック名に基づいて MATLAB のパスの中で一意であるモデル名を提供します。

モデル名は 59 文字以内です。詳細については、モデル名を参照してください。

ヒント

アドバイザーがターゲット参照モデルが既に存在することを示すエラーを生成した場合は、[新規モデル名] パラメーターを使用して新しいファイル名を指定します。

変換データ ファイル名

アドバイザーは変換中に作成されるデータを格納するためのファイルを作成します。既定では、アドバイザーはモデル名をファイル名の最初に使用し、そのファイル名に _conversion_data.mat を追加します。たとえば、myModel という名前のモデル内のサブシステムの場合、変換ファイル名は myModel_conversion_data.mat です。

変換データは、MAT ファイル (既定) または MATLAB ファイルに保存できます。ファイルの拡張子 .m を使用する場合、アドバイザーはすべての変数を MATLAB ファイルに直列化します。

メモ

最上位モデルがデータ ディクショナリを使用する場合、このオプションは選択できません。

自動的にエラーを修正 (可能な場合)

既定では、アドバイザー チェックによってアドバイザーが修正可能なエラーが検出された場合、アドバイザーに [修正] ボタンが表示されます。このボタンをクリックすると、アドバイザーによって問題が修正されます。

このパラメーターを有効にすると、アドバイザーは修正可能なすべての変換エラーを [修正] ボタンを表示することなく修正します。

サブシステムの内容を Model ブロックに置換

既定では、アドバイザーは Model ブロックを挿入することで元のモデルを更新します。アドバイザーの動作は、自動修正オプションを使用しているかどうかにより異なります。

  • 自動修正を使用する場合、自動修正によって入力端子または出力端子が変更される場合を除き、アドバイザーは Subsystem ブロックを Model ブロックで置き換えます。端子が変更された場合、アドバイザーには Model ブロック内のサブシステムのコンテンツが含まれ、それを Subsystem ブロックに挿入します。

  • 自動修正を使用しない場合、アドバイザーは Subsystem ブロックを Model ブロックで置き換えます。

新規に作成された参照モデルを参照する Model ブロックのみを含む新しい Simulink エディター ウィンドウをアドバイザーが開くようにするにはこのパラメーターをクリアします。アドバイザーは他の Simulink エディター ウィンドウ内の元のモデルは更新しません。

コード マッピングをコピー

コード マッピング情報を親モデルから新しい変換済みの参照モデルにコピーします。既定の設定では、このパラメーターはオフです。

コード マッピング情報には、コード生成のためのモデル データ要素の設定が含まれます。このパラメーターはシミュレーションに影響しません。

詳細については、サブシステムの参照モデルへの変換とコードの生成 (Simulink Coder)を参照してください。

Model ブロック シミュレーション モード

参照モデルを参照する新しい Model ブロックのシミュレーション モード。

  • [ノーマル] (既定の設定)

  • [アクセラレータ]

変換後にシミュレーション結果をチェック

変換前および変換後に最上位モデルのシミュレーション結果を比較します。

このオプションを使用するには、変換を実行する前に以下を行います。

  • 関心のあるサブシステム出力信号に対して信号のログを有効にする。

  • [サブシステムの内容を Model ブロックに置換] をオンにする。

  • アドバイザーの [Model ブロック シミュレーション モード] オプションを元のモデルと同じシミュレーション モードに設定する。

  • [終了時間][絶対許容誤差]、および [相対許容誤差] を指定する。

変換完了後に結果を表示するには、[View comparison results] をクリックします。アドバイザーは比較結果をシミュレーション データ インスペクターに表示します。詳細については、変換前後のシミュレーション結果の比較を参照してください。

終了時間

既定では、最上位モデルの終了時間が inf である場合を除いて、アドバイザーは最上位モデルの終了時間を使用します。最上位モデルの終了時間が inf である場合、アドバイザーは既定の終了時間である 10 を使用します。

このオプションを使用するには、[変換後にシミュレーション結果をチェック] を選択します。

絶対許容誤差

比較を実行したシミュレーションにおける信号の絶対許容誤差。既定の設定は 1e-06 です。

このオプションを使用するには、[変換後にシミュレーション結果をチェック] を選択します。

相対許容誤差

比較を実行したシミュレーションにおける信号の相対許容誤差。既定の設定は 1e-03 です。

このオプションを使用するには、[変換後にシミュレーション結果をチェック] を選択します。

実行後にレポートを表示

変換の完了後、変換の設定と結果をまとめたレポートが開きます。

モデル参照変換アドバイザーでは、各チェックを自動的にステップ実行できます。

  1. サブシステムの変換オプションの設定後、[変換] をクリックします。

    モデル参照変換アドバイザーが各チェックを自動的にステップ実行します。

  2. アドバイザーから報告された問題を解決します。アドバイザーでは、自動で修正できるすべての問題に [修正] ボタンが表示されます。

  3. 報告された問題を解決したら、[続行] をクリックします。

モデル参照変換アドバイザーがすべてのチェックを正常に実行したら、変換を完了します。

すべての変換入力パラメーターが有効であることを確認します。

変換入力パラメーターの詳細については、サブシステム変換オプションの設定を参照してください。

  1. 左側のペインで [変換の入力パラメーターをチェック] ノードを選択します。

  2. [このタスクを実行] ボタンをクリックします。

  3. アドバイザーから報告された問題を解決します。アドバイザーでは、自動で修正できるすべての問題に [修正] ボタンが表示されます。

  4. 報告された問題を解決したら、[続行] をクリックします。

モデル コンフィギュレーションがモデル参照の要件を満たしていることを検証します。このチェックは、モデル参照で有効でないモデル コンフィギュレーション パラメーター設定を特定します。

  1. 左側のペインで [モデル コンフィギュレーションをチェック] ノードを選択します。

  2. [このタスクを実行] ボタンをクリックします。

  3. アドバイザーから報告された問題を解決します。アドバイザーでは、自動で修正できるすべての問題に [修正] ボタンが表示されます。

  4. 報告された問題を解決したら、[続行] をクリックします。

サブシステム インターフェイスがモデルの参照要件を満たしているかどうかを検証します。

  1. 左側のペインで [サブシステムのインターフェイスをチェック] ノードを選択します。

  2. [このタスクを実行] ボタンをクリックします。

    アドバイザーは、サブシステムのタイプがアドバイザーが変換できるタイプであることを検証します。次に、マスク サブシステムなどの特定のタイプのサブシステムへのインターフェイスが変換の要件を満たしていることを検証します。

  3. アドバイザーから報告された問題を解決します。アドバイザーでは、自動で修正できるすべての問題に [修正] ボタンが表示されます。

  4. 報告された問題を解決したら、[続行] をクリックします。

サブシステムの内容がモデル参照の要件を満たしているかどうかを検証します。

  1. 左側のペインで [サブシステムのコンテンツをチェック] ノードを選択します。

  2. [このタスクを実行] ボタンをクリックします。

    アドバイザーはモデルが正常にコンパイルするかどうかを確認します。コンパイルが正常に行われると、アドバイザーはサブシステム内のブロックが変換の要件を満たしているかどうかチェックします。

  3. アドバイザーから報告された問題を解決します。アドバイザーでは、自動で修正できるすべての問題に [修正] ボタンが表示されます。

  4. 報告された問題を解決したら、[続行] をクリックします。

すべてのチェックが正常に実行されたら、変換が完了します。

  1. 左側のペインで [変換を完了] ノードを選択します。

  2. [このタスクを実行] ボタンをクリックします。

    モデル参照変換アドバイザーは以下を行います。

    • サブシステムから参照モデルが作成されます。

    • 参照モデルに必要な Simulink.Bus オブジェクト、Simulink.Signal オブジェクトおよび調整可能なパラメーターが作成されます。

    • 既定では、新しいモデルを参照する Model ブロックによって Subsystem ブロックが置き換えられます。

    • 自動修正によって端子が Model ブロック インターフェイスに追加された場合、Subsystem ブロックに Model ブロックが挿入されます。

    • slprj フォルダーに HTML 変換概要レポートが作成されます。このレポートには、アドバイザーが実行した修正結果を含む、変換プロセスの結果がまとめられています。このレポートでは、アドバイザーがコピーする要素についても説明しています。

    • オプションで、変換前と変換後にシミュレーション結果の整合性をチェックします。

    • 以下の要素を元のモデルから、新たに作成した参照モデルにコピーします。

      • コンフィギュレーション セット — 親モデルで以下を使用する場合

        • 参照されるコンフィギュレーション セットではないコンフィギュレーション セット。アドバイザーはコンフィギュレーション セット全体を参照モデルにコピーします。

        • 参照されるコンフィギュレーション セット。親モデルと参照モデルはどちらも同じ参照されるコンフィギュレーション セットを使用します。

      • 変数 — アドバイザーは、元のモデルでサブシステムが使用していたモデル ワークスペース変数のみを、参照モデルのモデル ワークスペースにコピーします。サブシステムを含むモデルがデータ ディクショナリを使用している場合は、参照モデルも同じデータ ディクショナリを使用します。

      • 要件リンク — アドバイザーは Requirements Toolbox™ ソフトウェアで作成された要件リンクを元の Subsystem ブロックから Model ブロックにコピーします。

変換結果に満足しない場合、モデルを初期の状態に戻すことができます。[変換を完了] チェックを正常に実行した後に、[元のモデルを復元するにはここをクリック] リンクを使用します。

[変換後にシミュレーション結果をチェック] を選択した場合、[比較結果を表示するにはここをクリック] リンクを使用して結果を表示できます。

[変換後にシミュレーション結果をチェック] を選択した場合、モデル参照変換アドバイザーは変換前と変換後に最上位モデルのシミュレーション結果の比較を提供します。

[変換を完了] チェックを正常に実行した後に、[比較結果を表示するにはここをクリック] をクリックします。結果がシミュレーション データ インスペクターに表示されます。緑色のチェック マークは、シミュレーション結果がベースライン モデルと新しい参照モデルを含むモデル間の許容誤差内にあることを示します。

The Simulation Data Inspector compares a logged signal before and after conversion.

詳細については、シミュレーション データの比較を参照してください。

バージョン履歴

R2014a で導入