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

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

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

To File

データをファイルに書き込み

ライブラリ

Sinks

説明

To File ブロックは、信号を入力し、信号データを MAT ファイルに書き込みます。To File ブロックを使用して信号データを記録します。

To File ブロックのアイコンは、出力ファイル名を示します。

ブロックは出力ファイルにインクリメンタルに書き込むため、シミュレーション中のメモリのオーバーヘッドは最小になります。シミュレーションを開始したときに出力ファイルが存在すると、ブロックはそのファイルを上書きします。ファイルは、シミュレーションが終了すると自動的に閉じられます。シミュレーションが正常終了しなかった場合は、To File ブロックは異常終了した時点までに記録されたデータを保存します。

データの書き込み用の形式の指定

[保存形式] パラメーターは、To File ブロックがデータを書き込み場合に次のどちらの形式を使用するかを指定します。

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

  • 配列

ベクトル、double、非複素数入力に対してのみ、[配列] 形式を使用します。バス データの保存には [時系列] 形式を使用します。

[時系列] 形式では、To File ブロックが次の操作を行います。

  • データを MATLAB® timeseries オブジェクトに書き込みます。

  • 多次元、実数値、または複素数値の書き込みをサポートします。

  • 任意の組み込みデータ型の出力値 (Boolean、列挙型 (enum)、最大 32 ビットの語長の固定小数点データなど) の書き込みをサポートします。

  • バス入力信号に対して、バス階層に一致する MATLAB 構造体を作成します。構造体の各リーフは MATLAB timeseries オブジェクトです。

[配列] 形式では、To File ブロックが次の操作を行います。

  • データを複数の行が含まれている行列に書き込みます。行列は以下の形式をとります。

    Simulink® は、1 列を各データ サンプルの行列に書き込みます。列の最初の要素には、タイム スタンプが含まれています。列の残りには、対応する出力値のデータが含まれます。

  • 1 次元、double、非複素のデータの書き込みをサポートします。

データのファイル書き込み時の制御

To File ブロックの [間引き] および [サンプル時間] パラメーターは、データがファイルに書き込まれる時間を制御します。

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

From File ブロックは、To File ブロックによって書き込まれたデータを変更や特別な準備なしで、任意の形式 (Timeseries または Array) で利用することができます。

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

From Workspace ブロックは、Array 形式のデータを読み取ることができ、To File ブロックによって書き込まれたデータの転置が必要です。要求される形式を提供するには、MATLAB コマンドを使ってデータを MAT ファイルから読み込んで、転置します。

シミュレーション ステッパーと To File ブロックとの相互作用

シミュレーション ステッパーを使用して停止した場合、To File ブロックが停止時点までのシミュレーション データをキャプチャします。1 ステップ戻ると、To File データ ファイルには、最後の出力から元に戻った時間より後のすべてのシミュレーション データが含まれなくなります。

参照モデルでの To File ブロックの制限

To File ブロックが参照モデル内に存在する場合は、そのモデルは、単一インスタンス モデルでなければなりません。そのようなモデルの 1 つのインスタンスのみがモデルの階層内に存在可能です。詳細は、「再利用の制限」を参照してください。

MAT ファイル データの圧縮

リアルタイムでデータの圧縮のオーバーヘッドを回避するために、To File ブロックは、未圧縮の Version 7.3 MAT ファイルに書き込みます。MAT ファイル内のデータを圧縮するには、MATLAB でファイルを読み込んで保存します。再度保存されたファイルは、Save コマンドが MAT ファイル内のデータを圧縮するため、To File ブロックが作成した元の MAT ファイルよりもサイズが小さくなります。

バス データの保存

To File ブロックはバーチャル バス入力と非バーチャル バス入力をサポートしています。

バス データを保存するには、[保存形式] パラメーターを [時系列] に設定します。

入力信号がバスである場合、To File ブロックはバス階層に一致する MATLAB 構造体を作成します。構造体の各リーフは MATLAB timeseries オブジェクトです。

シミュレーションの一時停止

シミュレーションを一時停止した後に、To File ブロックがログを書き込んでいるファイルは変更しないでください。たとえば、そのようなファイルを MATLAB save コマンドで保存しないでください。それらのファイルを変更すると、シミュレーションを再開したときにエラーが発生するおそれがあります。一時停止後にそのようなファイルを変更する場合は、変更するファイルをコピーして、コピーしたファイルに対して作業を行うようにしてください。

サポートするデータ型

To File ブロックは、Simulink がサポートするすべてのデータ型の実数および複素数信号データを受け入れます。ただし、固定小数点データの語長は 32 ビット未満でなければなりません。

To File ブロックはバス データを受け入れます。

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

ファイル名

出力を格納する MAT ファイルのパスまたはファイル名。UNIX® では、パス名は、ホーム フォルダーを示すチルダ (~) で始めることができます。既定のファイル名は untitled.mat です。ファイル名でパスの情報が指定されない場合、Simulink は MATLAB 作業フォルダーにファイルを格納します (作業フォルダーを判定するには、MATLAB コマンド ラインで「pwd」と入力します)。ファイルが既に存在する場合は、Simulink によって上書きされます。

変数名

指定するファイルに含まれる行列の名前。既定の名前は ans です。

保存形式

To File ブロックがデータの書き込み用に使用するデータ形式 (時系列または配列)。既定の書式は Timeseries です。

間引き

n は間引き係数です。ここで、n はデータをブロックが実行される n 回ごとに書き込むことを指定します。既定の間引き係数は 1 であり、タイム ステップごとにデータを表示します。

サンプル時間

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

特性

サンプル時間

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

離散化

あり

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