Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

XY プロットでのシミュレーション データの可視化

この例では、シミュレーション データ インスペクターの XY プロットでデータをプロットし、プロットされた信号間の関係を再生コントロールを使用して解析する方法を示します。モデル ex_sldemo_bounce の 2 つのシミュレーションを実行し、跳ねるボールの位置と速度の関係を解析します。

この例で使用している XY プロットは、Record ブロックおよび XY Graph ブロックでも使用できます。Record ブロックおよび XY Graph ブロックで XY プロットを使用する場合は、ツールストリップを使用して可視化を追加し、外観を構成します。XY プロットでデータをプロットする方法はこの例と同じです。

モデルのシミュレーション

跳ねるボールのダイナミクスをシミュレートするモデル ex_sldemo_bounce を開きます。

open_system("ex_sldemo_bounce")

モデルは出力データをログに記録するように設定されているため、Outport ブロックに接続された位置と速度の信号がワークスペースおよびシミュレーション データ インスペクターに記録されます。

モデルのシミュレーションを実行するには、[実行] をクリックします。次に、[結果の確認][データ インスペクター] をクリックしてシミュレーション データ インスペクターを開きます。

あるいは、プログラムでモデルをシミュレートしてシミュレーション データ インスペクターを開くこともできます。

out = sim("ex_sldemo_bounce");
Simulink.sdi.view

XY プロットでのデータのプロット

既定では、シミュレーション データ インスペクターは、レイアウトの各サブプロットに対して時間プロットを使用します。XY プロットでデータをプロットするには、可視化をレイアウトに追加します。[レイアウト] をクリックし、[ビューの編集] を選択します。

[可視化ギャラリー] から、[XY] アイコンをサブプロットにドラッグします。

レイアウトでサブプロットの可視化の更新が完了したら、[可視化ギャラリー] を閉じます。

あるいは、サブプロット メニューを使用してサブプロットの可視化を変更できます。可視化を変更するサブプロットをポイントし、表示される 3 つのドットをクリックします。[可視化の変更] ドロップダウン リストから、そのサブプロットに使用する可視化を選択します。

XY プロットで信号をプロットするには、テーブルで両方の信号の行を選択し、それらをプロットにドラッグします。テーブルで複数の信号を選択するには、"Shift" キーまたは "Ctrl" キーを押しながら選択します。

プロットの右下に表示される系列のメニューで、"x" データとして使用する信号と "y" データとして使用する信号を指定します。1 つ目のドロップダウン リストを使用して "x" データを提供する信号を選択し、2 つ目のドロップダウン リストを使用して "y" データを提供する信号を選択します。現在の "x" データと "y" データの選択を入れ替えるには、ドロップダウン リストの間にある [スワップ] ボタンをクリックします。

この例の場合、Positionx データとして使用し、Velocityy データに使用します。

[可視化設定] を使用して、XY プロットの外観を変更できます。XY プロットの可視化設定にアクセスするには、[可視化設定] をクリックします。

ラインとマーカーの色は、"x" データを提供する信号または "y" データを提供する信号の色と一致させることができます。既定では、ラインとマーカーの両方に "y" 軸の信号の色が使用されます。指定された設定は、レイアウトのすべての XY プロットに適用されます。

時間プロットの追加とデータの検査

シミュレーション データ インスペクター、Record ブロック、または XY Graph ブロックでは、複数の可視化をレイアウトに含めることができます。たとえば、XY プロットと共に時間プロット上で各信号を確認できるように、3 つのサブプロットをもつレイアウトに変更します。

サブプロット レイアウトを変更するには、[レイアウト] をクリックします。次に、[基本レイアウト] セクションで、3 番目のサブプロットの上に 2 つのサブプロットをもつレイアウトを選択します。

Position 信号を右上の時間プロットでプロットし、Velocity 信号を下部の時間プロットでプロットします。時間プロットで信号をプロットするには、信号をプロットするサブプロットを選択し、プロットする信号の横にあるチェック ボックスをオンにします。

