ドキュメンテーション

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

From Workspace

ワークスペースからの信号データの読み込み

  • ライブラリ:
  • Simulink / Sources

説明

From Workspace ブロックは、ワークスペースから信号データを読み取り、データを信号として出力します。

ブロックでは、[データ] パラメーターに指定した式が表示されます。Simulink® ソフトウェアがこの式を評価する方法の詳細は、記号の解釈を参照してください。

サンプル時間、欠損データ点のデータの処理方法、ゼロクロッシング検出を使用するかどうかを含む、データの読み込み方法を指定できます。詳細については、From Workspace ブロックを使用したデータの読み込みを参照してください。

ワークスペース データの指定

From Workspace ブロックのダイアログ ボックスで、[データ] パラメーターを使用して読み込むワークスペース データを指定します。以下のいずれかのオプションに評価される MATLAB® 式 (MATLAB ワークスペースの変数の名前など) を指定できます。

  • MATLAB timeseries オブジェクト

  • MATLAB timeseries オブジェクトの構造体

  • 時間付きまたは時間なしの構造体

  • 2 次元行列

詳細については、From Workspace ブロックを使用したデータの読み込みを参照してください。

データ ディクショナリでの使用

モデルをデータ ディクショナリにリンクすると、次の処理が行われます。

  • ディクショナリの [Design Data] セクションに設計データを保存し、モデルの基本設計に役立てます。設計データにはブロック パラメーター値を設定するために使用する数値変数および Simulink.Parameter オブジェクトが含まれます。

  • モデルでのシミュレーションと実験に使用するシミュレーション入力データをベース ワークスペースに保存します。一般的には、シミュレーション入力データを MATLAB timeseries オブジェクトとして作成します。

モデルで使用する変数、オブジェクトおよびその他のデータの保存の詳細については、Simulink モデルの変数とオブジェクトの保存場所の決定を参照してください。

  • From Workspace ブロックを使用して設計データにアクセスするには、ディクショナリの [Design Data] セクションにターゲット変数を保存し、ブロックの [データ] パラメーターを変数の名前に設定します。

  • シミュレーション入力データにアクセスするには、ベース ワークスペースにターゲット変数を保存し、関数 evalin の呼び出しを使用して [データ] パラメーターを設定します。データ ディクショナリではなくベース ワークスペース内の変数がブロックで検索されるように、evalin の呼び出しで ws 引数を 'base' として指定します。たとえば、変数の名前が myTimeseriesObject の場合、[データ]evalin('base','myTimeseriesObject') に設定します。

端子

出力

すべて展開する

ワークスペース データから作成される信号。このブロックは、固定小数点データ型と列挙データ型を含む、Simulink によってサポートされる任意のデータ型の実数信号または複素数信号を出力します。

データ型: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | Boolean | fixed point | enumerated | bus

パラメーター

すべて展開する

[データ] パラメーターで、読み込むワークスペース データを指定します。以下のいずれかに評価される MATLAB 式 (MATLAB ワークスペースの変数の名前など) を指定します。

  • MATLAB timeseries オブジェクト

  • MATLAB timeseries オブジェクトの構造体

  • 時間付きまたは時間なしの構造体

  • 2 次元行列

また、From Workspace ブロックは、バス オブジェクトもデータ型として受け入れます。バス データを使用するには、MATLAB timeseries オブジェクトの構造体を使用します。詳細については、ルート レベルの入力端子へのバス データの読み込みを参照してください。

double 型の実数信号は、From Workspace ブロックがサポートする任意のデータ形式にできます。double 以外のデータ型の複素数信号と実数信号には、Array 以外の任意の形式を使用します。

詳細については、ワークスペース データの指定を参照してください。

プログラムでの使用

ブロック パラメーター: VariableName
型: 文字ベクトル
値: timeseries オブジェクト | timeseries オブジェクトの構造体 | 構造体 | 2 次元行列
既定の設定: 'simin'

From Workspace ブロックが読み込むワークスペース データに必要なデータ型。非バス型の場合、任意のデータ型検証をスキップするには、[Inherit: auto] を使用できます。詳細については、信号のデータ型の制御を参照してください。

バス データを使用するには、MATLAB 時系列オブジェクトの構造体を使用します。詳細については、ルート レベルの入力端子へのバス データの読み込みを参照してください。

プログラムでの使用

ブロック パラメーター: OutDataTypeStr
型: 文字ベクトル
値: 'Inherit: auto' | 'double' | 'single' | 'int8' | 'uint8' | 'int16' | 'uint16' | 'int32' | 'uint32' | 'int64' | 'uint64' | 'boolean' | 'fixdt(1,16,0)' | 'fixdt(1,16,2^0,0)' | 'Enum: <class name>' | 'Bus: <object name>' | '<data type expression>'
既定の設定: 'Inherit: auto'

