Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

Simulink モデルの比較とマージ

この例では、MATLAB® の比較レポートを使用して 2 つの異なる設計間の変更された部分を把握する方法を示します。これは、2 つの Simulink® モデルの変更箇所を比較レポートで確認してマージする方法を示します。

モデルの比較

ユーザーがモデル sl_aircraft1 にいくつかの変更を行い、結果のモデルを sl_aircraft2 として保存しました。

visdiff を使用して、sl_aircraft1 モデルと sl_aircraft2 モデルを比較します。

visdiff('sl_aircraft1.slx','sl_aircraft2.slx');

結果の理解

比較ツールは、モデルの階層構造全体ではなく、2 つのモデル間の相違点のみを含むレポートを示します。

項目が変更されているか (紫色)、挿入されているか (青色)、削除されているか (黄色) を色で示します。

差分を順に確認

[比較] タブの [次へ][前へ] ナビゲーション ボタンを使用して、レポート内で変更のグループを順に確認します。

  • レポートは変更を 1 つずつ表します。[左] のツリーで選択した項目に一致がある場合、[右] のツリーでも選択されます。

  • MATLAB で、両方のモデルがレポートの横に表示されます。レポートでは、可能な場合に両方の Simulink モデルで選択した項目が強調表示されます。

モデル内での強調表示を制御するには、[比較] タブの [強調表示] セクションで、[常に強調表示] チェック ボックスをオンまたはオフにします。[今すぐ強調表示] ボタンをクリックすると、現在選択されているレポート ノードをいつでも強調表示できます。

結果のフィルター処理

フィルターを適用して、比較レポートに表示される変更のタイプを制御できます。利用可能なフィルターと現在のレポートに適用されているかどうかを確認するには、[比較] タブの [フィルター] セクションで下矢印をクリックしてフィルター ギャラリーを展開します。フィルター名をクリックして、適用するかどうかを切り替えます。[フィルター] セクションで、[表示] または [非表示] をクリックして、フィルターを適用する方法を制御します。

たとえば、Simulink モデル ファイルの一部の情報は機能以外であると定義されています。これらは、設計の動作を変更する可能性が低い変更です。機能以外の項目は既定では非表示になっています。[非表示] フィルター ボタンが選択されているときは [機能以外の変更] ボタンの選択を解除すると表示できます。

結果のパブリッシュ

モデル比較レポートの印刷可能なバージョンを保存するには、[パブリッシュ][HTML][Word]、または [PDF] を選択します。

Simulink モデルでの変更のマージ

ツールストリップで [マージ モード] ボタンをクリックして、2 つの Simulink モデル間の変更をマージできます。これにより 3 番目のファイル targetFile が作成され、このファイルには左側のモデル (sl_aircraft1) ) または右側のモデル (sl_aircraft2) のどちらかの変更が含まれます。[ターゲット] ツリーのボタンを使用して、targetFile 内で保持する差分を選択します。

[ファイルの保存] ボタンをクリックして右側のモデル (sl_aircraft2) で選択した変更を保存します。

ヒント: ラインをマージする前にブロックをマージし、遷移をマージする前にステートとジャンクションをマージしてください。マージ操作のヒントを参照してください。

参考

visdiff

詳細情報

Simulink モデルの比較

同じ名前のモデルの比較

関連する例

Stateflow を含む Simulink モデルの比較とマージ

Simulink 3-way マージを使用した競合の解決