Scope ブロックの信号をワークスペースに出力し、plot 関数で表示するにはどうすればいいですか?
조회 수: 7 (최근 30일)
이전 댓글 표시
MathWorks Support Team
2015년 12월 3일
답변: MathWorks Support Team
2015년 12월 3일
Scope ブロックの信号をワークスペースに出力し、plot 関数で表示したいと考えています。Scope ブロックの入力として入力1 に1つの信号、入力2 に3つの信号をMUXブロックで束ねたものを使用しています。方法を教えてください。
채택된 답변
MathWorks Support Team
2015년 12월 3일
Scope ブロックのデータをインデックスを用いてプロットできます。添付のモデルを用いた記述例を以下の通りです。
t = ScopeData.time;
ch1_sig1 = ScopeData.signals(1).values;
ch2_sig1 = ScopeData.signals(2).values(:,1);
ch2_sig2 = ScopeData.signals(2).values(:,2);
ch2_sig3 = ScopeData.signals(2).values(:,3);
figure
subplot(211), plot(t, ch1_sig1)
subplot(212), plot(t, ch2_sig1, t, ch2_sig2, t, ch2_sig3)
モデル exScope.slx では、Scope ブロックの入力として入力1 に1つの信号、入力2 に3つの信号をMUXブロックで束ねたものを使用しています。シミュレーション実行で、これらの信号のデータを ScopeData という時間付き構造体として保存されます。入力データは ScopeData.signals 構造体に保持され、その内、ScopeData.signals(1)は入力1の、ScopeData.signals(2)は入力2のデータからなります。ScopeData.signals(2) は実際3つの信号チャンネルからフィードされますので、values フィルドでチャンネル番号(列)を指定することで該当するチャンネルの信号が得られます。
댓글 수: 0
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 シミュレーション結果の表示에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!