CSV ファイルからシミュレーション データ インスペクターへのデータのインポート
データを CSV ファイルからシミュレーション データ インスペクターにインポートするには、データを CSV ファイルで書式設定します。その後、シミュレーション データ インスペクター UI または関数 Simulink.sdi.createRun
を使用してデータをインポートできます。
ヒント
このトピックの指定と異なる方法でデータが書式設定されている CSV ファイルからデータをインポートする場合は、io.reader
クラスを使用して、シミュレーション データ インスペクター用の独自のファイル リーダーを記述できます。
標準ファイル形式
最も簡易な形式では、CSV ファイルの最初の行は、ファイル内の信号の名前を示すヘッダーになります。最初の列は時間です。時間列の名前は time
にしなければならず、時間値は単調に増加しなければなりません。信号名の下の行には、各タイム ステップに対応する信号値が示されます。
インポート操作では、Inf
や NaN
値を含む時間データ、または Inf
値を含む信号データはサポートされません。空の値または NaN
信号の値は欠損データとしてレンダリングされます。すべての組み込みデータ型がサポートされます。
複数の時間ベクトル
データにさまざまな時間ベクトルをもつ信号が含まれている場合は、ファイルに複数の時間ベクトルを含めることができます。すべての時間列の名前を time
にしなければなりません。時間列は、次の時間ベクトルまで右側の信号に対するサンプル時間を指定します。たとえば、時間列は最初に signal1
と signal2
の時間を定義し、2 番目に signal3
のタイム ステップを定義します。
信号列は、関連付けられた時間ベクトルと同じ数のデータ点がなければなりません。
信号メタデータ
CSV ファイル内の信号メタデータを指定して、信号データ型、単位、内挿法、ブロック パス、および端子インデックスを示します。各信号のメタデータを信号名と信号データの間の行にリストします。次の表に従ってメタデータにラベルを付けます。
信号プロパティ | ラベル | 値 |
---|---|---|
データ型 | Type: | 組み込みデータ型。 |
単位 | Unit: | サポートされる単位。たとえば、 サポートされている単位のリストについては、MATLAB® コマンド ラインで |
内挿法 | Interp: | linear 、zoh (ゼロ次ホールド)、または none 。 |
ブロック パス | BlockPath: | 信号を生成したブロックへのパス。 |
端子インデックス | PortIndex: | 整数。 |
列挙型クラスで定義されているデータ型で信号をインポートすることもできます。Type:
ラベルを使用せずに、Enum:
ラベルを使用して、列挙型クラスの名前として値を指定します。列挙型クラスの定義は MATLAB パス上に保存しなければなりません。
インポートしたファイルに信号メタデータが指定されていない場合、シミュレーション データ インスペクターは double データ型と線形内挿を仮定します。内挿法は linear、zoh (ゼロ次ホールドの場合) または none として指定できます。ファイル内の信号に単位が指定されていない場合、ファイルをインポートした後に、シミュレーション データ インスペクターで信号に単位を割り当てることができます。
各信号のメタデータの任意の組み合わせを指定できます。指定したメタデータがない場合、信号を空白セルのままにします。
CSV ファイルからのデータのインポート
シミュレーション データ インスペクター UI を使用するか、関数 Simulink.sdi.createRun
を使用して CSV ファイルからのデータをインポートできます。
UI を使用してデータをインポートするには、関数 Simulink.sdi.view
または Simulink™ツールストリップの [データ インスペクター] ボタンを使用してシミュレーション データ インスペクターを開きます。次に、[インポート] をクリックします。
[インポート] ダイアログで、ファイルからデータをインポートするオプションを選択し、ファイル システムで移動してファイルを選択します。ファイルを選択した後、テーブルにインポート可能なデータが表示されます。インポートする信号およびそれらの信号を新しい実行と既存の実行のどちらにインポートするか選択できます。この例では、使用可能なすべての信号が新しい実行にインポートされます。すべての信号を選択または選択解除するには、[名前] の横にあるチェック ボックスをオンまたはオフにします。オプションを選択した後、[インポート] ボタンをクリックします。
UI を使用してデータを新しい実行にインポートすると、新しい実行名には実行番号が含まれ、その後に Imported_Data
が続きます。
データをプログラムによってインポートする場合は、インポートした実行の名前を指定できます。
csvRunID = Simulink.sdi.createRun('CSV File Run','file','csvExampleData.csv');