이 페이지의 최신 내용은 아직 번역되지 않았습니다. 최신 내용은 영문으로 볼 수 있습니다.

nyquist

주파수 응답의 나이퀴스트 플롯

구문

nyquist(sys)
nyquist(sys,w)
nyquist(sys1,sys2,...,sysN)
nyquist(sys1,sys2,...,sysN,w)
nyquist(sys1,'PlotStyle1',...,sysN,'PlotStyleN')
[re,im,w] = nyquist(sys)
[re,im] = nyquist(sys,w)
[re,im,w,sdre,sdim] = nyquist(sys)

설명

nyquist동적 시스템 모델의 주파수 응답의 나이퀴스트 플롯을 만듭니다. 좌변의 인수 없이 호출할 경우 nyquist은 화면에 나이퀴스트 플롯을 플로팅합니다. 나이퀴스트 플롯은 이득 여유. 위상 여유, 안정성을 비롯한 시스템 속성을 분석하는 데 사용됩니다.

nyquist(sys)는 동적 시스템 sys의 나이퀴스트 플롯을 만듭니다. 이 모델은 연속 모델 또는 이산 모델일 수 있고 SISO 또는 MIMO일 수 있습니다. MIMO인 경우 nyquist는 각각의 플롯이 하나의 특정 I/O 채널의 응답을 보여주는 여러 개의 나이퀴스트 플롯으로 구성된 배열을 생성합니다. 주파수 점은 시스템의 극점과 영점에 기반하여 자동으로 선택됩니다.

nyquist(sys,w)는 플롯에서 사용할 주파수 범위 또는 주파수 점을 명시적으로 지정합니다. 특정 주파수 구간에 중점을 두려면 w = {wmin,wmax}를 설정하십시오. 특정 주파수 점을 사용하려면 w를 원하는 주파수로 구성된 벡터로 설정하십시오. 로그 간격의 주파수 벡터를 생성하려면 logspace를 사용하십시오. 주파수의 단위는 rad/TimeUnit이어야 합니다. 여기서 TimeUnit은 입력 동적 시스템의 시간 단위로, sysTimeUnit 속성에 지정됩니다.

nyquist(sys1,sys2,...,sysN) 또는 nyquist(sys1,sys2,...,sysN,w)는 여러 LTI 모델의 나이퀴스트 플롯을 하나의 Figure에 겹쳐 놓습니다. 모든 시스템은 동일한 개수의 입력과 출력을 가져야 하나, 연속시간 시스템과 이산시간 시스템이 서로 섞여 있는 것은 허용됩니다. 구문 nyquist(sys1,'PlotStyle1',...,sysN,'PlotStyleN')을 사용하여 각 시스템 플롯에 대해 특정 색, 선 스타일 및/또는 마커를 지정할 수도 있습니다.

[re,im,w] = nyquist(sys)[re,im] = nyquist(sys,w)는 주파수 w(단위: rad/TimeUnit)에서의 주파수 응답의 실수부와 허수부를 반환합니다. reim은 3차원 배열입니다(자세한 내용은 아래의 "인수" 참조).

[re,im,w,sdre,sdim] = nyquist(sys)는 식별된 시스템 sys에 대해 reim의 표준편차도 반환합니다.

인수

출력 인수 reim은 다음과 같은 차원을 갖는 3차원 배열입니다.

(number of outputs) × (number of inputs) × (length of w)

SISO 시스템의 경우, 스칼라 re(1,1,k)im(1,1,k)는 각각 주파수 ωk = w(k)에서의 응답의 실수부와 허수부입니다.

re(1,1,k)=Re(h(jωk))im(1,1,k)=Im(h(jwk))

전달 함수가 H(s)인 MIMO 시스템의 경우, re(:,:,k)im(:,:,k)는 H(jωk)의 실수부와 허수부를 제공합니다(두 배열 모두 행 개수가 출력 개수와 같고 열 개수가 입력 개수와 같음). 따라서 다음은

re(i,j,k)=Re(hij(jωk))im(i,j,k)=Im(hij(jωk))

여기서 hij는 입력 j에서 출력 i로의 전달 함수입니다.

예제

모두 축소

다음 전달 함수를 만들고 나이퀴스트 응답을 플로팅합니다.

H(s)=2s2+5s+1s2+2s+3.

H = tf([2 5 1],[1 2 3]);
nyquist(H)

nyquist 함수는 M-원의 그리드를 표시할 수 있습니다. 이 그리드는 상수 폐루프 크기의 등고선입니다. M-원은 다음과 같은 수치가 주파수에서 상수 값인 복소수의 궤적으로 정의됩니다.

T(jω)=|G(jω)1+G(jω)|.

여기서 ω는 주파수(단위: radians/TimeUnit, TimeUnit은 시스템 시간 단위)이고 G는 상수 크기 요구 사항을 충족하는 복소수의 모음입니다.

M-원의 그리드를 표시하려면 플롯을 마우스 오른쪽 버튼으로 클릭하고 그리드를 선택하십시오. 또는 grid 명령을 사용할 수도 있습니다.

grid on

식별된 모델의 주파수 응답의 실수부와 허수부의 표준편차를 계산합니다. 이 데이터를 사용하여 응답 불확실성의 3σ 플롯을 만듭니다.

추정 데이터 z2를 불러옵니다.

load iddata2 z2;

데이터를 사용하여 전달 함수 모델을 식별합니다.

sys_p = tfest(z2,2);

512개의 주파수로 구성된 집합 w에 대해 주파수 응답 실수부와 허수부의 표준편차를 구합니다.

w = linspace(-10*pi,10*pi,512);
[re,im,wout,sdre,sdim] = nyquist(sys_p,w);

여기서 reim은 주파수 응답의 실수부와 허수부이고 sdresdim은 각각의 표준편차입니다. wout의 주파수는 w에서 지정한 주파수와 동일합니다.

응답과 3σ 불확실성을 보여주는 나이퀴스트 플롯을 만듭니다.

re = squeeze(re);
im = squeeze(im); 
sdre = squeeze(sdre);
sdim = squeeze(sdim);
plot(re,im,'b',re+3*sdre,im+3*sdim,'k:',re-3*sdre,im-3*sdim,'k:')
xlabel('Real Axis');
ylabel('Imaginary Axis');

  • 한 예로 단위 같은 플롯의 속성을 변경할 수 있습니다. 플롯의 속성을 변경하는 방법에 대한 자세한 내용은 Ways to Customize Plots 항목을 참조하십시오. 플롯 속성을 사용자 정의할 때 유연성을 최대화하려면 nyquist 대신 nyquistplot 명령을 사용하십시오.

  • 마우스 오른쪽 클릭 메뉴에는 나이퀴스트 플롯에만 적용되는 두 가지 보기 옵션이 있습니다.

    • 전체 보기 — 나이퀴스트 플롯의 비유계 가지를 잘라내되, 임계점 (–1, 0)은 여전히 포함합니다.

    • (-1,0) 주변 확대/축소 — 임계점 (–1,0) 주변을 확대/축소합니다. (프로그래밍 방식으로 임계점을 확대/축소하려면 대신 nyquistplot을 사용하십시오.)

  • 지정된 주파수에서의 실수 값과 허수 값을 표시하는 데이터 마커를 활성화하려면 곡선 위의 아무 곳이나 클릭하십시오. 다음 Figure는 데이터 마커가 있는 nyquist 플롯을 보여줍니다.

알고리즘

bode를 참조하십시오.

R2006a 이전에 개발됨