Main Content

機能テストのためのモデル コンポーネントの分離

モデル アーキテクチャの設計を使用して設計されたモデルのスタンドアロンのモデルを作成できます。このモデル スライスは、デバッグおよび調整のためにモデル コンポーネントおよび関連する信号を分離します。

機能テストのためのサブシステムの分離

モデルのサブシステムをデバッグおよび調整するには、スタンドアロンのモデルを作成します。スタンドアロンのモデルは、サブシステムおよび関連する信号を分離します。ソース モデル全体のシミュレーションを行うことなく、サブシステムの動作を観察できます。

メモ

バーチャル サブシステムはスライスできません。バーチャル サブシステムを分離するには、まず Atomic サブシステムに変換します。

シミュレーション ベースの入力によるサブシステムの分離

サブシステムのシミュレーション動作を観察するには、ログに記録された信号入力をスタンドアロンのモデルに含めます。モデル スライスを設定する際、シミュレーション時間枠を指定します。大規模モデルの場合、サブシステムの動作を個別のモデルで観察すると、ソース モデル全体をコンパイルして実行した場合と比較して時間を節約できます。

この例は、クルーズ コントロール システムの Controller サブシステムのシミュレーションの効果を含める方法を示します。

Simulink canvas for cruise control system

  1. モデル スライサーを開くには、[モデルの検証、妥当性確認、テスト] ギャラリーの下の [アプリ] タブで、[モデル スライサー] をクリックします。

  2. 依存関係の分析の開始点を選択するには、ブロック、信号または端子を右クリックして、[モデル スライサー][開始点として追加] を選択します。

  3. スライス モデルでサブシステムを分離するには、サブシステムを右クリックして、[モデル スライサー][コンポーネントのスライス] を選択します。

    モデル例では、Controller サブシステムについて [コンポーネントのスライス] を選択することで、依存関係の分析が開始点 (throttle 出力端子) と Controller サブシステム間のパスに制限されます。

    Simulink canvas with Controller subsystem and throttle outport highlighted

  4. シミュレーション時間枠を指定するには、次の手順に従います。

    1. モデル スライサーで [シミュレーション時間枠] を選択します。

    2. [シミュレーションを実行] ボタン をクリックします。

    3. シミュレーションの終了時間を入力し、[OK] をクリックします。

      Record simulation time window showing Stop time of 45 seconds

      モデル スライサーはシミュレーション期間中のモデルの依存関係を解析します。

  5. サブシステムおよび記録された信号を抽出するには、[スライスの生成] をクリックします。スライス モデルのファイル名を入力します。

    依存関係の分析に基づいて、Signal Editor ブロックがサブシステムに信号入力を提供します。

    以下のスライス モデルでは、Signal Editor ブロックに含まれている 1 つのテスト ケースが 0 ~ 45 秒のシミュレーション時間に Controller サブシステムへ信号入力を送信することを表しています。

    Simulink canvas for sliced model

機能テストのための参照モデルの分離

参照モデルの機能テストを行うために、参照モデルのスライスを作成し、開ループ モデルとして扱うことができます。簡易化された開ループ参照モデルは、閉ループ システムをシミュレートすることによって生成された入力を使用して分離できます。

この例では、フォールトトレラント燃料制御システムの参照モデル コントローラーを機能テストのためにスライスする方法を示します。デバッグおよび調整のために簡易化された開ループ参照モデルを作成するには、参照先のコントローラーのスライスを生成します。

手順 1: モデルを開く

フォールトトレラント燃料制御システム モデルには、参照モデル コントローラー fuel_rate_control が含まれています。

open_system('sldvSlicerdemo_fuelsys');

手順 2: 参照モデルをスライスする

fuel_rate_control 参照モデルを解析するには、スライスしてスタンドアロンの開ループ モデルを作成します。モデル スライス マネージャーを開くには、[アプリ][モデルの検証、妥当性確認、テスト][モデル スライサー] を選択するか、fuel_rate_control モデルを右クリックして [モデル スライサー][コンポーネントのスライス] を選択します。モデル スライス マネージャーを開くと、モデル スライサーはモデルをコンパイルします。その後、モデル スライスのプロパティを設定します。

メモ: sldvSlicerdemo_fuelsys モデルのシミュレーション モードは Accelerator モードです。参照モデルをスライスするときに、そのシミュレーション モードが Normal モードに設定され、モデル スライサーの終了時に元のシミュレーション モードに戻ります。

手順 3: 開始点を選択する

fuel_rate_control モデルを開き、fuel-rate 端子を右クリックして、[モデル スライサー][開始点として追加] を選択します。モデル スライサーで、fuel_rate に影響を与える上流の構造が強調表示されます。

手順 4: スライスを生成する

a. [モデル スライス マネージャー] ダイアログ ボックスで、[シミュレーション時間枠] を選択します。

b. [シミュレーションを実行] ボタンをクリックします。

c. [終了時間]20 を入力します。[OK] をクリックします。

d. [スライスの生成] をクリックします。閉ループの sldvSlicerdemo_fuelsys モデルの入力を使用して、スライス参照モデルがシミュレートされます。

スライス モデルに関して、[信号エディター] ウィンドウに、シミュレーション時間 0 ~ 20 秒の参照モデルに対する信号入力を表すテスト ケースが表示されます。

参考

|