データを検査するには、カーソルを追加します。XY プロットで、カーソルの垂直線は "X" 軸の値を示し、水平線は "Y" 軸の値を示します。点に対応する時間は、プロットの右上に表示されます。

XY プロットで、プロットされたラインに沿ってカーソルを移動します。キーボードの矢印キーを使用するか、ライン上の点で一時停止して強調表示された点をクリックすることで、カーソルを XY プロットで移動させることもできます。

時間プロットでカーソルをドラッグすると、XY プロットのカーソルは、プロットされたデータに沿って同期的に移動します。XY プロットに設定できるカーソルは 1 つのみです。2 つのカーソルをレイアウトに追加すると、XY カーソルは時間プロットの左のカーソルと共に移動します。

データの再生

これでシミュレーション データの包括的な可視化が設定されたので、データを再生すると、信号間の関係を理解しやすくなります。データをシミュレーション データ インスペクターで再生すると、アニメーション化されたカーソルが、開始時間から終了時間までのログに記録されたシミュレーション データをスイープします。[再生コントロールの表示/非表示を切り替えます] をクリックして、ビューに再生コントロールを追加します。

再生の速度を制御したり、いつでも一時停止することができます。既定では、シミュレーション データ インスペクターはデータを 1 秒当たり 1 秒で再生します。つまり、クロック時間の 1 秒につき、1 秒のデータ分カーソルが動きます。この例では、データは 25 秒かかります。ラベルの左にある矢印をクリックして、再生速度を低下させます。

再生コントロールの使用の詳細については、シミュレーション データ インスペクターでのデータの再生を参照してください。

複数のシミュレーションのデータの解析

シミュレーション パラメーターの変更がデータに与える影響を解析するため、XY プロット上に複数の系列をプロットすることができます。ボールの初期速度を高くして、モデルを再度シミュレートします。

Simulink® エディターまたは MATLAB™ コマンド ウィンドウを使用して、Initial Velocity ブロックの [初期値] パラメーターを 25 に変更します。その後、モデルをシミュレートします。

set_param("ex_sldemo_bounce/Initial Velocity",'Value','25')
sim('ex_sldemo_bounce');

シミュレーション データ インスペクターは、1 回目の実行をアーカイブに移動し、新しい実行にビューを移します。新しい実行からの信号に合わせてズーム レベルを調整するには、[ビューに合わせる] をクリックします。

アーカイブから 1 回目の実行を作業領域にドラッグします。次に、実行アクションのメニューを使用して、プロット済み信号の選択を現在の実行から 1 回目の実行にコピーします。

プロット済み信号の選択を現在の実行からコピーするには、現在の実行に対応する行の右にある 3 つのドットをクリックします。次に、[プロット済み信号の選択][コピー] を選択します。

1 回目の実行からのデータをプロットするには、プロット済み信号の選択を実行に貼り付けます。1 回目の実行に対応する行の右にある 3 つのドットをクリックします。次に、[プロット済み信号の選択][貼り付け] を選択します。

両方の実行の信号は、同じ信号名と同じ信号色を持っています。1 回目の実行の信号に対する色を変更します。

  1. テーブルでラインの表現をクリックします。

  2. 新しい色を選択します。

  3. [セット] をクリックします。

両方の実行の信号は名前も同じです。プロットされた信号がどの実行のものであるかは、凡例のツールヒントを使用して判別できます。

信号の名前を変更することもできます。たとえば、1 回目の実行の信号に対する名前を Position-1Velocity - 1 に変更します。信号の名前を変更するには、テーブルで名前をダブルクリックし、新しい名前を入力します。

XY プロットに複数の系列を追加すると、系列ごとにカーソルが表示されます。XY プロット上のすべてのカーソルの動きは同期しており、カーソルに表示されているすべての信号値は同じ時間に対応します。

XY プロット上にプロットした信号は、サブプロットのコンテキスト メニューを使用して管理できます。XY プロットを右クリックし、[Show plotted signals] を選択します。系列のメニューを使用して、系列をプロットから削除したり、各系列の "x" データと "y" データを提供する信号を変更したりできます。

参考

ブロック

ツール

関連するトピック