극점과 영점

개요[편집 / 원본 편집]

시스템의 전달 함수(Transfer function)를 라플라스 변환을 통해서 얻을 수가 있다. 그리고 전달 함수의 분모와 분자를 다항식 및 인수분해 형태로 표현을 할 수가 있다.

전달함수 [math]\displaystyle{ G(s) }[/math]는...

[math]\displaystyle{ G(s) = \frac{ \sum_{i=0}^{m} b_{i}s^{i} }{ \sum_{i=0}^{n} a_{i}s^{i} } = \frac{ b_{m} (s-z_{1})(s-z_{2})...(s-z_{m}) }{ b_{m} (s-p_{1})(s-p_{2})...(s-p_{n}) } }[/math]

이때 [math]\displaystyle{ z_i }[/math]영점이라고 부르며, [math]\displaystyle{ p_i }[/math]극점이라고 부른다.

영점[편집 / 원본 편집]

만약 s의 값이 영점값들 중 하나와 동일하게 된다면 전달 함수의 분자는 0이 되어버려서 [math]\displaystyle{ G(s) = 0 }[/math]이 되어버린다. 즉, 영점에 도달하게 되면 신호 전달이 막혀버리는 현상[1]이 발생하게 되며 주파수가 사라지게[2] 된다.

[math]\displaystyle{ G(s)= \mid _{s=z_{i}} = 0 }[/math]

극점[편집 / 원본 편집]

반대로 s의 값이 극점값들 중 하나와 동일하게 된다면 분모가 0이 되어버려서 전달 함수 [math]\displaystyle{ G(s) = \infty }[/math]이 되게 된다. 출력이 무한이 되게 되면 당연히 시스템에 문제가 발생하기 때문에 시스템의 stability를 결정하는 역할을 한다.

[math]\displaystyle{ G(s)= \mid _{s=p_{\infty}} = 0 }[/math]

Pole-Zero Cancellation[편집 / 원본 편집]

만약 영점과 극점값이 동일한 값을 가지게 된다면 분모, 분자에서 서로 약분되는 term이 생기게 되며 이는 곧 바람직하지 않은 결과를 가져오게 된다[3]. right plane에 위치한 극점을 제거하기 위해서 상쇄시키는 영점을 추가한다고 한다고 해도 시스템의 응답은 발산해버릴 수가 있기 때문이다.

만약 시스템의 설계를 하기가 너무나 어렵다면, pole-zero cancellation을 해도 되지만 이때 완벽하게 동일한 값을 사용하는게 아닌 pole=5 라면 zero=4.9999로 설정함으로써 설계를 할 수가 있다. 그러나 이와 같은 접근법도 미세한 진동을 남길 수 있기에 추천하지는 않는다.

극점과 영점의 갯수[편집 / 원본 편집]

[math]\displaystyle{ G(s)= \frac{b_{0}+b_{1}s+b_{2}s^{2}+...+b_{M}s^{M}}{a_{0}+a_{1}s+a_{2}s^{2}+...+a_{N-1}s^{N-1}+s^{N}} }[/math]

전달함수에서 분모, 분자의 다항식은 시스템에 따라서 차수가 다를 수가 있습니다. 분자에 위치한 다항식의 최고 차수가 [math]\displaystyle{ M }[/math]이며 분모에 위치한 다항식의 최고 차수가 [math]\displaystyle{ N }[/math]일 때 다음과 같이 상황을 나눠서 생각할 수 있다.

[math]\displaystyle{ M ≤ N }[/math][편집 / 원본 편집]

분모의 차수가 더 크거나 같을때, 즉 [math]\displaystyle{ N }[/math]이 더 큰 상황이며 시스템이 무한대까지 응답하는 상황일 때 전달 함수는 아래와 같이 근사할 수 있다. 이때 [math]\displaystyle{ s }[/math]는 무한대로 가기에 결국은 [math]\displaystyle{ G(s) = 0 }[/math]이 되어버린다.

[math]\displaystyle{ \lim_{s \rightarrow \infty } G(s) = \frac{b_{M}}{s^{N-M}} }[/math]

즉, 영점과 같은 역할을 한것이며 만약 [math]\displaystyle{ N = 5 }[/math], [math]\displaystyle{ M = 3 }[/math]일 때 [math]\displaystyle{ N - M = 2 }[/math]이므로 [math]\displaystyle{ s }[/math]가 무한대일 때 영점이 2개가 있다는 것을 알 수가 있다. 그리고 해당 영점들은 infinite zero라고 부릅니다.

이때 우리는 시스템을 strictly proper system한 시스템이라고 부르며 차수가 동일할 때는 proper system이라고 부른다.

[math]\displaystyle{ M \gt N }[/math][편집 / 원본 편집]

[math]\displaystyle{ G(s) = s + a + \frac{b}{s} + ... }[/math] 분자의 차수가 더 클때, 즉 분자의 차수가 더 크다면 전달함수는 위와 같이 표현이 된다. 그러나 [math]\displaystyle{ s }[/math]가 무한대로 갈 때 [math]\displaystyle{ (w=∞) }[/math] 전달함수도 마찬가지로 매우 무한한 값을 가지게 되며, physical 한 상황에서 시스템을 건드렸을 때 순간적으로 날아가게 되는 시스템이 되게 된다.

해당 시스템은 현실적으로 존재할 수 없는 시스템이므로 이때 시스템을 non-proper system (non-causality) 이라고 부른다.

MATLAB 예제[편집 / 원본 편집]

인공위성이 자세 제어를 위해서 엔진에서 추력을 분출해야 한다. 이때 input1은 한 방향으로 주는 것이고 input2는 한 방향으로 주었다가 반대 방향으로도 동일한 크기로 주었을 때 어떠한 시스템의 응답을 보이는지에 대해 표현한 예제이다.

%추가 코드 (극점, 영점 계산하기)
num = [0 0 0.001];
den = [1 0.05 0];
[z,p,k] = tf2zp(num,den); 

% input 1에 대해서 sysG (전달함수)의 output
s = tf('s');
sysG = 0.0002/s^2;
t = 0:0.01:10;
u1 = [zeros(1,500) 25*ones(1,10) zeros(1,491)];
[y1] = lsim(sysG, u1, t);
y1 = y1 * 180/pi;

% input 2에 대해서 sysG (전달함수)의 output
u2 = [zeros(1,500) 25*ones(1,10) zeros(1,100) -25*ones(1,10) zeros(1,381)];
[y2] = lsim(sysG, u2, t);
y2 = y2 * 180/pi;

figure()
subplot(2,2,1)
plot(t,u1)
title('input 1')
xlabel('Time (sec)')
ylabel('Thrust, Fc (input 1)')
grid on

subplot(2,2,2)
plot(t,y1)
title('output (input 1)')
xlabel('Time (sec)')
ylabel('Theta (radian)')
grid on

subplot(2,2,3)
plot(t,u2)
title('input 2')
xlabel('Time (sec)')
ylabel('Thrust, Fc (input 2)')
grid on

subplot(2,2,4)
plot(t,y2)
title('output 2 (input 2)')
xlabel('Time (sec)')
ylabel('theta (radian)')
grid on

CC BY로 가져옴

각주[편집 / 원본 편집]

  1. Signal transmission blocking
  2. Transmission zeros of the system
  3. undesirable properties
• 현재 페이지 URL 줄이기