Main Content

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

기준 추종과 외란 제거 중 하나를 더 우선시하도록 PID 제어기 조정하기(명령줄)

이 예제에서는 명령줄 PID 조정 옵션을 사용하여 기준 추종에서 오버슈트를 줄이거나 플랜트 입력에서 외란 제거를 개선하는 방법을 보여줍니다. 예제에서는 pidtune 명령을 사용하여 PI 및 PID 제어 시스템의 기준 추종 성능과 외란 제거 성능 사이의 상호 절충을 보여줍니다.

다음 그림과 같은 제어 시스템이 있다고 가정하겠습니다.

설정점 추종은 r에서의 신호에 대한 y에서의 응답입니다. 입력 외란 제거는 d에서의 신호에 대한 y에서의 신호 억제입니다.

다음 예제 식의 플랜트 모델을 만듭니다.

$$G = \frac{{0.3}}{{{s^2} + 0.1s}}.$$

G = tf(0.3,[1 0.1 0]);

0.03rad/s의 대역폭을 사용하여 이 플랜트에 대한 PI 제어기를 설계합니다.

wc = 0.03;
[C1,info] = pidtune(G,'PI',wc);

디폴트 제어기를 사용하여 제어 시스템의 계단 기준 추종 및 계단 외란 제거를 검토합니다. d에서 y로의 외란 응답은 feedback(G,C1)로 지정된 폐루프의 응답과 동일합니다.

T1 = feedback(G*C1,1);
GS1 = feedback(G,C1);

subplot(2,1,1);
stepplot(T1)
title('Reference Tracking')
subplot(2,1,2);
stepplot(GS1)
title('Disturbance Rejection')

기본적으로 pidtune은 지정된 대역폭에 대해 기준 추종과 외란 제거 사이의 균형이 달성되도록 제어기를 조정합니다. 이 예제에서는 제어기가 기준 추종 응답에서 얼마간의 오버슈트를 생성합니다. 제어기는 또한 초기 피크 후에 기준 추종보다 어느 정도 긴 정착 시간으로 입력 외란을 억제합니다.

응용 분야에 따라 기준 추종과 외란 제거 중 하나를 더 우선시하도록 둘 사이의 균형을 변경해야 할 수 있습니다. PI 제어기의 경우 조정된 시스템의 위상 여유를 변경하여 이 균형을 변경할 수 있습니다. pidtune이 반환하는 디폴트 제어기는 60°의 위상 여유를 생성합니다.

info.PhaseMargin
ans =

   60.0000

동일한 대역폭으로 위상 여유 45°와 70°에 대해 제어기를 설계하고, 그 결과로 나오는 기준 추종과 외란 제거를 비교합니다.

opts2 = pidtuneOptions('PhaseMargin',45);
C2 = pidtune(G,'PI',wc,opts2);
T2 = feedback(G*C2,1);
GS2 = feedback(G,C2);

opts3 = pidtuneOptions('PhaseMargin',70);
C3 = pidtune(G,'PI',wc,opts3);
T3 = feedback(G*C3,1);
GS3 = feedback(G,C3);

subplot(2,1,1);
stepplot(T1,T2,T3)
legend('PM = 60','PM = 45','PM = 70')
title('Reference Tracking')
subplot(2,1,2);
stepplot(GS1,GS2,GS3)
title('Disturbance Rejection')

위상 여유를 45°로 낮추면 외란 제거의 속도가 높아지지만 기준 추종 응답의 오버슈트도 함께 늘어납니다. 위상 여유를 70°로 높이면 오버슈트가 완전히 제거되지만 외란 제거는 매우 부진해집니다. 응용 분야에 적합한 기준 추종과 외란 제거 사이의 균형을 찾을 때까지 여러 위상 여유 값을 시도해 볼 수 있습니다. 위상 여유가 균형에 미치는 영향은 플랜트 모델에 따라 달라집니다. 일부 플랜트 모델의 경우 이 예제에서 보는 것만큼 영향이 크지 않습니다.

제어 시스템의 대역폭과 위상 여유를 모두 고정하려는 경우에도 pidtuneDesignFocus 옵션을 사용하여 기준 추종과 외란 제거 사이의 균형을 변경할 수 있습니다. DesignFocus'disturbance-rejection' 또는 'reference-tracking'으로 설정하여 외란 제거나 기준 추종을 우선시하도록 제어기를 조정할 수 있습니다.

DesignFocus 옵션은 조정 가능한 파라미터가 더 많이 있는 제어 시스템에서 더 효과적입니다. 따라서 PI 제어기와 함께 사용할 때는 큰 효과가 없습니다. 그 영향을 보려면 DesignFocus의 각 값을 사용하여 동일한 대역폭과 디폴트 위상 여유(60°)에 대해 PIDF 제어기를 설계하십시오. 결과를 비교합니다.

opts4 = pidtuneOptions('DesignFocus','balanced');   % default focus
C4 = pidtune(G,'PIDF',wc,opts4);
T4 = feedback(G*C4,1);
GS4 = feedback(G,C4);

opts5 = pidtuneOptions('DesignFocus','disturbance-rejection');
C5 = pidtune(G,'PIDF',wc,opts5);
T5 = feedback(G*C5,1);
GS5 = feedback(G,C5);

opts6 = pidtuneOptions('DesignFocus','reference-tracking');
C6 = pidtune(G,'PIDF',wc,opts6);
T6 = feedback(G*C6,1);
GS6 = feedback(G,C6);

subplot(2,1,1);
stepplot(T4,T5,T6)
legend('Balanced','Rejection','Tracking')
title('Reference Tracking')
subplot(2,1,2);
stepplot(GS4,GS5,GS6)
title('Disturbance Rejection')

조정된 제어 시스템에서 DesignFocus 옵션을 사용하여 기준 추종과 외란 제거 중 하나를 더 우선시하도록 하는 경우에도 위상 여유를 조정하여 두 가지 성능 측정값 사이의 균형을 추가로 미세 조정할 수 있습니다. DesignFocusPhaseMargin을 함께 사용하여 설계 요구 사항을 가장 잘 충족하는 성능 균형을 달성하십시오.

이 두 옵션이 시스템 성능에 미치는 영향은 플랜트의 속성에 따라 크게 달라집니다. 일부 플랜트의 경우 PhaseMargin 또는 DesignFocus 옵션을 변경하는 것이 미미한 영향을 미치거나 아무런 영향을 미치지 않습니다.

관련 항목