ドキュメンテーション センター

  • 評価版
  • 製品アップデート

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

To Workspace

データを MATLAB ワークスペースに書き込み

ライブラリ

Sinks

説明

To Workspace ブロックは、信号を入力し、信号データを MATLAB® ワークスペースに書き込みます。シミュレーション中、ブロックは内部バッファーにデータを書き込みます。シミュレーションが完了するかまたは一時停止した場合、そのデータはワークスペースに書き込まれます。ブロック アイコンは、データが書き込まれる配列名を表示します。

To Workspace ブロックがデータを書き込むワークスペース変数の名前を指定するには、[変数名] パラメーターを使用します。変数のデータ形式を指定するには、[保存形式] パラメーターを使用します。データの保存には、次のいずれか 1 つの形式を指定できます。

  • MATLAB timeseries オブジェクト (またはバス データに対しては MATLAB timeseries オブジェクトの構造体)

  • 配列

  • 構造体

  • [時間付き構造体]

From Workspace ブロックで使用するためのデータの保存

From Workspace ブロックを使用して、以前のシミュレーションで To Workspace ブロックが保存したサンプルベースのデータを再生するには、To Workspace ブロックで [時系列] 形式または [時間付き構造体] 形式を使用します。

保存したデータ量の制御

可変ステップ ソルバーの場合、To Workspace ブロックに利用できるデータ量を制御するには、[モデル コンフィギュレーション パラメーター][データのインポート/エクスポート][出力オプション] パラメーターを使用します。たとえば、複数のシミュレーションに対して同一の時点で Simulink® にデータを書き込ませる場合は、Produce specified output only オプションを選択します。

その後、To Workspace ブロック パラメーターを使用して、ブロックがこのデータを書き込む時間と量を制御します。

  • [データ点の制限] パラメーターを使用して保存するサンプル点の数を指定します。シミュレーションで指定された最大値以上にデータ点が生成された場合、シミュレーションは最後に生成されたサンプルだけを保存します。すべてのデータを得るには、この値を inf に設定します。

  • [間引き] パラメーターを使用すると、To Workspace ブロックに n 番目のサンプルごとにデータを書き込ませます。n は間引き係数です。既定の間引きは 1 で、すべてのタイム ステップごとにデータを書き込みます。

  • [サンプル時間] パラメーターを使用してデータ点を収集するサンプリング間隔を指定します。このパラメーターは、タイム ステップの間隔が同じでない可変ステップ ソルバーを使用する場合に有効です。既定値は -1 で、その場合は、どの点を書き込むかを決定する際に、接続ブロックからサンプル時間を継承します。詳細は、オンライン ドキュメンテーションの「 サンプル時間の指定」を参照してください。

たとえば、[開始時間] が 0、[データ点の制限] が 100、[間引き] が 1、[サンプル時間] が 0.5 のシミュレーションがあるとします。To Workspace ブロックは、時刻列 0、0.5、1.0、1.5... 秒で最大 100 点を収集します。[間引き] 値を 1 に指定すると、各ステップでブロックがデータを書き込むように指示します。

同様の例で、[データ点の制限] は 100、[サンプル時間] は 0.5 ですが、[間引き] を 5 とします。この例で、ブロックは、時間列 0、2.5、5.0、7.5... 秒で最高 100 点まで収集します。[間引き]を 5 と指定すると、ブロックは 5 サンプルごとにデータを書き込みます。サンプル時間によりデータはこれらの点で確実に書き込まれます。

もう 1 つの例では、[データ点の制限] が 3 であることを除いてすべてのパラメーターは最初の例で定義したとおりとします。この場合、最後に収集した 3 つの行のみがワークスペースに書き込まれます。シミュレーション停止時間が 100 の場合、データは 99.0 秒、99.5 秒、および 100.0 秒 (3点) の時間に対応します。

MAT ファイルのログ

[モデル コンフィギュレーション パラメーター][コード生成][インターフェイス][MAT ファイルのログ] パラメーターを有効にすると、To Workspace はそのデータを MAT ファイルに記録します。

サポートするデータ型

