Main Content

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

From File

MAT ファイルからのデータの読み込み

  • ライブラリ:
  • Simulink / Sources

説明

From File ブロックは、MAT ファイルからモデルへデータを読み込み、データを信号として出力します。このデータは、一連のサンプルです。各サンプルは、タイム スタンプと関連するデータ値で構成されています。データは配列形式または MATLAB® timeseries 形式で表されます。

From File ブロックのアイコンには、データをブロックに提供する MAT ファイルの名前が表示されます。

同じ MAT ファイルからデータを読み込む From File ブロックが複数あってもかまいません。

サポートされる MAT ファイルのバージョンは Version 7.0 以前および Version 7.3 です。From File ブロックは Version 7.3 のファイルからデータを段階的に読み込みます。

データの読み込み方法として以下を指定できます。

  • サンプル時間

  • 欠損データ点のデータの処理方法

  • ゼロクロッシング検出を使用するかどうか

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

端子

出力

すべて展開する

MAT ファイル データ。一連のサンプルとして指定します。各サンプルは、タイム スタンプと関連するデータ値で構成されています。データは配列形式または MATLAB timeseries 形式で表されます。

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

パラメーター

すべて展開する

入力データを含んでいる MAT ファイルのパスまたはファイル名。パスまたはファイル名は次のいずれかの方法で指定できます。

  • 有効な MAT ファイルがあるフォルダーを参照します。

    UNIX® システムでは、ホーム フォルダーを意味するチルダ (~) 文字でパス名を始めることができます。

  • テキスト ボックスにファイルのパスを入力します。

既定のファイル名は untitled.mat です。ファイル名でパスの情報が指定されない場合、Simulink® は現在のフォルダーまたは MATLAB パスにあるファイルを読み込みます (現在のフォルダーを確認するには、MATLAB コマンド プロンプトで pwd と入力します)。

[ファイル名] を指定したら、表示ボタン () を使用して MAT ファイルから信号をプレビューできます。詳細については、信号データのプレビューを参照してください。

依存関係

RSim ターゲットのコード生成は、Simulink と同じサポートを提供します。その他のすべてのコード生成ターゲットは、時間形式の配列の double の 1 次元実信号のみをサポートします。

ERT/GRT ターゲットのビルドまたは SIL/PIL シミュレーション モードの使用を含むコードを生成するには、MAT ファイルに 2 行以上の空でない有限実数行列が含まれていなければなりません。

From File ブロックを使用した C/C++ コード生成の詳細については、コード生成を参照してください。

プログラムでの使用

ブロック パラメーター: FileName
型: 文字ベクトル
値: MAT ファイル名
既定の設定: 'untitled.mat'

From File ブロックが出力するデータのデータ型。非バス型の場合、[Inherit: auto] を使用して任意のデータ型検証をスキップできます。出力データ型を指定する場合、From File ブロックはファイル内のデータが指定したデータ型と一致することを確認します。詳細については、信号のデータ型の制御を参照してください。

[出力データ型] をバス オブジェクトとして設定した場合、そのバス オブジェクトはモデルのコンパイル時に利用可能でなければなりません。バス データの信号ごとに、 From File ブロックは、データ型、次元および実数/複素数がデータおよびバス オブジェクトと同じであるか検証します。

[データ型アシスタントを表示] ボタン をクリックして、データ型の属性の設定に役立つ [データ型アシスタント] を表示します。詳細については、データ型アシスタントを利用したデータ型の指定を参照してください。

プログラムでの使用

ブロック パラメーター: 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'

サンプリング周期とオフセットを指定します。

From File ブロックは、次のいずれかのサンプル時間を使用して MAT ファイルからデータを読み込みます。

  • From File ブロックに対して指定したサンプル時間。

  • From File ブロックがデータのフィード先のブロックから継承したサンプル時間。

既定のサンプル時間は 0 で、これは連続サンプル時間の指定となります。MAT ファイルはモデルの基本レート (最速) で読み込まれます。詳細については、サンプル時間の指定を参照してください。

プログラムでの使用

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

