Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

入力

最上位の入力端子を使用してシミュレーション用の外部入力データを読み込むオプション

モデル コンフィギュレーション ペイン: データのインポート/エクスポート

説明

[入力] パラメーターは、最上位の入力端子の外部入力データを読み込むかどうかを指定します。[入力] パラメーターを選択する場合は、各最上位入力端子で読み込む外部入力データを指定する必要もあります。

モデルの階層構造をシミュレートする場合、最上位モデルの入力端子でのみワークスペースのデータが読み込まれます。参照モデルの [入力] パラメーターの値は、参照モデルを最上位モデルとしてシミュレートする場合以外は無視されます。最上位モデルとしてシミュレートしない参照モデルにデータを読み込むには、From Workspace ブロックなど、Inport ブロックまたは In Bus Element ブロック以外の読み込みブロックを使用します。

詳細については、ルート レベルの入力端子へのデータの読み込みを参照してください。

設定

off (既定値) | on
off

既定では、[入力] パラメーターは無効になっています。モデルに最上位の入力端子が含まれていなければ、このパラメーターは無効なままにします。

on

モデルに最上位の入力端子が含まれている場合は、[入力] パラメーターを選択してシミュレーション中に各端子で読み込む入力データを指定します。テキスト ボックスで、すべての最上位の入力端子のデータを含む MATLAB® 変数として、またはリスト内の各項目に 1 つの最上位の入力端子のデータが含まれているコンマ区切りリストとして、読み込む外部入力データを指定します。すべての最上位の入力端子のデータを表すため、および最上位の各入力端子のデータを表すために、複数の形式を使用できます。すべてのデータ形式について、次のようになります。

  • 時間値は double データ型で、単調増加する必要があります。

  • 時間と信号データには NaN 値の Inf が含まれていてはなりません。

次の表では、すべての最上位の入力端子のデータを含む変数として [入力] パラメーターの値を指定するためにサポートされているデータ形式をまとめます。

形式説明ヒントおよび考慮事項

Simulink.SimulationData.Dataset

Dataset オブジェクトの各要素に、最上位の入力端子のデータが含まれます。

  • Dataset オブジェクトは、スカラー、ベクトル、多次元信号、バス、およびバス配列を生成する最上位の端子のデータを含むことができます。

  • 最上位の各入力端子の要素を含む Dataset オブジェクトを作成するには、関数 createInputDataset を使用します。

  • [データセット] は、出力、状態、信号のログ記録など、ほとんどのログ記録タイプの既定の形式です。

Simulink.SimulationData.DatasetRef

DatasetRef オブジェクトは、MAT ファイルに保存されている Dataset オブジェクトを参照します。DatasetRef オブジェクトが参照する Dataset オブジェクトの各要素に、1 つの最上位の入力端子のデータが含まれます。

シミュレーションでは、シミュレーションの開始時にすべてのデータをメモリに読み込むのではなく、DatasetRef オブジェクトで参照されているデータをインクリメンタルに読み込みます。大量のデータを読み込む必要がある場合は、DatasetRef オブジェクトの使用を検討してください。詳細については、以下を参照してください。

構造体

以下のフィールドを含む構造体:

  • signals — 各構造体に 1 つの最上位の入力端子のデータが含まれる、構造体の配列

  • time — すべての最上位の入力端子の信号値に対応する時間値からなるオプションの配列

  • この形式では、バスまたはバス配列の入力データはサポートされていません。

  • 離散入力信号のデータのみを読み込む場合は、time フィールドを省略することを検討してください。詳細については、Control How Models Load Input Dataを参照してください。

  • 等間隔の時間ベクトルを作成するには、必要な数のタイム ステップを含む整数ベクトルを作成してから、サンプル時間でベクトルの値をスケーリングします。

    time = sampleTime*(0:numSteps);

    linspace などの他のオプションを使用すると、浮動小数点精度の丸めが原因でデータの不整合が生じるおそれがあります。

配列

配列の最初の列には、単調増加する必要がある時間値が含まれます。後続の列には、端子番号のシーケンス順で最上位の各入力端子のデータが含まれます。

  • 配列形式では、実数のスカラー信号および実数全体またはベクトルの信号を読み込むことのみがサポートされています。

  • 配列内の値は double データ型でなければなりません。

  • モデルに最上位の Trigger ブロックが含まれている場合、最後の列にトリガー信号のデータを指定します。

読み込むデータを単一の変数とコンマ区切りのリストのいずれとして指定するのかを選択することに加えて、各端子の入力データを表す方法も選択しなければなりません。サポートされる形式は、[入力] パラメーターの値を指定する方法および端子で生成される出力の型によって異なります。次の表では、端子がモデルで生成する出力の型に基づいて、最上位の入力端子のデータを指定する際に使用できる形式をまとめます。

出力のタイプサポートされる入力データ形式入力パラメーターでサポートされる値ヒントおよび考慮事項

スカラーまたはベクトル信号

  • Simulink.SimulationData.Dataset オブジェクト

  • Simulink.SimulationData.DatasetRef オブジェクト

  • 構造体

  • 配列

  • コンマ区切りリスト

  • スカラーおよびベクトルの信号では、信号データの行数が時間ベクトルの行数に一致している必要があります。

  • timetable を作成するには、時間値が duration ベクトルでなければなりません。

    シミュレーション時間では常に秒単位が使用されます。秒以外の単位を使用する duration ベクトルを作成すると、ソフトウェアによってシミュレーションで使用するために値が秒に変換されます。

  • 配列形式では、複素数である信号値または double 以外のデータ型をもつ信号値はサポートされていません。

