주요 콘텐츠

Transport Delay

R2026b

주어진 시간만큼 입력 지연

  • 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 이전에 개발됨

참고 항목

|

도움말 항목