주요 콘텐츠

Simulink.sdi.view

R2026b

시뮬레이션 데이터 인스펙터 열기

설명

Simulink.sdi.view는 시뮬레이션 데이터 인스펙터를 엽니다. 스크립트를 작성하여 데이터를 플로팅하고 시뮬레이션 데이터 인스펙터 속성을 사용자 지정한 다음 Simulink.sdi.view를 사용하여 결과를 확인할 수 있습니다.

예제

Simulink.sdi.view(pane)은 시뮬레이션 데이터 인스펙터를 검사 창이나 비교 창으로 엽니다.

예제

모두 축소

프로그래밍 방식으로 시뮬레이션 데이터 인스펙터를 열어 데이터를 시각화하고, 검사하고, 분석할 수 있습니다.

Simulink.sdi.view

Run 객체를 만들고 Run 객체에 데이터를 추가한 후 시뮬레이션 데이터 인스펙터의 활성 탭에서 데이터를 봅니다.

Run 객체에 대한 데이터 만들기

두 개의 timeseries 객체를 만들어 사인 신호와 코사인 신호의 데이터를 포함합니다. 각 timeseries 객체에 설명적 이름을 지정합니다.

time = linspace(0,20,101);

sine_vals = sin(2*pi/5*time);
sine_ts = timeseries(sine_vals,time);
sine_ts.Name = "Sine, T=5";

cos_vals = cos(2*pi/8*time);
cos_ts = timeseries(cos_vals,time);
cos_ts.Name = "Cosine, T=8";

Run 객체 만들기 및 데이터 추가하기

시뮬레이션 데이터 인스펙터를 열려면 Simulink.sdi.view를 사용합니다.

Simulink.sdi.view

작업 공간에서 시뮬레이션 데이터 인스펙터로 데이터를 가져오기 위해 Simulink.sdi.Run.create를 사용하여 Simulink.sdi.Run 객체를 만듭니다. Run 객체의 Name 속성 및 Description 속성을 사용하여 메타데이터 정보를 추가합니다.

sinusoidsRun = Simulink.sdi.Run.create;
sinusoidsRun.Name = "Sinusoids";
sinusoidsRun.Description = "Sine and cosine signals with different frequencies";

작업 공간에서 만든 데이터를 빈 Run 객체에 추가합니다.

add(sinusoidsRun,"vars",sine_ts,cos_ts);
 0.091530s wall, 0.156250s user + 0.031250s system = 0.187500s CPU (204.9%)

시뮬레이션 데이터 인스펙터에 데이터 플로팅하기

각 신호에 대응되는 Simulink.sdi.Signal 객체에 액세스하려면 getSignalByIndex를 사용하십시오. Simulink.sdi.Signal 객체 속성을 사용하여 신호의 선 스타일과 색을 지정하고 시뮬레이션 데이터 인스펙터에서 신호를 플로팅할 수 있습니다. 예를 들어 각 신호에 LineColor 속성과 LineDashed 속성을 지정합니다.

sine_sig = getSignalByIndex(sinusoidsRun,1);
sine_sig.LineColor = [0 0 1];
sine_sig.LineDashed = "-.";

cos_sig = sinusoidsRun.getSignalByIndex(2);
cos_sig.LineColor = [1 0 0];
cos_sig.LineDashed = "--";

시뮬레이션 데이터 인스펙터 플로팅 영역의 활성 탭에서 2×1 서브플롯 레이아웃을 구성하려면 Simulink.sdi.setSubPlotLayout을 사용합니다. 상단 서브플롯에 사인 신호를 플로팅하고 하단 서브플롯에 코사인 신호를 플로팅하려면 plotOnSubPlot을 사용합니다.

Simulink.sdi.setSubPlotLayout(2,1);

plotOnSubPlot(sine_sig,1,1,true);
plotOnSubPlot(cos_sig,2,1,true);

A 2-by-1 subplot layout for Tab1 in the Simulation Data Inspector. The sine signal is plotted in the upper subplot and the cosine signal is plotted in the lower subplot.

커서를 사용하여 데이터 검사하기

특정 시간에서의 신호 값에 액세스하려면 플롯에 커서를 추가하면 됩니다. 예를 들어, Sine 신호는 약 6초에서 국소 최댓값을 가지는 것으로 보입니다. 플롯에 커서를 하나 추가하고 6초에서의 신호 값을 관측합니다.

Simulink.sdi.setNumCursors(1)
Simulink.sdi.setCursorPositions("left",6)

The Simulation Data Inspector with a cursor positioned at 6 seconds in Tab1. The cursor is applied to both subplots.

두 점 간의 시간 차이를 측정하거나 정의된 구간 내에서 기술 통계량을 추출하려면 커서 두 개를 추가합니다.

Simulink.sdi.setNumCursors(2)
Simulink.sdi.setCursorPositions("left",5,"right",7)

The Simulation Data Inspector with two cursors positioned at 5 seconds and 7 seconds in Tab1.

max 함수를 사용하여 커서 간 Sine 신호의 국소 최대 샘플 값을 확인합니다.

[t1,t2] = Simulink.sdi.getCursorPositions;
localMax = max(sine_sig,t1,t2)
localMax = 
0.9980

시뮬레이션 데이터 인스펙터 닫기 및 데이터 저장하기

플로팅된 신호 데이터의 검사가 끝나면 시뮬레이션 데이터 인스펙터를 닫고 세션을 MLDATX 파일에 저장할 수 있습니다.

Simulink.sdi.close("sinusoids.mldatx")

입력 인수

모두 축소

데이터를 검사하거나 비교하는 옵션으로, 다음 옵션 중 하나로 지정됩니다.

  • Simulink.sdi.GUITabType.InspectSignals — 시뮬레이션 데이터 인스펙터를 검사 창으로 엽니다.

  • Simulink.sdi.GUITabType.CompareRuns — 시뮬레이션 데이터 인스펙터를 비교 창으로 엽니다.

대안

Simulink® 편집기 도구 모음에서 시뮬레이션 데이터 인스펙터 버튼 을 사용하여 시뮬레이션 데이터 인스펙터를 열 수 있습니다.

버전 내역

R2011b에 개발됨