Main Content

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

Simulink.sdi.createRun

シミュレーション データ インスペクターで実行を作成する

説明

runID = Simulink.sdi.createRun はシミュレーション データ インスペクター リポジトリ内に名前のない空の実行を作成し、実行 ID を返します。Simulink.sdi.getRun を使用して実行用の Simulink.sdi.Run オブジェクトを取得できます。これにより、メタデータと信号を実行に追加できるようになります。

runID = Simulink.sdi.createRun(runName)runName という名前の空の実行を作成します。

runID = Simulink.sdi.createRun(var) はワークスペース変数 var 内のデータを含む var という名前の実行を作成します。

runID = Simulink.sdi.createRun(runName,'vars',var,var2,...,varn) はベース ワークスペース内の 1 つ以上の変数からのデータを含む runName という名前の実行を作成します。実行内の信号は変数名から名前を取得します。

runID = Simulink.sdi.createRun(runName,'namevalue',sourceNames,sigValues) は cell 配列 sigValues 内のデータをもつ runName という名前の実行を作成します。sourceNames の cell 配列は sigValues データのソースとして使用する名前を指定します。

runID = Simulink.sdi.createRun(runName,'file',filename) は、filename で指定された MAT、CSV、MDF、または Microsoft® Excel® ファイルからのデータをもつ実行を作成します。

[runID,runIndex] = Simulink.sdi.createRun(___) はシミュレーション データ インスペクター リポジトリで作成された実行に対する実行 ID と実行インデックスを返します。

[runID,runIndex,signalIDs] = Simulink.sdi.createRun(___) はシミュレーション データ インスペクター内の実行 ID、実行インデックスと、実行内の信号の信号 ID を返します。

すべて折りたたむ

ベース ワークスペースまたはファイル内のデータから実行を作成することで、データをプログラムによってシミュレーション データ インスペクターにインポートできます。この例では、データをワークスペースで作成してから、データが含まれるシミュレーション データ インスペクターの実行を作成するいくつかの方法を示します。

データの作成

ワークスペースでデータを作成します。シミュレーション データ インスペクターは時系列データを多くの形式でサポートします。この例では、timeseries形式とSimulink.SimulationData.Dataset形式を使用してデータを作成し、そのデータを MAT ファイルに保存します。

正弦信号と余弦信号を作成し、説明的な名前を付けた timeseries オブジェクトに各信号のデータを保存します。

time = 0:0.2:20;

sine_vals = sin(2*pi/5*time);
sine_ts = timeseries(sine_vals,time);
sine_ts.Name = 'Sine, T=5';

cos_vals = cos(2*pi/8*time);
cos_ts = timeseries(cos_vals,time);
cos_ts.Name = 'Cosine, T=8';

Dataset 形式を使用すると、関連する信号データをまとめて 1 つのオブジェクトにグループ化できます。Dataset 形式はログ データの既定の形式であり、シミュレーションの入力データの読み込みでサポートされています。正弦波 timeseries データを含む Dataset オブジェクトを作成します。

sinusoids_ds = Simulink.SimulationData.Dataset;
sinusoids_ds = addElement(sinusoids_ds,cos_ts);
sinusoids_ds = addElement(sinusoids_ds,sine_ts);

各信号を係数 2 を使用してスケーリングし、Dataset オブジェクトを作成して結果の信号データを含めます。

doubSine = 2*sine_ts;
doubCos = 2*cos_ts;

doubSinusoids_ds = Simulink.SimulationData.Dataset;
doubSinusoids_ds = addElement(doubSinusoids_ds,doubSine);
doubSinusoids_ds = addElement(doubSinusoids_ds,doubCos);

最後に、timeseries データを MAT ファイルに保存します。

save sinusoids.mat sine_ts cos_ts

シミュレーション データ インスペクターを開く

各セクションで作成する実行を表示できるシミュレーション データ インスペクターを開きます。

Simulink.sdi.view

Simulink.sdi.Run オブジェクトを使用する実行の作成

空の実行を作成し、ワークスペースまたはファイルのデータを実行に追加することで、シミュレーション データ インスペクターでデータを実行にインポートできます。タスクに応じて、関数Simulink.sdi.Run.createまたは関数Simulink.sdi.createRunを使用して空の実行を作成できます。関数 Simulink.sdi.Run.create は新しい実行のSimulink.sdi.Runオブジェクトを返し、関数 Simulink.sdi.createRun は新しい実行の実行 ID を返します。

この例では関数 Simulink.sdi.Run.create を使用して空の実行を作成し、その実行にわかりやすい名前と説明を指定してから、関数 add を使用して正弦および余弦の timeseries データを追加します。

sinusoidsRun = Simulink.sdi.Run.create;
sinusoidsRun.Name = 'Sinusoids';
sinusoidsRun.Description = 'Sine and cosine signals of different frequencies';

add(sinusoidsRun,'vars',sine_ts,cos_ts)

この例では関数 Simulink.sdi.createRun を使用してシミュレーション データ インスペクターに My Waves という新しい実行を作成してから、関数 Simulink.sdi.addToRun を使用して正弦および余弦の timeseries データを実行に追加します。

runID = Simulink.sdi.createRun('My Waves');
signalID = Simulink.sdi.addToRun(runID,'vars',sine_ts,cos_ts);

ワークスペース変数からの実行の作成

