저는 자동제어 공부할 때 가장 헷갈렸던 부분이 바로 정상상태오차 구하는 것이었습니다. 정상상태오차 문제들 때문에 기출문제랑 개념서를 붙잡고 씨름했던 기억이 나네요.. 오늘은 이런 헷갈림이 없도록 모든 유형들을 모아서 한번에 정리해보려고 합니다. 또한 문제를 풀면서 제 나름대로 알고리즘을 만들었는데요, 이것도 소개해드리겠습니다.
정상상태오차 문제는 매년 최소 한두 문제, 많으면 세 문제까지도 출제됩니다. 이 중에서는 정상상태오차의 개념적 특성에 관한 문제, 블록선도에서 정상상태오차를 구하는 문제, 정상상태오차의 존재성에 대한 문제 등이 있는데요, 오늘 다룰 내용은 가장 어렵고 많이 출제되는 블록선도에서 정상상태오차를 구하는 유형입니다.
아래는 정상상태오차 구하는 문제를 보았을 때 문제 조건에 따른 대처 방안 알고리즘입니다.
언뜻 보면 꽤 복잡하게 보일 수 있습니다만, 문제 풀 때마다 위 알고리즘을 떠올릴 필요는 없습니다. 위 표는 내용을 알기쉽게 정리해 놓은 것이고, 기출문제들로 연습을 하다보면 상황에 맞는 대처법을 자연스레 떠올릴 수 있게 될 것입니다. 지금부터 위 내용을 차근차근 설명해보겠습니다.
가장 먼저 할 것 : 문제 조건 확인
정상상태오차 문제의 계산 자체는 그리 어렵지 않습니다. 하지만 어렵게 느껴지는 이유 중 하나가 문제의 조건을 따지는 것이 복잡하고 실수도 많이 발생하기 때문입니다. 조건을 잘못 보아서 잘못된 값을 구하게 되고, 그렇게 문제풀이 시간이 오래 걸리기도 합니다. 정상상태오차 문제를 풀 때 따져야 할 조건은 다음과 같습니다.
1. 단위피드백 시스템/비단위피드백 시스템 여부
2. 블록선도 상에 E(s) 명시 여부
3. 입력오차(Y/R)/외란오차(Y/D) 여부
개념을 어느 정도 배운 상태라면 위 조건이 무엇을 의미하는지 대충 알 것입니다. 알고리즘 상에서는 외란오차 여부를 가장 먼저 파악하게 되어 있지만, 외란오차의 경우 비중이 많이 출제되지는 않습니다. 하지만 고난이도 문제에서는 외란오차가 많이 출제됩니다! 우선은 입력오차(R(s)에 의한 오차)의 경우부터 보도록 하겠습니다.
1) 입력오차, 단위피드백 시스템
가장 간단하면서도 비중 상으로는 가장 많이 출제되는 유형입니다. 이 때에는 오차상수법을 이용하면 간단하게 풀 수 있습니다. 오차상수법의 식을 간단히 정리해보고, 문제를 풀어보도록 하겠습니다.
i) 정적위치오차상수(단위계단 입력, r(t)=1, R(s)=1/s)
ii) 정적속도오차상수(단위램프 입력, r(t)=t, R(s)=1/s²)
iii) 정적가속도오차상수(단위포물선 입력, r(t)=t²/2, R(s)=1/s³)
또한 다음과 같이 시스템의 형(type)에 따른 오차의 유형도 알아두셔야 합니다.
단위계단입력(r(t)=1) | 단위램프입력(r(t)=t) | 단위포물선입력(r(t)=t²/2) | |
0형 | 1/(1+Kp) | ∞ | ∞ |
1형 | 0 | 1/Kv | ∞ |
2형 | 0 | 0 | 1/Ka |
램프 입력이므로, 정적속도오차상수를 사용해서 풀 수 있습니다.
이 때 입력이 4tu(t)인것에 주의해야 합니다! 정적속도오차상수의 역수에 4를 곱해야 정상상태오차가 나옵니다.
따라서 답은 3번입니다. 이렇듯 단순한 단위피드백시스템의 경우 오차상수법으로 쉽게 해결할 수 있습니다.
2) 입력오차, 비단위피드백 시스템
여기서 비단위피드백 시스템일 때부터 상당히 헷갈리기 시작합니다. 비단위시피드백시스템이라면, 블록선도 상에 E(s)가 존재해야 하는지 여부를 반드시 살펴야 합니다.
2-1) 입력오차, 비단위피드백 시스템, 블록선도 상 E(s) 존재
위와 같이 E(s)의 존재 유무를 따지는 이유는 그에 따라 오차의 정의가 달라지기 때문입니다. 만약 블록선도 상에 E(s)가 존재한다면, 블록선도를 보고 오차 E(s)를 계산해 주어야 하며, 비단위피드백시스템의 경우 대개 E(s)=R(s)-Y(s)H(s)로 나타납니다. 다음 문제를 봅시다.
위 문제의 경우 블록선도 상에 E(s)가 표시되어 있습니다. 따라서 E(s)=R(s)-Y(s)H(s)꼴로 계산해주어야 합니다.
위 식은 처음 단위피드백시스템의 식과 거의 비슷한데, 정상상태오차의 분모에 G(s)대신 G(s)H(s)가 있는 모습입니다. 따라서 오차상수를 다음과 같이 쓸 수 있습니다.
즉 비단위피드백시스템에서도 E(s)가 블록선도 상에 나타난다면 위와 같은 오차상수법을 사용할 수 있습니다.
r(t)가 단위계단 함수이므로
따라서 답은 3번입니다!
2-2) 입력오차, 비단위피드백 시스템, 블록선도 상 E(s) 존재하지 않음 : E=R-Y 이용
이번에는 비단위피드백시스템에서 블록선도 상 E(s)가 존재하지 않는 경우를 살펴 보겠습니다. 아까와 뭐가 다르냐고 물을 수도 있지만 오차의 정의가 달라지므로 풀이 과정도 달라집니다. 블록선도 상에 E(s)가 존재하지 않는다면 오차상수법을 사용하면 안 되고, 통상적인 식인 E(s)=R(s)-Y(s)를 이용하여 오차를 구해야 합니다. 다음 문제를 통해 보겠습니다.
먼저 폐루프전달함수 T(s)=Y(s)/R(s)를 구해야 합니다. 계산 없이 바로 구하는 방법은 이전 포스팅을 참고해 주세요! → 【자동제어】"계산 없이" 전달함수 구하는 방법 - 1
가 성립하고 단위계단 입력이므로
따라서 K의 범위는 1/3과 3/4 사이이며 답은 3번입니다. 단, 여기서 계산을 좀 더 빨리 할 수 있는 방법이 있습니다. 폐루프전달함수로 돌아가 보겠습니다.
여기서 정상상태오차를 계산할 때 s가 들어간 항은 어차피 0으로 수렴하기 때문에 고려할 필요가 없습니다. 입력이 단위계단 신호이므로 sR(s)는 어차피 상쇄되어 1이 됩니다. 따라서 1-T(s)를 구하고 s→0으로 보내면 됩니다.
으로 바로 나오게 됩니다! 단, 이것은 입력신호의 형태가 단위계단함수일 때 한하여 사용 가능합니다. 만약 입력이 단위램프 신호이면 sR(s)는 1/s가 되고, 1-T(s)에 1/s를 곱해주고 s→0으로 보내면 됩니다. 마찬가지로 입력이 단위포물선 신호이면 sR(s)는 1/s²가 되고, 1-T(s)에 1/s²를 곱해준 후 s→0으로 보내면 됩니다. 저는 이것을 'E=R-Y 계산법'이라고 부르겠습니다.
내용이 또 길어졌네요. 다음에 이어서 알아보도록 하겠습니다!
'실전풀이&예상문제 > [자동제어 실전풀이]' 카테고리의 다른 글
【자동제어】정상상태오차 완전정복 - 3 (3) | 2022.01.22 |
---|---|
【자동제어】정상상태오차 완전정복 - 2 (5) | 2022.01.21 |
【자동제어】"계산 없이" 전달함수 구하는 방법 - 2 (2) | 2022.01.19 |
【자동제어】"계산 없이" 전달함수 구하는 방법 - 1 (3) | 2022.01.18 |
【자동제어】역라플라스변환 시 부분분수 전개하는 방법 (1) | 2022.01.16 |
댓글