Main Content

이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.

모델 레이트 변환

연속시간 모델과 이산시간 모델 간에 변환 및 라이브 편집기에서 모델 리샘플링

R2019b 이후

설명

모델 레이트 변환을 사용하여, 대화형 방식으로 연속시간 LTI 모델과 이산시간 LTI 모델 간에 변환할 수 있습니다. 또한 이를 사용하여 이산시간 모델을 리샘플링할 수도 있습니다. 이 작업은 라이브 스크립트에 대한 MATLAB® 코드를 자동으로 생성해 줍니다.

모델 레이트 변환 작업을 시작하려면 변환할 모델을 선택하십시오. 목표 샘플 시간, 변환 방법 및 기타 파라미터도 지정할 수 있습니다. 이 작업은 MATLAB 작업 공간에 변환된 모델을 생성해 주며, 변환 파라미터를 사용하여 실험할 때 원래 모델과 변환된 모델 간의 일치를 모니터링할 수 있도록 응답 플롯도 생성해 줄 수 있습니다.

관련 함수

모델 레이트 변환은 다음 함수를 사용하여 코드를 생성합니다.

Convert Model Rate task in Live Editor

작업 열기

MATLAB 편집기에서 모델 레이트 변환 작업을 라이브 스크립트에 추가하려면 다음을 수행하십시오.

  • 라이브 편집기 탭에서 작업 > 모델 레이트 변환을 선택합니다.

  • 스크립트의 코드 블록에 convert, rate, c2d 같은 관련 키워드를 입력합니다. 제안된 명령 완성 항목에서 모델 레이트 변환을 선택합니다.

예제

모두 확장

라이브 편집기에서 모델 레이트 변환 작업을 사용하여, 대화형 방식으로 연속시간 모델에서 이산시간 모델로 변환합니다. 다른 방법, 옵션, 응답 플롯을 사용해 보십시오. 작업은 선택 내용을 반영하여 코드를 자동으로 생성해 줍니다. 모델 레이트 변환 작업이 포함된 사전 구성된 스크립트를 보려면 이 예제를 여십시오.

연속시간 전달 함수 모델을 만듭니다.

G = tf([1 -50 300],[1 3 200 350]);

이 모델을 이산화하려면 라이브 편집기에서 모델 레이트 변환 작업을 엽니다. 라이브 편집기 탭에서 작업 > 모델 레이트 변환 을 선택합니다. 작업에서 G를 변환할 모델로 선택합니다.

작업은 디폴트 샘플 시간 0.2초와 디폴트 변환 방법 영차 유지(Zero-order hold)를 사용하여 모델을 자동으로 이산화해 줍니다. 또한 원래 모델과 변환된 모델의 응답을 비교할 수 있는 보드 플롯도 생성해 줍니다.

플롯의 세로선은 디폴트 샘플 시간과 관련된 나이퀴스트 주파수를 나타냅니다. 샘플 시간 0.15초를 사용한다고 가정하겠습니다. 샘플 시간 필드에 새 값을 입력하여 샘플 시간을 변경합니다. 응답 플롯이 새 샘플 시간을 반영하도록 자동으로 업데이트됩니다.

공명의 정확한 동특성이 중요한 응용 분야의 경우 다른 변환 방법을 사용하여 주파수 영역 일치율을 향상시킬 수 있습니다. 이 작업에서 다른 방법을 실험해 보고 응답 플롯에 미치는 영향을 살펴봅니다.

Tustin 방법은 디폴트 영차 유지 방법보다 주파수 영역에서 더 나은 일치율을 나타낼 수 있습니다. (Continuous-Discrete Conversion Methods 항목 참조.) 변환 방법 선택에서 쌍선형(Tustin) 근사(Bilinear (Tustin) approximation)를 선택합니다. 처음에는 결과로 생성되는 주파수 영역 일치율이 영차 유지 방법보다 떨어집니다.

사전 워핑 주파수를 사용하여 일치율을 향상시킬 수 있습니다. 이 옵션을 사용하면 지정한 주파수에서 이산시간 응답이 강제로 일치하게 됩니다. G의 공명은 약 14rad/s에서 최대치를 기록합니다. 사전 워핑 주파수에 이 값을 입력합니다. 공명 주변의 일치율이 개선됩니다. 하지만 샘플 시간 0.15초에서는 공명이 나이퀴스트 주파수에 상당히 가깝기 때문에, 일치율 개선이 제한적입니다.

모델 레이트 변환 작업은 다른 유형의 응답 플롯을 생성할 수 있습니다. 예를 들어 원래 모델과 변환된 모델의 시간 영역 응답을 비교하려면 출력 플롯에서 계단(step) 또는 임펄스(impulse)를 선택하십시오.

이 작업은 라이브 스크립트에 코드를 생성해 줍니다. 생성 코드에는 선택한 파라미터 및 옵션이 반영되며, 지정한 응답 플롯을 생성하기 위한 코드가 포함되어 있습니다. 생성 코드를 보려면 작업 파라미터 영역의 맨 아래에 있는 코드 표시를 클릭하십시오. 작업이 확장되면서 생성 코드가 표시됩니다.