ワークスペース内の単一の変数から実行を作成できます。実行の作成後、データを追加したり、別の実行を作成してその他のデータを含めたりすることができます。実行を作成するために使用する変数は、1 つの信号のみに対応するデータをもつ timeseries オブジェクトにすることも、あるいは複数の信号を含む Dataset オブジェクトにすることもできます。

この構文を使用して単一のワークスペース変数から実行を作成するときに、実行はその実行を作成するために使用されたオブジェクトと同じ名前を取得します。

runID = Simulink.sdi.createRun(sine_ts);

関数 Simulink.sdi.createRun は、作成する実行の実行 ID を返します。関数Simulink.sdi.getRunを使用して、実行の Run オブジェクトにアクセスできます。

sineRun = Simulink.sdi.getRun(runID);
sineRun.Name
ans = 
'Sine, T=5'

複数のワークスペース変数から実行を作成

データがワークスペースの複数の変数に存在している場合、vars オプションを指定した関数 Simulink.sdi.createRun を使用して複数の変数からシミュレーション データ インスペクターの単一の実行にデータをインポートできます。この構文を使用して、指定した名前を使用する単一の変数の実行を作成することもできます。

この例では、正弦および余弦の timeseries オブジェクトのデータを含む My Sinusoids という実行を作成します。

runID = Simulink.sdi.createRun('My Sinusoids','vars',sine_ts,cos_ts);

実行の作成とソース名の指定

関数 Simulink.sdi.createRunnamevalue オプションを使用して実行を作成し、実行内の信号の名前を指定できます。この構文は、階層データから個々のリーフ信号をインポートする場合に特に役立つことがあります。

この例では、両方の Dataset オブジェクトのデータが含まれる実行を作成します。各 Dataset オブジェクトには複数の信号のデータが含まれるため、インポートされた実行データには階層があります。この例で使用される名前と値の構文は、各 Dataset オブジェクトに対応する階層ノードの名前を指定します。

runID = Simulink.sdi.createRun('Waves','namevalue',{'Sinusoids',...
    'BigSinusoids'},{sinusoids_ds,doubSinusoids_ds});

ファイル内のデータから実行を作成

関数 Simulink.sdi.createRun を使用して、ファイルのデータをシミュレーション データ インスペクターにインポートすることもできます。simusoids.mat ファイルのデータをインポートするには、file オプションを使用します。

runID = Simulink.sdi.createRun('Wave Data','file','sinusoids.mat');

この例では、シミュレーション データ インスペクターで実行を作成するときに信号データにアクセスする方法について説明します。

実行のデータを生成

この例では、正弦信号と余弦信号の時系列データを作成します。

% Create timeseries workspace data
time = linspace(0, 20, 101);

sine_vals = sin(2*pi/5*time);
sine_ts = timeseries(sine_vals,time);
sine_ts.Name = 'Sine, T=5';

cos_vals = cos(2*pi/8*time);
cos_ts = timeseries(cos_vals,time);
cos_ts.Name = 'Cosine, T=8';

実行を作成して信号 ID を返す

Simulink.sdi.Run オブジェクトを介して信号 ID にアクセスする代わりに、Simulink.sdi.createRun 構文を複数の戻り引数を伴って使用すると、信号 ID をより直接的に取得できます。

[runID,runIndex,sigIDs] = Simulink.sdi.createRun('Sinusoids','vars',...
    sine_ts,cos_ts);

cosID = sigIDs(2);
cosSig = Simulink.sdi.getSignal(cosID);

信号プロパティを変更してシミュレーション データ インスペクターで表示

Simulink.sdi.Signal オブジェクトを使用して信号プロパティを表示および変更し、シミュレーション データ インスペクターで信号をプロットできます。

cosSig.Checked = true;
cosSig.AbsTol = 0.05;
Simulink.sdi.view
cosSig.Name

入力引数

すべて折りたたむ

シミュレーション データ インスペクター内の実行の名前。

例: 'Baseline Simulation'

シミュレーション データ インスペクター内の実行の作成対象となるデータを含むベース ワークスペース内の変数。シミュレーション データ インスペクターにはデータの関連する時間ベクトルが必要です。Simulink.sdi.createRun では timeseriesSimulink.SimulationData.Dataset を含めたすべての読み込みデータ形式とログ データ形式がサポートされます。

var が唯一の引数の場合は 1 つの var 引数が提供され、2 番目の引数 'vars' を指定する場合は、1 つ以上の var 引数が提供されます。

例: myData

文字ベクトルの cell 配列。各要素は実行内のデータのソース名です。2 番目の引数に対して 'namevalue' を指定する場合は sigNames 入力を指定します。

例: {'sig1','sig2'}

実行の信号データを含む変数の cell 配列。2 番目の引数に対して 'namevalue' を指定する場合は sigValues 入力を指定します。

例: {var1,var2}

実行データを含むファイルのファイル名。2 番目の引数に対して 'file' を指定する場合は filename 入力を指定します。MAT、CSV、または Microsoft Excel ファイルから実行を作成できます。また、mdf、mf4、mf3、data、または dat ファイル拡張子を持つ MDF ファイルからも実行を作成できます。

例: 'simulation.mat'

出力引数

すべて折りたたむ

新しい実行の実行識別子。

シミュレーション データ インスペクター リポジトリ内の新しい実行のインデックス。

実行内の信号の信号 ID を含むベクトル。

R2011b で導入