Main Content

Transport Delay

주어진 시간만큼 입력 지연

  • Transport Delay block

라이브러리:
Simulink / Continuous

설명

Transport Delay 블록은 입력을 지정된 시간만큼 지연합니다. 이 블록을 사용하여 시간 지연을 시뮬레이션할 수 있습니다. 이 블록에 대한 입력은 연속 신호여야 합니다.

시뮬레이션 시작 시 블록은 시뮬레이션 시간이 시간 지연 파라미터를 초과할 때까지 초기 출력 파라미터를 출력합니다. 그런 다음 블록은 지연된 입력을 생성하기 시작합니다. 시뮬레이션 동안 블록은 버퍼에 입력 점과 시뮬레이션 시간을 저장합니다. 이 크기는 초기 버퍼 크기 파라미터로 지정할 수 있습니다.

저장된 입력값의 시간과 일치하지 않는 시간에 출력하려는 경우에는 블록은 점 사이를 선형 보간합니다. 지연이 스텝 크기보다 작은 경우 블록은 마지막 출력 점에서 외삽하며 이 경우 부정확한 결과가 생성될 수 있습니다. 블록에는 직접 피드스루가 없으므로 현재 입력을 사용하여 출력값을 계산할 수 없습니다. 예를 들어, 스텝 크기가 1이고 현재 시간이 t = 5인 고정 스텝 시뮬레이션이 있다고 가정해 보겠습니다. 지연이 0.5이면 블록은 t = 4.5에서 점을 생성해야 합니다. 가장 최근에 저장된 시간 값이 t = 4이므로 블록은 순방향 외삽을 수행합니다.

Transport Delay 블록은 이산 신호를 보간하지 않습니다. 대신, 블록은 필요한 시간에 이산 값을 반환합니다.

이 블록은 샘플 적중에 대해서만 출력을 지연하고 유지하는 Unit Delay 블록과 다릅니다.

Transport Delay 블록을 포함하는 모델을 선형화하기 위해 linmod를 사용하지 마십시오. 자세한 내용은 모델 선형화하기 항목을 참조하십시오.

포트

입력

모두 확장

지연할 입력 신호로, 스칼라, 벡터 또는 행렬로 지정됩니다.

이 포트는 시간 지연 파라미터 값이 0인 경우 직접 피드스루를 갖습니다. Transport Delay 블록의 시간 지연 파라미터는 런타임 때 조정이 가능하기 때문에 이 포트가 항상 직접 피드스루를 갖는 것처럼 이 처리됩니다.

데이터형: double

출력

모두 확장

지정된 시간만큼 지연된 입력 신호입니다. 출력은 입력 신호와 동일한 차원과 데이터형을 가집니다.

데이터형: double

파라미터

모두 확장

출력에 전파하기 전에 입력 신호를 지연할 시뮬레이션 시간을 음이 아닌 스칼라, 벡터 또는 행렬로 지정합니다.

프로그래밍 방식의 사용법

블록 파라미터: DelayTime
유형: 문자형 벡터, string형
값: 음이 아닌 스칼라, 벡터 또는 행렬
디폴트 값: '1'

시뮬레이션 시간이 처음으로 시간 지연 입력을 초과할 때까지 블록이 생성하는 출력을 스칼라, 벡터 또는 행렬로 지정합니다.

제한 사항

이 블록의 초기 출력은 inf 또는 NaN일 수 없습니다.

시뮬레이션 실행 시간 중에는 Run-to-run tunable parameter를 변경할 수 없습니다. 그러나 시뮬레이션이 시작되기 전에 이 파라미터를 변경하면 액셀러레이터 또는 고속 액셀러레이터가 코드를 재생성하지 않습니다.

프로그래밍 방식의 사용법

블록 파라미터: InitialOutput
유형: 문자형 벡터, string형
값: 스칼라 | 벡터 | 행렬
디폴트 값: '0'

