1 / 12

제어설계기법 실습 #9

제어설계기법 실습 #9. Digital Control System. 실험실습 #9 안내서. 실험실습 번호 : #9 실험실습 일시 : 2011. . . 담당교수 :  담당조교 : , . 목적 : Digital Control System 의 Matlab 해석 방법에대하여 익힘 제목 : Digital Control System 실습에 필요한 기초지식 : 슬라이드 유인물 참조 실습절차 : 슬라이드 유인물 참조. Matlab Discrete Commands.

veata
Download Presentation

제어설계기법 실습 #9

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 제어설계기법 실습 #9 Digital Control System

  2. 실험실습 #9 안내서 • 실험실습 번호 : #9 • 실험실습 일시: 2011. . . • 담당교수 :  • 담당조교 : ,  목적 : Digital Control System의Matlab해석 방법에대하여익힘 제목 : Digital Control System 실습에 필요한 기초지식 : 슬라이드 유인물 참조 실습절차 : 슬라이드 유인물 참조

  3. MatlabDiscrete Commands • Discrete Step Response >> [y, x] = dstep(a, b, c, d, ui, n) %ui: input channel specified >> [y, x] = dstep(num, den, n) %n : number of samples • Discretization >> [ad, bd] = c2d(a, b, ts) %ZOH discretization >> [ad, bd, cd, dd] = c2dm(a, b, c, d, ts, ‘method’) >> [numz, denz] = c2dm(num, den, ts, ‘method’)

  4. MatlabDiscrete Commands • Frequency Responses for Discrete Systems >> [mag, phase] = dbode(a, b, c, d, ts, ui, w) >> [mag, phase] = dbode(num, den, ts, w) • Time Responses for Discrete Systems >> stairs(y) or stairs(x, y) >> [xs, ys] = stairs(y) or stairs(x, y)

  5. Matlab제어공학 실습 >>nc=10; dc=[1 7 10]; ts=0.1; >>[n_zoh,d_zoh]=c2dm(nc,dc,ts) >>i=[0:35]'; time=i*ts; >>yc=step(nc,dc,time); >>g_zoh=dstep(n_zoh,d_zoh,36); >>stairs(time,g_zoh), hold, plot(time,yc), grid

  6. Matlab제어공학 실습 • 다음과 같은 이산 시간 시스템을 생각해 보자. • 위의 그림은 아래와 같은 discrete-time 방정식으로 표현 가능하다. m(k) = e(k) – e(k-1) – m(k-1), k ≥0

  7. Matlab제어공학 실습 • MATLAB 프로그램을 이용하면, 0≤ k ≤20 사이의 m(k)를구할 수 있다. mkminus1 = 0; ekminus1=0; ek = 1; for k=0:20; mk = ek – ekminus1 – mkminus1; [k, mk]; mkminus1 = mk; ekminus1 = ek; ek = 1 – ek; end; • 실습 #1: 위에서 구한 결과를 plot 해보고, 몇 지점에서 예상결과와 비교하시오.

  8. Matlab제어공학 실습 • 시스템을 해석하는 방법으로 아래의 MATLABcommand 를이용해보자. • 아래와 같은 discrete-time 방정식에 대해 고유치 (eigenvalue)를 구해보자. A= [0.8 1; 0 0.9]; [V,D]=eig(A); • [V,D]에서 각각의 의미를 알아보자.

  9. Matlab제어공학 실습 • 상태공간방정식과 전달함수는 아래의 MATLAB 함수를 이용하여 쉽게 상호변환이 가능하다. A = [1.35 0.55; -0.45 0.35]; B = [0.5; 0.5]; C = [1 -1]; D = 0; [n, d] = ss2tf(A, B, C, D); • 또한 tf2ss, tf2zp, zp2tf 에 대하여 살펴보고, 결과를 확인해보자.

  10. Matlab제어공학 실습 • 아래와같은 이산 방정식의 출력을 MATLAB을 이용하여 직접 구해보자. • MATLABProgram A = [0 1; -2 -3]; B = [0 ; 1]; C=[3 1]; x=[0; 0]; u=1; for k = 0:5, x1=A*x + B*u; y = C*x x=x1; end;

  11. Matlab제어공학 실습 • 아래와 같이 주어진전달함수에 대해 • 실습 #2: (a) 상태공간방정식을 구하시오. (tf2ss 이용) (b) (a)에서 구한 상태공간방정식을 이용하여, y(k), 0≤ k ≤20의값을 구하시오.

  12. Matlab제어공학 실습 • Inverse z-변환을 구하기 위해 부분분수로 주어진 전달함수를 바꾸고, 다시 MATLAB 을 이용하여 각각의 계수와 pole의 위치를 구하는 방법에 대해 알아보자. • 주어진 함수가 아래와 같을 때 Inverse z-변환을 이용하여 y(k)를 구해보자. • MATLAB 함수 residue를 참조할 것. num = [0 0 -3.894]; %윗 식의 분자를 z로 미리 나눈 결과임 den = [1 0 0.6065]; [r,p,k] = residue(num, den); • 실습 #3:위에서 구한 [r,p,k] 를 이용하여 y(k)를구하시오.

More Related