読み込まれたワークスペース データのサンプルレート。詳細については、サンプル時間の指定を参照してください。

コマンド ライン情報

ブロック パラメーター: SampleTime
型: 文字ベクトル
値: スカラー | ベクトル
既定の設定: '0'

このオプションを選択すると、ブロックは対応するワークスペース データが存在しない時間ヒットで線形内挿を実行します。このオプションが無効な場合、現在の出力は、データが存在する最も近い時間での出力に等しくなります。

From Workspace ブロックは、ワークスペースの 2 つの対応するサンプルを使用して内挿を行います。

  • double データの場合、2 つの対応するサンプルを使用して値を線形内挿します

  • Boolean データの場合、2 つの時間値間の最初の半分の時間に false を使用し、残りの半分に true を使用します

  • double または Boolean 以外の組み込みデータ型の場合は次のようになります。

    • データを double にアップキャストする

    • 線形内挿を実行する (double データの説明を参照)

    • 内挿値を元のデータ型にダウンキャストする

列挙型 (enum) データでは線形内挿は使用できません。

ブロックは、最後の既知のデータ点の値を、その点の後の時間ヒットの値として使用します。

ワークスペース データが入手可能な最後の時間ヒット後のブロック出力を決定するには、以下のパラメーターの設定を組み合わせます。

  • データを内挿する

  • 最後のデータ後の出力フォーム

詳細については、[最後のデータ後の出力フォーム] パラメーターを参照してください。

プログラムでの使用

ブロック パラメーター: Interpolate
型: 文字ベクトル
値: 'off' | 'on'
既定の設定: 'on'

[ゼロクロッシング検出を有効にする] を選択し、入力配列に同じ時間ヒットのエントリが複数含まれている場合、Simulink はその時間のゼロクロッシングを検出します。たとえば、入力配列に次のようなデータがあるとします。

time:     0 1 2 2 3
signal:   2 3 4 5 6

時間 2 に入力信号の不連続によるゼロクロッシングがあります。詳細については、ゼロクロッシング検出を参照してください。

バス信号の場合、Simulink はすべてのリーフ バス要素にわたるゼロクロッシングを検出します。

プログラムでの使用

ブロック パラメーター: ZeroCross
型: 文字ベクトル
値: 'off' | 'on'
既定の設定: 'on'

From Workspace ブロックは [データを内挿する] 設定と [最後のデータ後の出力フォーム] 設定を使用して、ワークスペース データで使用可能な最後のサンプル後のブロック出力を決定します。

次の表で、この 2 つのオプションの値に基づくブロック出力を示します。

[最後のデータ後の出力フォーム] の設定内挿データの設定最終データの後のブロック出力

外挿

オン

最終データ値から外挿

オフ

エラー

0 に設定

オン

0

オフ

0

最終値を保持

オン

ワークスペースからの最終値

オフ

ワークスペースからの最終値

周期的に繰り返す

オン

エラー

オフ

ワークスペース データが structure-without-time 形式の場合は、ワークスペースから繰り返します。それ以外の場合はエラーになります。

たとえば、[データを内挿する] を有効にして [最後のデータ後の出力フォーム][外挿] に設定すると、ブロックはワークスペース データの最後の 2 つのデータ点を使用して、後続のデータ点に対する値を外挿します。

たとえば、次のモデルについて考えてみましょう。From Workspace ブロックは、16 秒のシミュレーション用の Sine Wave ブロックの出力をログに記録することで作成されたワークスペース データを読み取ります。Dashboard Scope ブロックにより、20 秒のシミュレーション用の Sine Wave ブロック出力と From Workspace ブロック出力が表示されます。シミュレーションが 16 秒に到達すると、From Workspace ブロックがシミュレーションの残りの値を線形外挿するときに、From Workspace ブロック出力は Sine Wave ブロック出力から離れます。

プログラムでの使用

ブロック パラメーター: OutputAfterFinalValue
型: 文字ベクトル
値: 'Extrapolation' | 'Setting to zero' | 'Holding final value' | 'Cyclic repetition'
既定の設定: 'Extrapolation'

ブロックの特性

データ型

Boolean | bus | double | enumerated | fixed point[a] | integer | single | string

直接フィードスルー

いいえ

多次元信号

はい

可変サイズの信号

はい

ゼロクロッシング検出

はい

[a] Fixed-Point Designer を使って作成された fi オブジェクトによる入力をサポートします。

拡張機能

R2006a より前に導入