강의자료 · 제어공학2
실습 언어

Compensator Design

빠르기·감쇠·Steady-State Error를 함께 맞춰야 할 때 Lead와 Lag 중 무엇을 조정할지 판단합니다.

Python 경로는 python-control을 사용합니다. 모듈이 없으면 Colab·Jupyter의 코드 셀에서 %pip install control==0.10.2를 실행하세요.

MATLAB · Control System Toolbox

실습 전에

01 속도·감쇠·Steady-State Error를 Gain 하나로 모두 맞출 수 있을까요?

설명

조건들이 상충하면 보상기의 Pole·Zero로 Root Locus나 Frequency Response를 바꿔야 합니다.

02 Lead와 Lag의 목적은 어떻게 다를까요?

설명

Lead는 Phase Margin·Transient Response, Lag는 Low-Frequency Gain과 Steady-State Error 개선에 주로 사용하며 상충 관계도 확인합니다.

실습

실습용 노트북 미리보기실습용 노트북 다운로드실습용 mlx 스크립트 미리보기실습용 mlx 스크립트 다운로드

1. 기준 Plant와 Lead 설계점

시작 조건

G(s)=40s(s+2)G(s)=\frac{40}{s(s+2)}. 목표는 ζ=.4\zeta=.4, ωn=10\omega_n=10 rad/s입니다.

진행 방법

  1. 목표 복소 Pole의 실수부·허수부를 계산하고 Root Locus 위에 표시하세요.
  2. Lead 보상기의 Zero·Pole을 정하고, 목표점의 각도 조건과 크기 조건으로 Gain을 계산해 보상기 식을 적으세요.
  3. 선택한 지점과 실제 Closed-loop Pole의 거리를 계산하세요.

남길 결과

기록 항목과 확인할 점
설계 항목
목표 값
계산·선택 값
차이

확인할 점

  • Pole·Zero의 좌표 부호와 보상기 계수 부호를 구분했는가?
  • 격자 탐색으로 고른 Gain의 근사 오차를 기록했는가?

2. 설계 목적을 지표로 확인

시작 조건

기준 G와 활동 1의 보상 모델에 Unit Step과 Unit Ramp를 적용합니다. 시간은 각각 0~5 s, 0~20 s입니다.

진행 방법

  1. 활동 1의 보상기와 보상 전 모델에 같은 Unit Step·Unit Ramp를 넣으세요. Step은 0–5 s, Ramp는 0–20 s를 사용합니다.
  2. Step의 Overshoot·Settling Time을 구하고, Ramp에서는 r(t)=tr(t)=t에서 출력을 뺀 e(t)=r(t)−y(t)e(t)=r(t)-y(t)를 그리세요. 각 모델의 마지막 표본 오차를 기록하세요.
  3. Loop Transfer Function에서 Kv=lim⁡s→0sL(s)K_v=\lim_{s\to0}sL(s)를 구해 1/Kv1/K_v를 계산하고, 앞의 Ramp 마지막 오차와 절대 차이를 기록하세요. 응답 속도와 최종 오차 중 보상 전후에 개선되거나 악화된 항목을 표의 값으로 설명하세요.

남길 결과

기록 항목과 확인할 점
모델
Overshoot [%]
Settling Time [s]
Kv
후반 Ramp 오차

확인할 점

  • Ramp 오차가 충분히 일정해진 구간을 사용했는가?
  • 보상 전후를 같은 입력과 지표로 비교했는가?

3. 다른 목표로 설계 반복

시작 조건

같은 G에서 목표 (ζ,ωn)=(.5,8)로 바꾸거나, W12_CompensatorDesign.ipynb에서 첫 번째 ‘Phase-lag compensator using root locus’ 절(조건 Kv>20K_v>20, ζ=0.4\zeta=0.4, 시작 코드 Kv_desired=20)의 절차를 따라 Kv=20K_v=20을 목표로 합니다. 둘 중 하나를 선택합니다.

진행 방법

  1. 바꾼 목표와 고정한 Plant를 먼저 적으세요.
  2. 같은 형식으로 보상기와 성능 표를 새로 만드세요.
  3. 달성한 지표와 희생된 지표를 구분해 5문장 이내로 정리하세요.

남길 결과

기록 항목과 확인할 점
설계안
목표
보상기 식
달성 값
함께 변한 지표

확인할 점

  • 목표를 바꾼 뒤 예전 보상기를 그대로 결과로 쓰지 않았는가?
  • 목표 미달도 실제 수치와 함께 기록했는가?