多次元信号

  • timeseries オブジェクト

  • 単一の列を含む timetable

  • Simulink.SimulationData.Signal オブジェクト

  • matlab.io.datastore.SimulationDatastore オブジェクト

  • [構造体] または [時間付き構造体] ログ形式に一致するフィールドと階層を持つ構造体

  • Simulink.SimulationData.Dataset オブジェクト

  • Simulink.SimulationData.DatasetRef オブジェクト

  • 構造体

  • コンマ区切りリスト

  • 2 次元以上の値をもつ多次元信号の場合、最後の次元の長さは時間ベクトルの長さと一致しなければなりません。

    たとえば、22 列の行列の信号からなる 10 個のサンプルの入力データでは、時間ベクトルは 10 行で、信号値の配列の次元は 2×2×10 になります。

  • timetable を作成するには、時間値が duration ベクトルでなければなりません。

    シミュレーション時間では常に秒単位が使用されます。秒以外の単位を使用する duration ベクトルを作成すると、ソフトウェアによってシミュレーションで使用するために値が秒に変換されます。

可変サイズの信号

[構造体] または [時間付き構造体] ログ形式に一致するフィールドと階層を持つ構造体

  • Simulink.SimulationData.Dataset オブジェクト

  • Simulink.SimulationData.DatasetRef オブジェクト

  • 構造体

  • コンマ区切りリスト

From Workspace ブロックを使用して読み込むことのできる形式で可変サイズの信号を記録するには、信号を最上位の Outport ブロックに接続し、モデルの [形式] コンフィギュレーション パラメーターを [構造体] または [時間付き構造体] に設定します。

バス

timetabletimeseries、または matlab.io.datastore.SimulationDatastore オブジェクトの構造体:

  • バスを定義する Simulink.Bus オブジェクトとして [出力データ型] パラメーターを指定します。

  • 構造体の階層およびフィールド名はバスの階層および要素名と一致していなければなりません。

  • timetable または timeseries オブジェクトには、バス内のリーフ信号のデータが含まれます。

  • timetable には 1 列だけ含まれている必要があります。

  • Simulink.SimulationData.Dataset オブジェクト

  • Simulink.SimulationData.DatasetRef オブジェクト

  • コンマ区切りリスト

バスの入力データを部分的に指定するには、入力データ構造体で、データを読み込む必要がないバス要素を [] に設定します。

バス配列それぞれがバス配列内のバスのデータを表す構造体の配列
  • Simulink.SimulationData.Dataset オブジェクト

  • Simulink.SimulationData.DatasetRef オブジェクト

  • コンマ区切りリスト

バス配列の入力データを部分的に指定するには、そのバスのデータを表す構造体で、データを読み込む必要がないバス要素を [] に設定します。

関数呼び出し信号

各関数呼び出しイベントの時間を指定する n1 列の列ベクトル

  • Simulink.SimulationData.Dataset オブジェクト

  • Simulink.SimulationData.DatasetRef オブジェクト

  • 構造体

  • コンマ区切りリスト

関数呼び出し信号を生成するように最上位の Inport ブロックを構成するには、ブロックの [関数呼び出しの出力] パラメーターを選択します。

Ground

[]

  • Simulink.SimulationData.Dataset オブジェクト

  • Simulink.SimulationData.DatasetRef オブジェクト

  • 構造体

  • コンマ区切りリスト

入力端子で外部入力データを読み込まないようにする場合は、その端子のデータを [] として指定します。その入力端子では、シミュレーション中にモデルでグラウンド値が生成されます。

ヒント

  • 最上位に Inport ブロックまたは In Bus Element ブロックが複数あるモデルでは、ルート Inport マッパーを使用すると、最上位の入力端子への入力データのマッピングが簡単になります。ルート Inport マッパーを開くには、[入力の接続] をクリックします。

  • データ ディクショナリを使用して、最上位の入力端子の外部入力データを保存することはできません。[入力] パラメーターには、入力データに指定した値を解決するときのデータ ディクショナリは含まれていません。モデルでデータ ディクショナリが使用されている場合、ベース ワークスペースへのアクセスを無効にしていても、[入力] パラメーターはベース ワークスペース内のシミュレーション入力データにアクセスします。ソフトウェアによるシンボルの解決方法の詳細については、記号の解釈を参照してください。

  • 最上位モデルの Inport ブロックは、入力データの値をブロック パラメーターの値に従って内挿および外挿します。

  • 最上位モデルの In Bus Element ブロックは、入力データの値を常に線形に内挿および外挿します。

推奨設定

次の表は、このパラメーターの推奨値をコード生成に関連する考慮事項に基づいてまとめたものです。

アプリケーション設定
デバッグ影響なし
トレーサビリティ影響なし
効率性推奨なし
安全対策推奨なし

プログラムでの使用

パラメーター: LoadExternalInput
値: 'on' | 'off'
既定の設定: 'off'
パラメーター: ExternalInput
型: string | 文字ベクトル
値: Simulink.SimulationData.Dataset オブジェクト | Simulink.SimulationData.DatasetRef オブジェクト | 構造体 | 配列 | 時間式 | 各項目に 1 つの最上位の入力端子のデータが含まれるコンマ区切りリスト
既定の設定: '[t,u]'

バージョン履歴

R2006a より前に導入