저장할 입력 점 개수에 대한 초기 메모리 할당을 정의합니다.

  • 입력 점 개수가 초기 버퍼 크기를 초과하면 블록은 추가 메모리를 할당합니다.

  • 시뮬레이션이 종료된 후 필요한 총 버퍼 크기가 메시지에 표시됩니다.

  • 메모리를 할당하면 시뮬레이션 속도가 느려지므로 시뮬레이션 속도가 문제가 되는 경우 이 값을 신중하게 선택하십시오.

  • 시간 지연이 긴 경우 이 블록은 특히 차원화된 입력에 대해 많은 양의 메모리를 사용할 수 있습니다.

프로그래밍 방식의 사용법

블록 파라미터: BufferSize
유형: 문자형 벡터, string형
값: 양의 정수 스칼라
디폴트 값: '1024'

고정 크기 버퍼를 사용하여 이전 시간 스텝의 입력 데이터를 저장하려면 이 체크박스를 선택하십시오.

초기 버퍼 크기 파라미터는 버퍼의 크기를 지정합니다. 버퍼가 가득 차면 새 데이터가 이미 버퍼에 있는 데이터를 대체합니다. Simulink®는 선형 외삽을 사용하여 버퍼에 없는 출력값을 추정합니다.

참고

Simulink Coder™ 라이선스가 있는 경우 이 체크박스를 선택하지 않아도 ERT 또는 GRT 코드 생성 시 고정 크기 버퍼가 사용됩니다.

  • 입력 데이터가 선형인 경우 이 체크박스를 선택하면 메모리를 절약할 수 있습니다.

  • 입력 데이터가 선형이 아닌 경우 이 체크박스를 선택하지 마십시오. 그렇게 하면 부정확한 결과를 얻을 수 있습니다.

프로그래밍 방식의 사용법

블록 파라미터: FixedBuffer
유형: 문자형 벡터, string형
값: 'off' | 'on'
디폴트 값: 'off'

선형화 및 트리밍 중에 블록이 입력을 출력하도록 함으로써 블록 모드가 직접 피드스루로 설정됩니다.

  • 이 체크박스를 선택하면 함수 linmod, dlinmod 또는 trim을 사용할 때 모델의 상태 순서가 변경될 수 있습니다. 이 새로운 상태 순서를 추출하려면 다음을 수행하십시오.

    1. 다음 명령을 사용하여 모델을 컴파일합니다. 여기서 model은 Simulink 모델의 이름입니다.

          [sizes, x0, x_str] = model([],[],[],'lincompile'); 
    2. 다음 명령을 사용하여 컴파일을 종료합니다.

        model([],[],[],'term'); 
  • Simulink 모델의 상태로 구성된 셀형 배열인 출력 인수 x_str에는 새로운 상태 순서가 포함됩니다. 상태로 구성된 벡터를 linmod, dlinmod 또는 trim 함수에 대한 입력으로 전달할 경우 상태 벡터는 이 새로운 상태 순서를 사용해야 합니다.

프로그래밍 방식의 사용법

블록 파라미터: TransDelayFeedthrough
유형: 문자형 벡터, string형
값: 'off' | 'on'
디폴트 값: 'off'

선형화 루틴에 대한 파데 근사의 차수를 음이 아닌 정수로 구성된 스칼라, 벡터 또는 행렬로 설정합니다.

  • 디폴트 값은 0입니다. 이 경우 동적 상태가 없는 단위 이득이 생성됩니다.

  • 차수를 양의 정수 n으로 설정하면 n개의 상태가 모델에 추가되지만, 결과적으로 전송 지연의 선형 모델이 더 정확해집니다.

프로그래밍 방식의 사용법

블록 파라미터: PadeOrder
유형: 문자형 벡터, string형
값: 스칼라 | 벡터 | 행렬
디폴트 값: '0'

블록 특성

데이터형

double

직접 피드스루

다차원 신호

아니요

가변 크기 신호

아니요

영점교차 검출

아니요

확장 기능

버전 내역

R2006a 이전에 개발됨

참고 항목

|

도움말 항목