반응형
문제 : \( T(s)=300/(s^2+20s+300) \)에서 계단응답의 최종값과 정착시간을 계산하고, 최종값의 \(\pm2%\)인 상하한을 그려보자.
코드 :
clc; clear all, close all, t=[0:0.01:2];
nt=300; dt=[1 20 300]; syst=tf(nt,dt);
y=step(syst,t);
finalt=length(t); yss=y(finalt); % 계단응답의 최종값
for i=1:finalt
if y(i)>1.02*yss, ts=t(i);
elseif y(i)<0.98*yss, ts=t(i);
end
end
yss, ts
%정상상태 응답의 +-2%
yup=1.02*ones(finalt,1)*yss;
ydown=0.98*ones(finalt,1)*yss;
plot(t,y,t,ydown,'--',t,yup,'--')
xlabel('time[sec]')
ylabel('y(t)'), title('Step Response')
그래프
- yss가 최종값, ts가 정착시간이다.
- 정착시간은 최종값의 2%이내에 도달하는 시간이다.
반응형
'Matlab' 카테고리의 다른 글
Matlab 실습 6. if, else, switch를 이용한 짝수 홀수 판별 (0) | 2022.12.24 |
---|---|
Matlab 실습 5. Bode 선도, 대역폭 (0) | 2022.12.24 |
Matlab 실습 3. 구간별로 다른 함수의 그래프 (0) | 2022.12.24 |
Matlab 실습 2. 함수 (0) | 2022.12.24 |
Matlab 실습 1. Step function (0) | 2022.12.24 |
댓글