Main Content

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

sldvextract

サブシステムまたはサブチャートの内容を解析用の新しいモデルに抽出する

説明

newModel = sldvextract(subsystem) は、Atomic サブシステム subsystem の内容を抽出し、Simulink® Design Verifier™ ソフトウェア向けの解析用モデルを作成します。sldvextract は、新しいモデルの名前を newModel で返します。そのモデル名が存在する場合、sldvextract はサブシステム名をモデル名に使用し、モデル名に数字を追加します。

newModel = sldvextract(subchart) は、Atomic サブチャート subchart の内容を抽出し、Simulink Design Verifier ソフトウェア向けの解析用モデルを作成します。subchart には Atomic サブチャートの絶対パスを指定します。そのモデル名が存在する場合、sldvextract はサブチャート名をモデル名に使用し、モデル名に数字を追加します。

メモ

エクスポートされたグラフィカル関数がサブチャートの外部にあり、Atomic サブチャートがこの関数を呼び出す場合、sldvextract はモデルを作成しますが、新しいモデルはコンパイルされません。

newModel = sldvextract(exportfcnmodel) は、Simulink Design Verifier による解析用のエクスポート関数モデル exportfcnmodel を呼び出すスケジューラ モデルを作成します。sldvextractnewModel を使用して新しいモデルの名前を返します。newModel は、exportfcnmodel のモデル名と接尾辞 SldvScheduler で構成されます。そのモデル名が既に存在する場合、sldvextractexportfcnmodel の名前をモデル名に使用し、モデル名に数字を追加します。

newModel = sldvextract(modelmissingslfunctiondef) は、Simulink Design Verifier が解析するための不足している Simulink 関数定義をもつモデル modelmissingslfunctiondef のスタブ モデルを抽出します。newModel を使用して新しいモデルの名前を返します。そのモデル名が既に存在する場合、sldvextract は接尾辞 SldvStub が付いた入力モデル名を抽出されたモデルの名前に使用し、モデル名に数字を追加します。

newModel = sldvextract(modelmissingslfunctiondef, showModel) は、showModeltrue に設定した場合に、抽出されたモデルを開きます。showModelfalse に設定された場合、抽出されたモデルは読み込まれるだけです。

すべて折りたたむ

sldemo_mdlref_conversion モデルから Atomic サブシステム Bus Counter を抽出し、新しいモデルにコピーします。

openExample('sldemo_mdlref_conversion');
newmodel = sldvextract('sldemo_mdlref_conversion/Bus Counter', true);

sf_atomic_sensor_pair モデルから Atomic サブチャート Sensor1 を抽出し、新しいモデルにコピーします。

openExample('sf_atomic_sensor_pair');
newmodel = sldvextract('sf_atomic_sensor_pair/RedundantSensors/Sensor1',...
		true);

この例では、周期的な Function-Call Subsystem で構成されるモデルの解析方法を説明します。この例では、AUTOSAR モデル例 sldvExportFunction_autosar_multirunnables を使用します。

1.sldvExportFunction_autosar_multirunnables モデルを開きます。

open_system('sldvExportFunction_autosar_multirunnables');

2.テスト生成解析を実行するには、[Design Verifier] タブで [テストの生成] をクリックします。

[Simulink Design Verifier の結果の概要] ウィンドウには、スケジューラ モデル sldvExportFunction_autosar_multirunnables_SldvScheduler.slx が作成されたことが示されます。スケジューラ モデルはsldvextractを使用して生成することもできます。

create_scheduler_model.png

scheduler_model_harness.png

このスケジューラ モデルは、MATLAB® Function ブロック _SldvExportFcnScheduler で構成されています。モデルは周期的な Function-Call Subsystem で構成されているため、関数が周期的に呼び出されます。

この MATLAB® コードは、周期的な関数呼び出しの実行順序を指定しています。Runnable1 および Runnable2 は、時間間隔がどちらも 1 であるため、最初に実行されます。10 タイム ステップ後、Runnable3 が実行されます。

scheduler_matlab_code.png

非周期的な Function-Call Subsystem で構成されているモデルの場合、スケジューラは追加の入力端子 FcnTriggerPort で構成されます。FcnTriggerPort の値は、タイム ステップ内で関数呼び出しを行うかどうかを示します。

たとえば、Runnable1 が非周期的な Function-Call Subsystem である場合、FcnTriggerPort Inport ブロックでスケジューラ モデルが呼び出されます。このグラフィックスは、[タイミング凡例] ウィンドウと非周期的な関数呼び出しのスケジューラ モデルを示しています。

scheduler_matlab_code_aperiodic.png

テスト生成解析後、[Simulink Design Verifier の結果の概要] ウィンドウには 7/7 のオブジェクティブが Satisfied という結果が示されます。

3.テスト ケースをシミュレートしてカバレッジ レポートを生成するには、[Simulink Design Verifier の結果の概要] ウィンドウで [テストをシミュレートしてモデル カバレッジ レポートを生成] をクリックします。ソフトウェアによりテスト ケースがシミュレートされ、モデル カバレッジ情報が収集されてカバレッジ レポートが表示されます。

4.詳細な解析レポートを表示するには、[Simulink Design Verifier の結果の概要] ウィンドウで [HTML] をクリックします。

[解析情報] の章の [エクスポート関数解析のスケジュール] の節に、エクスポート関数を呼び出すスケジュールがリストされます。

multirunnables_modell_coverage_report.png

入力引数

すべて折りたたむ

Atomic サブシステムへの絶対パス。文字ベクトルまたは string スカラーとして指定します。

Stateflow® Atomic サブチャートへの絶対パス。文字ベクトルまたは string スカラーとして指定します。

エクスポート関数モデルへの絶対パス。文字ベクトルまたは string スカラーとして指定します。

不足している Simulink 関数モデルへの絶対パス。文字ベクトルまたは string スカラーとして指定します。

抽出されたモデルを表示するかどうか。logical として指定します。

出力引数

すべて折りたたむ

新しいモデルの名前。文字ベクトルとして返されます。

バージョン履歴

R2007a で導入