Main Content

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

Unit Delay

하나의 샘플 주기만큼 신호 지연

  • 라이브러리:
  • Simulink / Discrete

    HDL Coder / Discrete

  • Unit Delay block

설명

Unit Delay 블록은 사용자가 지정한 샘플 주기만큼 자신의 입력을 유지하고 지연합니다. Iterator Subsystem에 배치된 경우 이 블록은 한 번 반복하는 동안 자신의 입력을 유지하고 지연합니다. 이 블록은 z-1 이산시간 연산자와 동일합니다. 이 블록은 하나의 입력을 받아 하나의 출력을 생성합니다. 각 신호는 스칼라 또는 벡터일 수 있습니다. 입력값이 벡터인 경우 블록은 동일한 샘플 주기만큼 벡터의 모든 요소를 유지하고 지연합니다.

초기 조건 파라미터를 사용하여 첫 번째 샘플링 주기에 대한 블록 출력을 지정합니다. 이 파라미터를 신중하게 선택하면 원치 않는 출력 동작을 최소화할 수 있습니다. 샘플 시간 파라미터를 사용하여 샘플 간의 시간을 지정합니다. 설정값이 -1이면 블록이 샘플 시간을 상속한다는 의미입니다.

참고

Unit Delay 블록을 사용하여 다른 샘플 레이트에서 동작하는 블록 간에 천이를 생성하면 블록에서 오류가 발생합니다. 대신 Rate Transition 블록을 사용하십시오.

유사한 블록 간의 비교

Memory, Unit Delay, Zero-Order Hold 블록은 비슷한 기능을 제공하지만 각각 다른 기능을 가지고 있습니다. 또한, 각 블록의 용도도 다릅니다.

이 표에는 각 블록에 권장되는 사용법이 나와 있습니다.

블록블록의 용도참조 예제
Unit Delay사용자가 지정한 이산 샘플 시간을 사용하여 지연을 구현합니다. 이 블록은 이산 샘플 시간을 사용하는 신호를 받고 출력합니다.
Memory하나의 주 적분 시간 스텝만큼 지연을 구현합니다. 블록이 연속(또는 보조 시간 스텝에서 고정) 신호를 받고 보조 시간 스텝에서 고정 신호를 출력하는 것이 이상적입니다.
Zero-Order Hold연속 샘플 시간을 갖는 입력 신호를 이산 샘플 시간을 갖는 출력 신호로 변환합니다.

각 블록에는 다음과 같은 기능이 있습니다.

기능MemoryUnit DelayZero-Order Hold
초기 조건 지정아니요. 시간 t = 0에서의 블록 출력이 입력값과 일치해야 함.
샘플 시간 지정아니요. 블록은 전체 모델에 사용되는 구동 블록 또는 솔버의 샘플 시간만 상속할 수 있음.
프레임 기반 신호 지원아니요
상태 기록 지원아니요아니요

string형 지원

Unit Delay 블록은 0 또는 1의 지연 길이를 위해 구성되어 있거나 직접 피드스루를 위해 구성되어 있는 경우에만 string형을 받아 출력할 수 있습니다.

포트

입력

모두 확장

블록이 하나의 샘플 주기만큼 지연하는 입력 신호입니다.

데이터형: half | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | string | Boolean | fixed point | enumerated | bus

출력

모두 확장

하나의 샘플 주기만큼 지연되는 입력인 출력 신호입니다.

데이터형: half | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | string | Boolean | fixed point | enumerated | bus

파라미터

모두 확장

기본

첫 번째 샘플링 주기의 시뮬레이션 출력을 지정합니다. 그러지 않으면 샘플링 주기 동안 Unit Delay 블록의 출력이 정의되지 않습니다.

프로그래밍 방식의 사용법

블록 파라미터: InitialCondition
유형: 문자형 벡터
: 스칼라 | 벡터
디폴트 값: '0'

블록이 샘플 기반 처리를 수행할지 아니면 프레임 기반 처리를 수행할지 지정합니다.

  • 열을 채널로(프레임 기반) — 입력의 각 열을 별도의 채널로 처리합니다(프레임 기반 처리).

    참고

    프레임 기반 처리를 수행하려면 DSP System Toolbox™ 라이선스가 필요합니다.

    자세한 내용은 Sample- and Frame-Based Concepts (DSP System Toolbox) 항목을 참조하십시오.

  • 요소를 채널로(샘플 기반) — 입력의 각 요소를 별도의 채널로 처리합니다(샘플 기반 처리).

입력 처리를 사용하여 블록이 샘플 기반 처리를 수행할지 아니면 프레임 기반 처리를 수행할지 지정합니다. 이 두 가지 처리 모드에 대한 자세한 내용은 Sample- and Frame-Based Concepts (DSP System Toolbox) 항목을 참조하십시오.

프로그래밍 방식의 사용법

블록 파라미터: InputProcessing
유형: 문자형 벡터
: 'Columns as channels (frame based)' | 'Elements as channels (sample based)'
디폴트 값: 'Elements as channels (sample based)'

샘플 시간 적중 사이의 이산 구간을 입력하거나 -1을 지정하여 샘플 시간을 상속합니다.

샘플 시간 지정하기 항목도 참조하십시오.

프로그래밍 방식의 사용법

블록 파라미터: SampleTime
유형: 문자형 벡터
: 실수형 스칼라
디폴트 값: '-1'

상태 특성

블록 상태에 고유한 이름을 할당하려면 이 파라미터를 사용하십시오. 디폴트 값은 ' '입니다. 이 필드가 공백이면 할당할 이름이 없는 것입니다. 이 파라미터를 사용할 때 다음 사항을 고려하십시오.

  • 유효한 식별자는 영문자 또는 밑줄 문자로 시작하며 그 뒤에 영숫자 또는 밑줄 문자가 이어집니다.

  • 상태 이름은 선택된 블록에만 적용됩니다.

사용자가 적용을 클릭하면 이 파라미터는 상태 이름과 Simulink의 Signal 객체 사이에 연결이 맺어져야 함을 활성화합니다.

자세한 내용은 C Code Generation Configuration for Model Interface Elements (Simulink Coder) 항목을 참조하십시오.

프로그래밍 방식의 사용법

블록 파라미터: StateName
유형: 문자형 벡터
값: 고유 이름
디폴트 값: ''

상태 이름이 Simulink의 Signal 객체로 연결이 맺어져야 하는지 여부를 지정합니다. 이 설정이 선택되면 Simulink의 Signal 객체 이름과 일치하지 않는 상태 이름이 지정되는 경우 런타임 오류가 발생합니다.

종속성

파라미터 상태 이름에 값을 제공하고 모델 구성 파라미터 신호 연결 맺기안 함 이외의 값으로 설정하면 활성화됩니다.

이 체크박스를 선택하면 코드 생성 스토리지 클래스가 비활성화됩니다.

프로그래밍 방식의 사용법

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

블록 특성

데이터형

Boolean | bus | double | enumerated | fixed point | half | integer | single | string

직접 피드스루

yes

다차원 신호

yes

가변 크기 신호

yes

영점교차 검출

no

확장 기능

PLC 코드 생성
Simulink® PLC Coder™를 사용하여 Structured Text 코드를 생성할 수 있습니다.

고정소수점 변환
Fixed-Point Designer™를 사용하여 고정소수점 시스템을 설계하고 시뮬레이션할 수 있습니다.

버전 내역

R2006a 이전에 개발됨

참고 항목

|