카테고리
산업계측제어기술사

steady state error

“`html

Steady-State Error

Steady-State Error · System Type · Final Value Theorem · Characteristic Equation

1. 문제

피드백 제어시스템이 다음 두 조건을 만족해야 한다.

  1. 단위계단함수 입력에 기인하는 정상상태 오차는 0이다.
  2. 전체 시스템의 특성방정식은 다음과 같다.
s3 + 4s2 + 6s + 10 = 0

두 조건을 만족하는 3차 시스템의 전달함수를 구한다.

                 +                 e
      R(s) ------>(Σ)-------------->[ G(s) ]--------+------> C(s)
                    -                               |
                    ^                               |
                    |                               |
                    +-------------------------------+
                           Unity Feedback
    

2. Unity Feedback의 Error

                 +                 E(s)
      R(s) ------>(Σ)-------------->[ G(s) ]--------+------> Y(s)
                    -                               |
                    ^                               |
                    |                               |
                    +-------------------------------+
    

Unity feedback에서

E(s) = R(s) – Y(s)

출력은

Y(s) = G(s)E(s)

이므로

E(s) = R(s) – G(s)E(s)
E(s)[1+G(s)] = R(s)

따라서

E(s) = R(s) / [1+G(s)]
Unity Feedback에서 Error 전달함수는 E(s)/R(s) = 1/[1+G(s)]이다.

3. Closed-Loop Transfer Function

출력에 대해서는

Y(s) = G(s)E(s)

이므로

Y(s)/R(s) = G(s) / [1+G(s)]
T(s) = G(s) / [1+G(s)]
Unity Negative Feedback의 폐루프 전달함수는 G/(1+G)이다.

4. 단위계단 입력과 정상상태 오차

단위계단 입력은

R(s) = 1/s

이다.

Error는

E(s) = 1 / {s[1+G(s)]}

정상상태 오차는 Final Value Theorem을 이용하여 구한다.

ess = limt→∞e(t)
ess = lims→0sE(s)

따라서

ess = lims→0 1/[1+G(s)]

5. 단위계단 정상상태 오차가 0이 되는 조건

문제의 조건은

ess = 0

이다.

따라서

lims→0 1/[1+G(s)] = 0

가 되어야 한다.

이를 만족하려면 저주파에서

G(s) → ∞   (s→0)

이어야 한다.

따라서 G(s)에 적어도 하나의 원점 pole, 즉 적분요소가 필요하다.

1/s
단위계단 입력에 대해 정상상태 오차를 0으로 만들려면 Open-Loop Transfer Function이 적어도 Type 1이어야 한다.

6. System Type

System Type은 Open-Loop Transfer Function이 갖는 원점 pole의 개수로 결정한다.

System Type 원점 Pole Step 입력 정상상태 오차
Type 0 0개 유한값
Type 1 1개 0
Type 2 이상 2개 이상 0
Step Input에 대해 ess=0이라는 조건만으로는 Type 1 이상이라는 사실을 알 수 있다.

7. 필기 풀이 ① — Type 1 형태

첫 번째 필기에서는 단위계단 입력에 대해 정상상태 오차를 0으로 만들기 위해 G(s)에 원점 pole 하나를 둔다.

G(s) = (1/s) · K/(s2+αs+β)

즉

G(s) = K / [s(s2+αs+β)]

Unity Feedback의 폐루프 전달함수는

T(s) = G(s)/(1+G(s))

이므로

T(s) = K / [ s(s2+αs+β) + K ]

분모를 전개하면

s3 + αs2 + βs + K

문제에서 주어진 특성방정식

s3 + 4s2 + 6s + 10

과 계수를 비교하면

α = 4
β = 6
K = 10

따라서 필기에서 얻은 Open-Loop Transfer Function은

G(s) = 10 / [s(s2+4s+6)]

이다.

폐루프 전달함수는

T(s) = 10 / (s3+4s2+6s+10)

8. 필기 풀이 ② — 다른 가능한 G(s)

포스트의 다른 필기에서는 다음 형태도 사용한다.

G(s) = (4s2+6s+10) / s3

Unity Feedback에서

T(s) = G(s)/(1+G(s))

이므로

T(s) = (4s2+6s+10) / (s3+4s2+6s+10)

따라서 폐루프 특성방정식은 역시

s3 + 4s2 + 6s + 10 = 0

이다.

포스트의 두 필기에서는 서로 다른 G(s)를 구성하지만, 두 경우 모두 주어진 폐루프 특성방정식과 Step 입력 ess=0 조건을 만족시키는 형태로 정리한다.

9. 두 풀이 비교

구분 Open-Loop G(s) Closed-Loop T(s)
필기 ① 10 / [s(s²+4s+6)] 10 / (s³+4s²+6s+10)
필기 ② (4s²+6s+10)/s³ (4s²+6s+10) / (s³+4s²+6s+10)

10. Python 검산에 사용한 전달함수

포스트의 Python 계산에서는 다음 폐루프 전달함수를 사용한다.

T(s) = (4s2+6s+10) / (s3+4s2+6s+10)

단위계단 입력은

R(s)=1/s

이므로

Y(s) = (4s2+6s+10) / [ s(s3+4s2+6s+10) ]

Python step response 계산 결과, 정상상태 값은

y(∞) = 1

로 확인된다.

Python 검산 결과 SteadyStateValue = 1.0이다.

11. Python Step Response 결과

항목 계산 결과
Rise Time 0.311 s
Settling Time 6.850 s
Overshoot 33.15 %
Peak 1.3315
Peak Time 0.934 s
Steady-State Value 1.0

12. Steady-State Error 확인

단위계단 입력의 최종값은 1이고, 출력의 최종값도 1이다.

r(∞) = 1
y(∞) = 1

따라서

ess = r(∞)-y(∞)
ess = 1-1
ess = 0

13. ASCII 블록선도 정리

Unity Feedback

                   E(s)
            +      ───────► [ G(s) ] ───────► Y(s)
      R(s) ───► ( Σ )                       │
                 - ▲                         │
                   │                         │
                   └─────────────────────────┘
                         H(s) = 1
    

Error 관계

      R(s) ───────────────┐
                          ▼
                       [ 1/(1+G) ] ─────► E(s)
    

Output 관계

      R(s) ───────────────┐
                          ▼
                       [ G/(1+G) ] ─────► Y(s)
    

14. 주요 관계식

항목 관계식
Error E/R = 1/(1+G)
Closed-Loop Transfer Function T = G/(1+G)
Unit Step R(s)=1/s
Final Value Theorem ess = lims→0sE(s)
Step 정상상태 오차 ess = lims→01/[1+G(s)]
ess=0 조건 G(s)→∞ as s→0
System Type Open-loop 원점 pole 개수

15. 핵심 기억 문장

  1. Unity Feedback에서 E/R = 1/(1+G)이다.
  2. 폐루프 전달함수는 T=G/(1+G)이다.
  3. 정상상태 오차는 Final Value Theorem으로 ess=lim sE(s)로 구한다.
  4. 단위계단 입력에서는 ess = lim 1/[1+G(s)]이다.
  5. 단위계단 입력의 정상상태 오차가 0이 되려면 G(s)가 s→0에서 무한대로 가야 한다.
  6. 따라서 Open-Loop System에 적어도 하나의 원점 pole, 즉 적분요소가 필요하다.
  7. System Type은 Open-Loop Transfer Function의 원점 pole 개수로 결정된다.
Steady-State Error, Final Value Theorem, System Type, Unity Feedback, Unit Step, Origin Pole, Integrator, Characteristic Equation, Closed-Loop Transfer Function
“`

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

이 사이트는 Akismet을 사용하여 스팸을 줄입니다. 댓글 데이터가 어떻게 처리되는지 알아보세요.