MAT ファイルの最初のタイム スタンプの前に発生するシミュレーション時間ヒットの外挿法。次の外挿法のいずれかを選択します。

メソッド説明
線形外挿

(既定)

MAT ファイルに 1 つのサンプルしか含まれていない場合は、From File ブロックは対応するデータ値を出力します。

MAT ファイルに 1 つを超えるサンプルが含まれている場合は、From File ブロックは最初の 2 つのサンプルを使用して線形外挿します。

  • double データの場合、最初の 2 つのサンプルを使用して値を線形外挿します

  • Boolean データの場合、最初のデータ値を出力します

  • double または Boolean 以外の組み込みデータ型の場合、From File ブロックは次を実行します。

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

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

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

列挙型 (enum) データでは、[線形外挿] オプションは使用できません。バス内のすべての信号は同じ外挿設定を使用します。バス内のすべての信号は enum データを使用しているため、[線形外挿] オプションを使用できません。

最初の値をホールド

ファイル内の最初のデータ値を使用します

グラウンド値

MAT ファイルのサンプル データ値のデータ型によって異なる値を使用します。

  • 固定小数点データ型 — グラウンド値を使用します

  • 固定小数点以外の数値型 — 0 を使用します

  • Booleanfalse を使用します

  • 列挙データ型 — 既定値を使用します

依存関係

ERT/GRT ターゲットのビルドまたは SIL/PIL シミュレーション モードの使用を含むコードを生成するには、このパラメーターを [線形外挿] に設定しなければなりません。 From File ブロックを使用した C/C++ コード生成の詳細については、コード生成を参照してください。

プログラムでの使用

ブロック パラメーター: ExtrapolationBeforeFirstDataPoint
型: 文字ベクトル
値: 'Linear extrapolation' | 'Hold first value' | 'Ground value'
既定の設定: 'Linear extrapolation'

Simulink が MAT ファイルの 2 つのタイム スタンプ間のシミュレーション時間ヒットに使用する内挿法。次のいずれかの内挿法を選択します。

メソッド説明
線形内挿

(既定)

From File ブロックは、2 つの対応する MAT ファイル サンプルを使用して内挿します。

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

  • Boolean データの場合、最初の半分のサンプルに false を使用し、残りの半分に true を使用します

  • double または Boolean 以外の組み込みデータ型の場合、From File ブロックは次を実行します。

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

    • double データの説明に従って線形内挿を実行する

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

ゼロ次ホールド

2 つのサンプルのうち最初のサンプルのデータを使用します

制限

列挙型 (enum) データでは、[線形内挿] オプションは使用できません。バス内のすべての信号は同じ内挿設定を使用します。バス内のいずれかの信号が enum データを使用する場合は、[線形内挿] オプションを使用できません。

依存関係

ERT/GRT ターゲットのビルドまたは SIL/PIL シミュレーション モードの使用を含むコードを生成するには、このパラメーターを [線形内挿] に設定しなければなりません。From File ブロックを使用した C/C++ コード生成の詳細については、コード生成を参照してください。

プログラムでの使用

ブロック パラメーター: InterpolationWithinTimeRange
型: 文字ベクトル
値: 'Linear interpolation' | 'Zero order hold'
既定の設定: 'Linear interpolation'

MAT ファイルの最後のタイム スタンプ後に発生するシミュレーション時間ヒットの外挿法。次のいずれかの外挿法を選択します。

メソッド説明
線形外挿

(既定)

MAT ファイルに 1 つのサンプルしか含まれていない場合は、From File ブロックは対応するデータ値を出力します。

MAT ファイルに 1 つを超えるサンプルが含まれている場合は、From File ブロックは最後の 2 つのサンプルのデータ値を使用して線形外挿します。

  • double データの場合、最後の 2 つのサンプルを使用して値を外挿する。

  • Boolean データの場合、最初のデータ値を出力する。

  • double または Boolean 以外の組み込みデータ型の場合:

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

    • double データの説明に従って線形外挿を実行する

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

最後の値をホールド

ファイル内の最後のデータ値を使用します

