주요 콘텐츠

연속시간 시스템과 이산시간 시스템 간 변환하기

연속/이산 변환에 사용 가능한 명령

명령 c2d, d2c, d2d는 각각 연속에서 이산, 이산에서 연속, 이산에서 이산(리샘플링) 변환을 수행합니다.

sysd = c2d(sysc,Ts)  % Discretization w/ sample period Ts
sysc = d2c(sysd)     % Equivalent continuous-time model
sysd1= d2d(sysd,Ts)  % Resampling at the period Ts

연속/이산 변환에 사용 가능한 방법

영차 유지(디폴트 값), 일차 유지, 사전 워핑을 사용하거나 사용하지 않은 Tustin 근사, 영점-극점 대응 등의 다양한 이산화/보간 방법이 있습니다. 예를 들어, 다음과 같습니다.

sysd = c2d(sysc,Ts,'foh')   % Uses first-order hold
sysc = d2c(sysd,'tustin')   % Uses Tustin approximation

이산 DC 모터 모델 디지털화하기

c2d 함수를 사용하고 적절한 샘플 시간을 선택하여 DC 모터 플랜트를 디지털화할 수 있습니다. 적절한 샘플 시간을 선택하는 데는 달성하려는 성능, 시스템의 가장 빠른 시정수, 제어기 실행 속도 등 여러 요인이 고려됩니다. 이 예제에서는 시정수를 0.01초로 선택하겠습니다. SS 객체 sys_dc의 생성은 SISO 예제: DC 모터 항목을 참조하십시오.

Ts=0.01;
sysd=c2d(sys_dc,Ts)
 
a = 
                        x1           x2
           x1      0.96079  -0.00027976
           x2     0.006994      0.90484
 
 
b = 
                        u1
           x1     0.019605
           x2  7.1595e-005
 
 

c = 
                        x1           x2
           y1            0            1
 
 
d = 
                        u1
           y1            0
 
Sample time: 0.01
Discrete-time model.

디지털 DC 모터에 대한 이산시간 영점-극점 이득을 확인하려면 zpk를 사용하여 모델을 변환하십시오.

fd=zpk(sysd)
 
Zero/pole/gain:
7.1595e-005 (z+0.9544)
------------------------
 (z-0.9608) (z-0.9049)
 
Sample time: 0.01

다음을 입력하여 sys_dc와 sysd의 계단 응답을 비교할 수 있습니다.

step(sys_dc,sysd)
다음 Figure가 결과를 보여줍니다.

계단 응답이 일치하는 것을 볼 수 있습니다. 내부 지연이 없는 모델의 경우 연속 계단 응답과 FOH 이산화된 계단 응답이 일치합니다.