ベクトル化した信号を入力する機能は、XY Graph ブロックにはないため、同時に複数の信号線を表示することができません。
代替案としては、次の方法があります。
1. ワークスペースに出力後、MATLAB コマンドで描画する
2. M-file S-function ブロックを使用する
1. ワークスペースに出力後、MATLAB コマンドで描画する
To Workspace ブロックなどでシミュレーションデータをワークスペースにエクスポートした後、MATLAB グラフィックス関数を使用してアニメーションを作成します。
ページ下部にある関連ドキュメントより、以下のサンプルをダウンロードすることができます。
- samp1_r6b.mdl(R2006b にて作成)
: Simulink モデル。モデルの StopFcn コールバックで comets 関数をコール。
- comets.m
: comet 関数をカスタマイズし、複数信号のコメットプロットを行うプログラム。
これらの 2 つのファイルをカレントフォルダに保存し、シミュレーションを実行すると、動作を確認できます。
2. M-file S-function ブロックを使用する
M-file S-function ブロックを使用し、モデル内で逐次 MATLAB 関数をコールし、グラフを更新します。
ページ下部にある関連ドキュメントより、以下のサンプルをダウンロードすることができます。
- samp2_r6b.mdl(R2006b にて作成)
: Simulink モデル。モデルの InitFcn コールバックで既存の Figure を削除。
- mylocus.m
: M-file S-function から呼び出される MATLAB プログラム。
これらの 2 つのファイルをカレントフォルダに保存し、シミュレーションを実行すると、動作を確認できます。