グラウンド値

MAT ファイルのサンプル データ値のデータ型によって異なる値を使用します。

  • 固定小数点データ型 — グラウンド値を使用します

  • 固定小数点以外の数値型 — 0 を使用します

  • Booleanfalse を使用します

  • 列挙データ型 — 既定値を使用します

制限

列挙型 (enum) データでは、[線形外挿] オプションは使用できません。バス内のすべての信号は同じ外挿設定を使用します。バス内のすべての信号は enum データを使用しているため、[線形外挿] オプションを使用できません。

依存関係

ERT/GRT ターゲットのビルドまたは SIL/PIL シミュレーション モードの使用を含むコードを生成するには、このパラメーターを [線形外挿] に設定しなければなりません。From File ブロックを使用した C/C++ コード生成の詳細については、コード生成を参照してください。

プログラムでの使用

ブロック パラメーター: ExtrapolationAfterLastDataPoint
型: 文字ベクトル
値: 'Linear extrapolation' | 'Hold last value' | 'Ground value'
既定の設定: 'Linear extrapolation'

ゼロクロッシング検出を有効にします。

ゼロクロッシング検出パラメーターは、サンプル時間 パラメーターが 0 (連続) に設定されている場合のみ適用されます。

Simulink はゼロクロッシング検出という手法を使用して、過度に小さいタイム ステップを取ることなくタイム スタンプの不連続点を特定します。"ゼロクロッシング" は不連続を表します。

From File ブロックの場合、ゼロクロッシング検出はファイル内のタイム スタンプのみで発生します。Simulink はタイム スタンプのみを調べ、データ値は調べません。

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

入力配列に重複するタイム スタンプが含まれている (同一のタイム スタンプのエントリが 1 つを超える) 場合、Simulink はそれらのタイム スタンプのゼロクロッシングを検出します。たとえば、入力配列に次のようなデータがあるとします。

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

時間 2 に入力信号の不連続によるゼロクロッシングがあります。

重複しないタイム スタンプがある場合、ゼロクロッシング検出は次のパラメーターの設定によって変わります。

  • 最初のデータ点前のデータ外挿

  • 時間範囲内のデータ内挿

  • 最後のデータ点後のデータ外挿

ゼロクロッシングが発生するタイミングに関する From File ブロックの判定は、タイム スタンプに応じて変わります。

タイム スタンプ設定

1 次

[最初のデータ点前のデータ外挿][グラウンド値] に設定されます。

最初と最後の間

[時間範囲内のデータ内挿][ゼロ次ホールド] に設定されます。

最後

次の設定の両方またはどちらかが適用されます。

  • [最後のデータ点後のデータ外挿][グラウンド値] に設定されます。

  • [時間範囲内のデータ内挿][ゼロ次ホールド] に設定されます。

次の図は、次の設定になっている From File ブロックによってアクセスされるデータのゼロクロッシング検出を示しています。

  • 最初のデータ点前のデータ外挿線形外挿

  • 時間範囲内のデータ内挿 (内部点の場合) — ゼロ次ホールド

  • 最後のデータ点後のデータ外挿線形外挿

次の図は、From File ブロックによってアクセスされるデータのゼロクロッシング検出の別の例を示しています。ブロックには、タイム スタンプ (点) 用の次の設定があります。

  • 最初のデータ点前のデータ外挿最初の値をホールド

  • 時間範囲内のデータ内挿ゼロ次ホールド

  • 最後のデータ点後のデータ外挿最後の値をホールド

依存関係

ERT/GRT ターゲットのビルドまたは SIL/PIL シミュレーション モードの使用を含むコードを生成するには、このチェック ボックスをオフにします。From File ブロックを使用した C/C++ コード生成の詳細については、コード生成を参照してください。

プログラムでの使用

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

ブロックの特性

データ型

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

直接フィードスルー

いいえ

多次元信号

はい

可変サイズの信号

いいえ

ゼロクロッシング検出

はい

[a] 32 ビットまでの固定小数点データ型をサポートします。

拡張機能

R2006a より前に導入