このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
To Workspace
Simulink モデルからワークスペースにデータのログを作成
ライブラリ:
Simulink /
Sinks
DSP System Toolbox /
Sinks
HDL Coder /
Sinks
説明
To Workspace ブロックは、その入力端子に接続されているデータのログを Simulink® モデルからワークスペースに作成します。通常、ログ データはベース ワークスペースに返されます。関数内でモデルをプログラムによってシミュレートする場合、ログ データはその関数のワークスペースに返されます。シミュレーション中に、ログ データはシミュレーション データ インスペクターにストリーミングされます。シミュレーションが一時停止または停止するまで、ログ データはワークスペースに書き込まれます。
To Workspace ブロックを使用して、信号、バスまたはバス配列のログ データを作成できます。To Workspace ブロックは可変サイズの信号のデータを含む、スカラー データと多次元信号データのログ記録をサポートしています。
To Workspace ブロックがログに記録するデータを格納する変数の名前を設定したり、ログ データの形式を指定したりできます。ブロック パラメーターまたはモデル パラメーターを指定して、To Workspace ブロックがログを記録する値も制御できます。詳細については、ログに記録する信号値の指定を参照してください。
ログ データにアクセス
シミュレーション結果がワークスペースに返される方法は、モデルのシミュレーション方法と設定方法によって異なります。シミュレーション結果は、次のいずれかの状況で単一の Simulink.SimulationOutput
オブジェクトに返されます。
[単一のシミュレーション出力] パラメーターを有効にする。
既定では、[単一のシミュレーション出力] パラメーターは、新しいモデルを作成すると有効になります。このパラメーターを有効にするには [コンフィギュレーション パラメーター] ダイアログ ボックスを使用します。[モデル化] タブの [設定] で、[モデル設定] をクリックします。次に、[コンフィギュレーション パラメーター] ダイアログ ボックスで [データのインポート/エクスポート] を選択し、[単一のシミュレーション出力] を選択します。
[複数のシミュレーション] ペインを使用して一連のシミュレーションを実行する。
1 つ以上の
Simulink.SimulationInput
オブジェクトを使用してモデルをプログラムによってシミュレートする。関数
sim
、parsim
、およびbatchsim
を使用してシミュレーションを実行する場合、SimulationInput
オブジェクトを使用してシミュレーションを構成できます。結果を単一のシミュレーション出力として返す関数
sim
の構文を使用してモデルをシミュレートする。詳細については、
sim
を参照してください。
シミュレーション結果が 1 つの出力に返されると、SimulationOutput
オブジェクトにモデル内の各 To Workspace ブロックの変数が格納されます。To Workspace ブロックによりログに記録されたデータにアクセスするには、次を行います。
ブロックの [変数名] パラメーターを使用して指定した変数名とドットを使用します。既定では、モデルは変数名
out
を使用して単一のシミュレーション出力を返すように設定され、To Workspace ブロックはsimout
という名前の変数にデータを保存します。toWksData = out.simout;
ログ データを格納する変数の名前をもつ関数
get
を使用します。toWksData = get(out,simout);
モデルで、To Workspace ブロックはワークスペース内のデータにアクセスする方法を示します。既定では、ブロックは out.simout
を示します。次を行うと、ブロックの外観が更新されます。
ブロックの [変数名] パラメーターに異なる値を指定する。
単一のシミュレーション出力に異なる変数名を指定する。
[単一のシミュレーション出力] コンフィギュレーション パラメーターをオフにする。
端子
入力
パラメーター
ブロックの特性
データ型 |
|
直達 |
|
多次元信号 |
|
可変サイズの信号 |
|
ゼロクロッシング検出 |
|
ヒント
To Workspace ブロックを使用してログに記録されたデータを
[データセット]
形式に変換できます。[データセット]
形式を使用する信号のログなど、他のログ手法を使用する場合にデータを変換すると、後処理が簡単になります。詳細については、timeseries オブジェクトから Dataset オブジェクトへの変換を参照してください。モデルをシミュレートする関数を呼び出す場合、シミュレーションに記録されるデータはその関数のワークスペースに返されます。関数内のシミュレーションからログに記録されたデータをベース ワークスペースに返すには、関数
assignin
を使用します。たとえば、myfunc
というこの関数はモデルmyModel
をシミュレートします。これには、データのログを変数simout
に記録し、To Workspace ブロックによってログに記録されたデータをベース ワークスペースに送信する To Workspace ブロックが含まれます。function myfunc out = sim("myModel"); toWksData = get(out,"simout"); assignin("base","toWksData",toWksData); end