To Workspace ブロックは、バス オブジェクトの他に、固定小数点や列挙型データなど、Simulink がサポートするすべてのデータ型の実数入力または複素数入力を MATLAB ワークスペースに保存できます。

詳細は、Simulink ドキュメンテーションの「 Simulink でサポートされているデータ型」を参照してください。

パラメーターとダイアログ ボックス

変数名

データを保存する変数の名前を指定します。

データ点の制限

保存される入力サンプルの最大数を指定します。既定値は inf です。

間引き

間引き係数を指定します。既定値は 1 です。

サンプル時間

データを収集するサンプリング間隔とオフセットを指定します。このパラメーターは、タイム ステップの間隔が一定でない可変ステップ ソルバーを使用する場合に有効です。既定の設定は -1 で、接続ブロックからサンプル時間を継承します。詳細は、「 サンプル時間の指定」を参照してください。

保存形式

ワークスペースに保存するシミュレーションの出力形式を次から 1 つ指定します。

  • [時系列] — (既定の設定)

    非バス信号入力を MATLAB timeseries オブジェクトとして、また、バス信号入力を MATLAB timeseries オブジェクトの構造体として保存します。

  • 配列

    N 次元配列として入力を保存します。N は入力信号の次元数よりも 1 大きい数値です。たとえば、入力信号がベクトルである場合、結果のワークスペース配列は 2 次元になります。入力信号が行列である場合、配列は 3 次元になります。

    Simulink がサンプルを配列に格納する方法は、入力信号がスカラー、ベクトルまたは行列のいずれであるかによって異なります。入力がスカラーまたはベクトルの場合、各入力サンプルは配列の行として出力されます。たとえば、出力配列の名前が simout であるとします。すると、simout(1,:) は最初のサンプルに対応し、simout(2,:) は 2 番目のサンプルに対応するなどのようになります。入力信号が行列の場合、ワークスペース配列の 3 番目の次元は、指定されたサンプリング点での入力信号の値に対応します。たとえば、simout が結果のワークスペース配列の名前であることをもう一度思い出してください。simout(:,:,1) は、最初のサンプル点での入力信号の値です。simout(:,:,2) は、2 番目のサンプル点での入力信号の値です。

  • 構造体

    この形式は、3 つのフィールドから構成されます。

    • time — このフィールドはこの形式の場合は空です。

    • signals — 次の 3 つのフィールドをもつ構造体。valuesdimensions および labelvalues フィールドは、信号値の行列です。dimensions フィールドは、値配列の次元を指定します。label フィールドは、入力ラインのラベルです。

    • blockName — To Workspace ブロックの名前

  • [時間付き構造体]

    この形式は、シミュレーション時間ステップのベクトルを時間フィールドが含んでいること以外は、[構造体] と同じです。

    From Workspace ブロックで直接 To Workspace ブロック出力を読み取るには、[時系列] または [時間付き構造体] 形式のいずれかを使用します。詳細は、「信号データをインポートするためのテクニック」を参照してください。

    [時間付き構造体] 形式はフレームベースの信号をサポートしません。代わりに、[配列] または [構造体] の形式を使用してください。

シミュレーション モードのサポートは、[時系列] 形式と非 [時系列] 形式 ([配列][構造体] および [時間付き構造体]) に対する場合とでは異なります。

シミュレーション モード時系列形式非時系列形式
ノーマルサポートサポート
アクセラレータモデル参照を含む、すべてのモデルをサポートモデル参照なしのモデルでサポート
ラピッド アクセラレータサポートされていないモデル参照なしのモデルでサポート
エクスターナル モードサポートされていないモデル参照なしのモデルでサポート
SIL および PILサポートされていないモデル参照なしのモデルでサポート
Simulink Coder のターゲットサポートされていないモデル参照なしのモデルでサポート

固定小数点データを fi オブジェクトとしてログ

このオプションを選択して、Fixed-Point Designer™ fi オブジェクトとして固定小数点データを MATLAB ワークスペースにログを作成します。そうでない場合、固定小数点データは double 型としてワークスペースにログが作成されます。

次の例では、To Workspace ブロックの使用方法を示します。

特性

サンプル時間

[サンプル時間] パラメーターで指定

離散化

あり

多次元化

あり

この情報は役に立ちましたか?