最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

Simulink.sdi.deleteSignal

シミュレーション データ インスペクター リポジトリから信号を削除

説明

Simulink.sdi.deleteSignal(sigID)sigID に対応する信号をシミュレーション データ インスペクター リポジトリから削除します。

すべて折りたたむ

この例では、Simulink.sdi.copyRunSimulink.sdi.deleteSignal を使用して、元の実行から信号のサブセットを含む実行のコピーを作成する方法について説明します。すべての信号をもつ元の実行を保持したまま、コピーを使用して信号のサブセットの比較を解析および実行できます。たとえば、モデル sldemo_fuelsys は 10 個の信号をログ記録するように設定されます。異なる種類のエラーに対するシステムの応答を比較するために、すべてのログ信号で比較を実行する必要はありません。比較を実行する前にシステムの応答を表さない信号を削除することにより、処理時間を短縮し、結果の表示を簡略化します。

実行の作成

モデル sldemo_fuelsys を読み込み、シミュレーションを実行してシミュレーション データ インスペクターで実行を作成します。最初の実行ではスロットル角度センサーのエラーをシミュレートし、2 回目の実行では排気ガスの酸素センサーのエラーをシミュレートします。

load_system('sldemo_fuelsys')
modelWorkspace = get_param('sldemo_fuelsys','modelworkspace');
modelWorkspace.assignin('throttle_sw',0)
modelWorkspace.assignin('ego_sw',1)
sim('sldemo_fuelsys')

modelWorkspace.assignin('throttle_sw',1)
modelWorkspace.assignin('ego_sw',0)
sim('sldemo_fuelsys')

実行のコピー

シミュレーション データ インスペクターのプログラムによるインターフェイスを使用して、シミュレーション用の Simulink.sdi.Run オブジェクトを取得した後、実行のコピーを作成します。

% Get runs
runIDs = Simulink.sdi.getAllRunIDs;

runID1 = runIDs(end-1);
runID2 = runIDs(end);

run1 = Simulink.sdi.getRun(runID1);
run2 = Simulink.sdi.getRun(runID2);

% Create a copy of each run, truncRun
[truncRun1,runIndex1,signalIDs1] = Simulink.sdi.copyRun(runID1);
[truncRun2,runIndex2,signalIDs2] = Simulink.sdi.copyRun(runID2);

実行コピーで信号を削除

sldemo_fuelsys モデルは、システムの応答を表すいくつかの信号と共に故障スイッチの値をログに記録するように設定されています。排気ガスの酸素センサーが故障した際、スロットル角度センサーがその応答に失敗するときにシステムの応答を比較する場合、故障スイッチの状態を比較しても新しい情報は提供されません。このため、比較を実行する前にスイッチ信号を削除し、不要な計算を除去します。

Simulink.sdi.deleteSignal(signalIDs1(1))
Simulink.sdi.deleteSignal(signalIDs1(3))
Simulink.sdi.deleteSignal(signalIDs1(5))
Simulink.sdi.deleteSignal(signalIDs1(8))

Simulink.sdi.deleteSignal(signalIDs2(1))
Simulink.sdi.deleteSignal(signalIDs2(3))
Simulink.sdi.deleteSignal(signalIDs2(5))
Simulink.sdi.deleteSignal(signalIDs2(8))

打ち切られた実行を比較

Simulink.sdi.copyRunSimulink.sdi.deleteSignal で作成した打ち切られた実行を使用して、さまざまな種類のエラーに対するシステムの応答の比較を実行できます。次に、シミュレーション データ インスペクターを開いて比較結果を表示します。

truncRunDiff = Simulink.sdi.compareRuns(truncRun1,truncRun2);

Simulink.sdi.view

入力引数

すべて折りたたむ

シミュレーション データ インスペクター リポジトリ内の信号を識別する一意の数値。信号の信号 ID は Simulink.sdi.createRun からの戻り値として、または Simulink.sdi.Run オブジェクトのメソッドを使用して取得できます。

R2016a で導入