정착 시간이란?
동적 시스템의 정착 시간은 출력이 주어진 허용 오차 범위 내에서 도달하고 안정화하는 데 필요한 시간으로 정의됩니다. 이는 Ts로 표기됩니다. 정착 시간은 전파 지연과 최종 값의 영역에 도달하는 데 필요한 시간을 포함합니다. 이는 과부하 상태를 회복하고 슬루 및 허용 오차 범위 근처에서 안정화하는 데 필요한 시간을 포함합니다.
허용 오차 범위는 출력이 안정화될 수 있는 최대 허용 범위입니다. 일반적으로 허용 오차 범위는 2% 또는 5%입니다.
2차 시스템의 단계 응답에서의 정착 시간은 아래 그림과 같습니다.
정착 시간 공식
정착 시간은 시스템의 고유 주파수와 응답에 따라 달라집니다. 정착 시간의 일반적인 방정식은 다음과 같습니다.
2차 시스템의 단위 계단 응답은 다음과 같이 표현됩니다.
이 방정식은 두 부분으로 나뉩니다.
안정 시간을 계산하려면 지수 성분만 필요합니다. 이것은 사인 성분의 진동 부분을 상쇄시키기 때문입니다. 그리고 허용 오차 비율은 지수 성분과 같습니다.
정착 시간 계산 방법
정착 시간을 계산하려면 단위 계단 응답을 가진 일차 시스템을 고려합니다.
단위 계단 응답의 경우,
따라서,
이제 A1과 A2의 값을 계산해보겠습니다.
s = 0으로 가정합니다.
s = -1/T로 가정합니다.
2% 오차를 위해 1-C(t) = 0.02;
이 방정식은 단위 계단 입력을 가진 1차 시스템의 정착 시간을 제공합니다.
2차 시스템의 경우, 아래의 방정식을 고려해야 합니다.
이 방정식에서 지수 항은 정착 시간 값을 찾는데 중요합니다.
이제 2% 오차를 고려합니다. 따라서, 1 – C(t) = 0.02;
감쇠비 (ξ)의 값은 2차 시스템의 유형에 따라 달라집니다. 여기서는 과도감쇠 2차 시스템을 고려합니다. 그리고 ξ의 값은 0과 1 사이에 있습니다.
따라서 위 식의 분모는 거의 1과 같습니다. 간단한 계산을 위해 이를 무시할 수 있습니다.
이 방정식은 2% 오차 범위와 과도하게 감쇠되지 않은 2차 시스템에만 사용할 수 있습니다.
마찬가지로, 5% 오차 범위에서는 1 – C(t) = 0.05입니다.
두 번째 차수 시스템의 정착 시간을 찾기 전에 감쇠 비율을 계산해야 합니다.
이차 시스템 |
감쇠 비율 (ξ) |
설정 시간 (TS) |
과도 감쇠 |
0<ξ<1 |
|
무감쇠 |
ξ = 0 |
|
임계 감쇠 |
ξ = 1 |
|
과감쇠 |
ξ > 1 |
지배 극에 따라 달라짐 |
루트 로커스 정착 시간
정착 시간은 루트 로커스 방법을 통해 계산할 수 있습니다. 정착 시간은 감쇠 비율과 고유 주파수에 따라 달라집니다.
이러한 값들은 루트 로커스 방법을 통해 도출할 수 있으며, 이를 통해 정착 시간을 찾을 수 있습니다.
예제를 통해 이해해봅시다.
그리고 오버슈트는 20%입니다.
루트 로커스 플롯에서 주요 극을 찾을 수 있습니다.
이제 ξ와 ωn의 값을 얻었습니다,
루트 로커스 플롯은 MATLAB에서 도출됩니다. 이를 위해 "sisotool"을 사용합니다. 여기서는 20%의 과도응답률 제약 조건을 추가할 수 있으며, 주요 극점을 쉽게 얻을 수 있습니다.
아래 그림은 MATLAB에서 도출된 루트 로커스 플롯입니다.
MATLAB을 이용하여 정착 시간을 찾을 수 있습니다. 이 시스템의 단위 계단 응답은 아래 그림과 같습니다.
정착 시간 줄이기
정착 시간은 목표를 달성하는 데 필요한 시간입니다. 어떤 제어 시스템에서도 정착 시간은 최소로 유지되어야 합니다.
정착 시간을 줄이는 것은 쉬운 작업이 아닙니다. 정착 시간을 줄이기 위해 컨트롤러를 설계해야 합니다.
우리가 알다시피, 비례(P), 적분(I), 미분(D) 세 가지 컨트롤러가 있습니다. 이러한 컨트롤러들의 조합으로 시스템 요구 사항을 충족할 수 있습니다.
컨트롤러의 이득(KP, KI, KD)는 시스템 요구 사항에 따라 선택됩니다.
비례 이득 KP를 증가시키면 정착 시간에 작은 변화가 생깁니다. 적분 이득 KI를 증가시키면 정착 시간이 증가합니다. 그리고 미분 이득 KD를 증가시키면 정착 시간이 감소합니다.
따라서, 미분 이득이 증가하여 설정 시간을 줄입니다. PID 제어기의 이득 값을 선택할 때, 상승 시간, 오버슈트, 정상 상태 오차와 같은 다른 요소에도 영향을 미칠 수 있습니다.
MATLAB에서 안정 시간 찾기
MATLAB에서는 스텝 함수를 사용하여 안정 시간을 찾을 수 있습니다. 예제를 통해 이해해 보겠습니다.
먼저, 방정식으로 안정 시간을 계산합니다. 이를 위해 이 전달 함수를 2차 시스템의 일반적인 전달 함수와 비교합니다.
따라서,
이 값은 방정식을 계산할 때 가정을 사용했기 때문에 근사값입니다. 그러나 MATLAB에서는 정확한 안정화 시간 값을 얻을 수 있습니다. 따라서 두 경우에서 이 값은 약간 다를 수 있습니다.
이제 MATLAB에서 안정화 시간을 계산하기 위해 step 함수를 사용합니다.
clc; clear all; close all;
num = [0 0 25];
den = [1 6 25];
t = 0:0.005:5;
sys = tf(num,den);
F = step(sys,t);
H = stepinfo(F,t)
step(sys,t);
Output:
H =
RiseTime: 0.3708
SettlingTime: 1.1886
SettlingMin: 0.9071
SettlingMax: 1.0948
Overshoot: 9.4780
Undershoot: 0
Peak: 1.0948
PeakTime: 0.7850
그리고 아래 그림과 같이 응답 그래프를 얻게 됩니다.
MATLAB에서는 기본적으로 오차 밴드가 2%로 설정되어 있습니다. 다른 오차 밴드를 사용하려면 그래프에서 오른쪽 클릭 > 속성 > 옵션 > "___ % 내에서 안정화 시간 표시"를 선택하세요.
루프를 실행하여 정착 시간을 찾는 또 다른 방법입니다. 2% 오차 범위에서 반응은 0.98에서 1.02 사이로 고려합니다.
clc; clear all; close all;
num = [0 0 25];
den = [1 6 25];
t = 0:0.005:5;
[y,x,t] = step(num,den,t);
S = 1001;
while y(S)>0.98 & y(S)<1.02;
S=S-1;
end
settling_time = (S-1)*0.005
출력:
settling_time = 1.1886
제언: 원본을 존중하며 좋은 기사들은 공유할 가치가 있습니다. 저작권 침해가 있다면 삭제 요청을 해주세요.