System Control

Transient Response 두 번째

파치카 2020. 7. 10. 11:55

저번에 transient response 에 대해서 적었었는데,

 

이번에도 transient response 에 대해서 적을 것이다.

 

저번 글과 이번 글의 다른 점은

 

저번 글은 1st order system 에 대한 transient response 였다면,

 

이번 글은 2nd order system 에 대한 transient response 이라는 것.

 

https://honour.tistory.com/36

 

Transient Response

오랜만에 글을 쓴다. 이번엔 Transient response (네이버 검색해보니 과도 응답 이라고 나옴) 에 대해서 알아보자. Transient response 는 시스템의 시간이 지남에 따라 반응하는 걸 뜻한다. 예를 들면 스프

honour.tistory.com

 

 

위에 링크를 보면 내가 DOF 와 system order에 대해서 간략하게 설명하는 글을 적었었는데

 

여길 보면 1st order 와 2nd order 시스템의 차이점을 적어놨다.

 

다시 요약해서 적어보자면

 

1st order system = 특정한 input이 아니면 진동 (Oscillation) 이 절대로 없다.

 

2nd order system = 무조건 적으로 진동하진 않지만 진동할 가능성을 가지고 있다.

 

그럼 저번 글엔 1st order system 의 transient response 를 알아보았으니

 

이번엔 2nd order system 의 transient response 를 알아보자.

 

 

먼저 이런 스프링-댐퍼 시스템이 있다고 하자. 이 시스템은 1 DOF 2nd order 이다. 

 

FBD 를 그리고 전달함수 (Transfer Function) 를 구해보자.

 

전달 함수 구하는 방법은

 

honour.tistory.com/34

 

시스템 모델링

첫번째 글엔 라플라스 변환 테이블만 올려놓고 그냥 외우는게 낫다고 했는데 설명을 붙이는 걸 깜빡했다. 여기서 라플라스 변환의 쓰임은 크게 두 가지로 나뉘는데 첫번째는 알다시피 미분방적

honour.tistory.com

 

 

요기로 가면 나온다.

 

그럼 이번엔 이 전달 함수의 eigenvalue 를 구해보자.

 

1st order 는 eigenvalue 가 하나라서 그냥 풀면 되지만 2nd order 는 eigenvalue 가 두 개이다.

 

그래서 필요한 건 근의 공식. 2차 방정식을 풀듯이 풀면 된다.

 

 

 

그렇다면 두 개의 eigenvalue 의 값은 각각

 



 

이렇게 나온다.

 

여기서 중요한 것은 판별식.

 

 

알다시피 판별식은 3가지의 가능성을 가지고 있는데,

 

 

Case 1.

 

b 제곱이 4mk 보다 클 때.

 

Case 2.

 

b 제곱이 4mk 와 같을 때.

 

Case 3.

 

b 제곱이 4mk 보다 작을 때.

 

Case 1 부터 차근차근 보자.

 

b 제곱이 4mk 보다 크면 루트 안의 값은 + 가 된다.

 

그렇다면 eigenvalue 의 값은 모두 정수가 된다.

 

b 제곱이 4mk와 같으면 루트 안의 값은 0이 된다.

 

그렇다면 eigenvalue 의 값은 모두 같다.

 

b 제곱이 4mk 보다 작으면 루트 안의 값은 - 가 된다.

 

그렇다면 eigenvalue 의 값은 모두 복소수가 된다.

 

 

 

조금 더 나가기전에 잠깐 Case 1을 봐보자.

 

Case 1의 경우, 두번째 eigenvalue 의 경우엔 무조건 - 가 되니까 문제가 없는데

 

첫번째 eigenvalue 의 경우엔 eigenvalue 가 + 가 될 가능성이 있다.

 

이제 와서 생각해보니 eigenvalue 가 - 여야하는 이유를 설명하지 못했다.

 

Eigenvalue 가 - 여야 하는 이유를 간략하게 설명하자면

 

 

속도 v = Ae^st 인데, 여기서 s 가 바로 eigenvalue 이다.

 

만약에 이 s 값이 + 라면 시간이 지날수록 속도가 올라가는 기이한 현상이 일어나게 된다.

 

고로 Eigenvalue 는 - 여야함.

 

물론 나중에가면 eigenvalue 가 + 인 시스템도 다룰 예정이다.

 

하지만 지금 당장은 eigenvalue 가 - 여야 정상적인 시스템이라는 걸 알아두면 좋겠다.

 

s < 0  -> 정상적인 시스템

 

s > 0 -> 비정상적인 시스템

 

 

다시 본론으로 넘어가서,

 

Case 1을 보면 eigenvalue 가 + 일 가능성이 있는데 한 번 실제로 해보자.

 

첫번째 eigenvalue 식을 풀어보면..

 





 

 

고로 -b/(2m) + sqrt((b/(2m))^2 - (k/m)) < 0 이 되기 위해선

 

b, k, m 중 하나가 - 여야만 가능하다.

 

하지만 알다시피 그것은 불가능하기에 모든 eigenvalue 의 값은 0 보다 작을 수 밖에 없다.

 

 

그렇다면 위의 시스템을 MATLAB을 이용해서 한 번 돌려보자.

 

먼저 Case 1 일 때.

 

 

F = 1

m = 1

b = 0.7

k = 0.1

 

이라고 임의로 수를 넣어서 돌려보면

 

 

이렇게 나온다.

 

그리고 eigenvalue 를 계산해보면 각각 s = -1, -0.4 가 나온다.

 

Case 2 일 때.

 

F = 1

m = 1

b = 0.7

k = 0.1225

 

라고 수를 넣어보면

 

 

이렇게 나온다.

 

그리고 eigenvalue 를 계산해보면 각각 s = -0.7, -0.7 이 나온다.

 

그럼 마지막으로 Case 3 일 때.

 

F = 1

m = 1

b = 0.7

k = 0.5

 

라고 수를 넣어보면

 

 

이렇게 나온다.

 

그리고 eigenvalue 를 계산해보면 각각 s = -0.7000 - 1.2288i , -0.7000 + 1.2288i 가 나온다.

 

Case 1 과 2는 마치 저번 글에서 봤었던 그래프랑 상당히 유사하다.

 

하지만 Case 3은 확연히 차이가 난다.

 

 

그래프를 보면 알겠지만 Case 3의 경우엔 시스템이 진동을 한다.

 

그리고 전에 썼던 DOF/System order 글을 보면

 

2nd order 은 진동 가능성을 가지고 있다  라고 적어놨는데 그게 바로 이때,

 

eigenvalue 가 복소수일 때 시스템은 진동을 한다.

 

 

 

그럼 마지막으로 두 개의 eigenvalue 의 차이가 엄청나다면 어떻게 될까?

 

두 eigenvalue 의 차이가 큰 2nd order와 1st order를 비교해보자.

 

 

 

이렇게 나온다.

 

보다시피

 

1st order 와 2nd order 가 거의 비슷하다.

 

결론을 내려보면

 

두 eigenvalue 의 차이가 크다면 1st order와 비슷한 반응을 보인다.

 

Case 2의 경우엔 두 eigenvalue 의 값이 같은데 그렇다고 해서 시스템을 1st order 로 만들지 않는다는 점도 알아두면 좋다.

 

정리하자면

 

b^2 > 4mk -> Overdamped

 

b^2 = 4mk -> Criticallydamped

 

b^2 < 4mk -> Underdamped

 

이며

 

s1 >>>>>>>>>> s2 라면 1st order 시스템에 가까워진다.