기본적으로 생성 코드는 변환된 모델인 sysConverted를 출력 변수의 이름으로 사용합니다. 다른 출력 변수 이름을 지정하려면, 해당하는 새 이름을 작업 맨 위에 있는 요약 라인에 입력하십시오. 예를 들어 이름을 sys_d로 변경해 보겠습니다.

새 변수 이름을 반영하도록 작업이 생성 코드를 업데이트하고, 새로 변환된 모델 sys_d가 MATLAB 작업 공간에 표시됩니다. 여타의 모델 객체와 같은 방식으로 이 모델을 사용하여 추가 분석 또는 제어 설계를 수행할 수 있습니다. 예를 들어, 변환된 시스템의 응답을 구형파 입력으로 시뮬레이션해 보겠습니다. 작업에 지정된 샘플 시간을 사용합니다.

[u,t] = gensig('square',4,10,0.15);
lsim(sys_d,u,t)

파라미터

모두 확장

LTI 모델을 선택합니다. 목록에는 다음을 포함하여 MATLAB 작업 공간에 있는 적합한 연속시간 또는 이산시간 동적 시스템 모델이 모두 포함되어 있습니다.

  • 수치적 LTI 모델(예: tf, ss 또는 zpk 모델).

  • 식별된 LTI 모델(예: idssidtf). (식별된 모델을 사용하려면 System Identification Toolbox™ 라이선스가 필요합니다.)

SISO 모델 또는 MIMO 모델은 시간 지연을 포함하거나 포함하지 않고 변환할 수 있습니다. 단, 일부 변환 방법은 SISO 모델에만 사용 가능합니다(방법 파라미터 설명 참조). genss 또는 uss 같은 일반화된 LTI 모델, frd 같은 주파수 응답 데이터 모델 또는 공정 모델(idproc)은 모델 레이트 변환을 사용하여 변환할 수 없습니다.

변환된 모델의 샘플 시간을 1/TimeUnit 단위로 지정합니다. 여기서 TimeUnit은 입력 모델의 TimeUnit 속성입니다.

  • 연속시간 모델을 이산화하거나 이산시간 모델을 리샘플링하려면 목표 샘플 시간을 입력하십시오.

  • 이산시간 모델을 연속시간 모델로 변환하려면 0을 입력하십시오.

레이트 변환 방법을 선택합니다. 사용 가능한 방법은 다음과 같습니다.

  • 영차 유지

  • 일차 유지

  • 임펄스 불변 이산화(SISO 모델을 연속시간 모델에서 이산시간 모델로 변환하는 경우에만 해당)

  • 쌍선형(Tustin) 근사

  • 영점-극점 대응 방법

  • 최소제곱 방법(SISO 모델을 연속시간 모델에서 이산시간 모델로 변환하는 경우에만 해당)

변환 방법 선택에 대한 자세한 내용은 Continuous-Discrete Conversion Methods 항목을 참조하십시오.

시간 지연이 있는 모델의 레이트를 변환할 경우 쌍선형(Tustin) 근사 방법 또는 영점-극점 대응 방법은 시간 지연을 샘플 시간의 가장 가까운 정수 배수로 반올림합니다. 이러한 반올림으로 인해 동특성의 정확도가 떨어질 수 있으며, 나이퀴스트 주파수 주변에서 특히 그렇습니다.

반올림 대신 Thiran 필터를 사용하여 모델 레이트 변환에서 지연의 소수부를 근사하려면 지연 차수를 0이 아닌 정수로 설정하십시오. 응용 분야에 충분히 정확한 레이트 변환 동특성을 생성하는 가장 작은 값을 사용합니다. Thiran 필터에 대한 자세한 내용은 thiran 항목을 참조하십시오.

연속시간 모델을 이산화할 때 시스템에 특정 주파수에서 레이트 변환 시 보존하려는 중요한 동특성이 있는 경우 주파수 사전 워핑과 함께 쌍선형(Tustin) 근사 방법을 사용할 수 있습니다. 이 방법을 사용하면 지정한 사전 워핑 주파수에서 원래 응답과 변환된 응답 간의 일치가 보장됩니다. Continuous-Discrete Conversion Methods 항목을 참조하십시오.

모델 레이트 변환은 응용 분야에 중요한 동특성이 유지되었는지 확인할 수 있는 응답 플롯을 자동으로 생성해 줍니다. 다음 응답 플롯 유형 중 하나를 지정하여, 변환 파라미터로 실험할 때 원래 모델과 변환된 모델의 응답을 비교할 수 있습니다.

  • 보드

  • 계단

  • 임펄스

  • 극점-영점

작업을 통해 생성된 코드에는 선택한 응답 플롯을 생성하는 코드가 포함되어 있습니다. 응답 플롯을 생략하려면 없음을 선택하십시오.

버전 내역

R2019b에 개발됨

참고 항목

| |