꺼짐 지연 타이머(Timer Off Delay, TOF)
이 정보는
CompactLogix
5370, ControlLogix
5570, Compact GuardLogix
5370, GuardLogix
5570, Compact GuardLogix
5380, CompactLogix
5380, ControlLogix
5580, GuardLogix
5580 및 ControlLogix 5590 컨트롤러에 적용됩니다.TOF 명령어는 명령어가 활성화되는 시간을 누산하는 비적산 타이머입니다(렁-입력-조건이 거짓임).
사용 가능한 언어
래더 다이어그램

펑션 블록
이 명령어는 함수 블록에서 사용할 수 없습니다.
구조화된 텍스트
이 명령어는 구조화된 텍스트에서 사용할 수 없습니다.
피연산자
중요:
다음과 같은 경우 작업 시 예외가 발생할 수 있습니다.
- 출력 태그 피연산자가 덮어써집니다.
- 구조 피연산자의 구성원이 덮어써집니다.
- 지정된 경우를 제외하고 여러 명령어에서 구조 피연산자를 공유합니다.
래더 다이어그램
피연산자 | 데이터 유형 | 형식 | 설명 |
|---|---|---|---|
Timer | TIMER | 태그 | 타이머 구조 |
Preset | DINT | 즉시 | Timer.PRE 값 |
Accum | DINT | 즉시 | Timer.ACC 값 |
피연산자 | CompactLogix 5380, ControlLogix 5580, Compact GuardLogix 5380, GuardLogix 5580 및 ControlLogix 5590 컨트롤러 데이터 유형 | 형식 | 설명 |
|---|---|---|---|
Timer | TIMER_T | 태그 | Timer_T 구조 |
Accum | TIME | 즉시 | Timer.ACC 값 |
Preset | TIME | 즉시 | Timer.PRE 값 |
Preset 및 Accum(타이머 태그의 .PRE 및 .ACC에 해당)은 의사 피연산자입니다. 자세한 내용은 의사 피연산자 초기화 항목을 참조하십시오.
TIMER 구조
니모닉 | 데이터 유형 | 설명 |
|---|---|---|
.EN | BOOL | 활성화 비트에는 명령어가 마지막으로 실행되었을 때 렁-입력-조건이 들어 있습니다. |
.TT | BOOL | 타이밍 비트는 설정된 경우 타이밍 작업이 진행 중임을 나타냅니다. |
.DN | BOOL | 완료 비트는 해제되면 타이밍 작업이 완료(또는 일시 중지)되었음을 나타냅니다. |
.PRE | DINT | 사전 설정 값으로 명령어가 완료된 것으로 나타나기 전에 누산 값이 도달해야 하는 값(1밀리초 단위)을 지정합니다. |
.ACC | DINT | 누산 값은 TOF 명령어가 활성화된 이후로 경과한 시간을 밀리초로 지정합니다. |
TIMER_T 구조
니모닉 | 데이터 유형 | 설명 |
|---|---|---|
.EN | BOOL | 활성화 비트에는 명령어가 마지막으로 실행되었을 때 렁-입력-조건이 들어 있습니다. |
.TT | BOOL | 타이밍 비트는 설정된 경우 타이밍 작업이 진행 중임을 나타냅니다. |
.DN | BOOL | 완료 비트는 설정된 경우 타이밍 작업이 완료(또는 일시 중지)되었음을 나타냅니다. |
.ACC | TIME | 누산 값은 명령어가 활성화된 이후 경과 시간을 마이크로초 단위로 지정합니다. |
.PRE | TIME | 사전 설정 값은 명령어가 완료되었음을 나타내기 위해 누산 값이 도달해야 하는 값을 마이크로초 단위로 지정합니다. |
설명
TOF 명령어는 다음 시점에 이르는 시간을 누산합니다.
- 타이머가 비활성화됨
- 타이머 완료
시간 기준은 항상 1밀리초입니다. 예를 들어 2초 타이머의 경우 .PRE 값으로 2000을 입력합니다.
타이머는 타이머가 완료할 때 .DN 비트를 거짓으로 해제합니다.
활성화되면 .DN 비트를 거짓으로 해제하여 타이밍을 일시 중지하고 .DN 비트를 참으로 설정하여 타이밍을 다시 시작할 수 있습니다.

타이머 실행 방식
타이머는 현재 시간에서 타이머의 마지막 스캔 시간을 빼는 식으로 실행됩니다.
ACC = ACC + (current_time - last_time_scanned)
ACC를 업데이트한 후에 타이머는 last_time_scanned = current_time으로 설정됩니다. 다음 스캔에 대비하여 준비됩니다.
연산 상태 플래그에 영향
아니요
주 폴트/부 폴트
메이저 폴트는 다음과 같은 경우에 발생합니다. | 폴트 유형 | 폴트 코드 |
|---|---|---|
.PRE < 0 | 4 | 34 |
.ACC < 0 | 4 | 34 |
배열 인덱스 폴트의 경우 항목을 참조하십시오.
실행
래더 다이어그램
조건/상태 | 수행한 작업 |
|---|---|
사전 스캔 | .EN 비트가 거짓으로 해제됩니다. .TT 비트가 거짓으로 해제됩니다. .DN 비트가 거짓으로 해제됩니다. .ACC 값이 .PRE 값과 일치하도록 설정됩니다. |
렁-입력-조건이 거짓임 | 렁-출력-조건을 렁-입력-조건으로 설정합니다. TOF 흐름도(거짓) 참조하십시오. |
렁-입력-조건이 참임 | 렁-출력-조건을 렁-입력-조건으로 설정합니다. .EN 비트가 참으로 설정됩니다. .TT 비트가 거짓으로 해제됩니다. .DN 비트가 참으로 설정됩니다. .ACC 값이 0으로 해제됩니다. |
사후 스캔 | .EN 비트가 거짓으로 해제됩니다. .TT 비트가 거짓으로 해제됩니다. .DN 비트가 거짓으로 해제됩니다. .ACC 값이 .PRE 값과 일치하도록 설정됩니다. |
TOF 흐름도(거짓)

예
래더 다이어그램

limit_switch_9가 해제되면 light_8이 180밀리초 동안 켜짐으로 됩니다(timer_2가 타이밍 중). timer_2.acc가 180에 도달할 때 light_8은 꺼짐으로, light_4는 켜짐으로 됩니다. TOF 명령어가 활성화될 때까지 Light_4는 계속 켜짐을 유지합니다. timer_2가 타이밍하는 동안 limit_switch_9가 참인 경우 light_8이 꺼짐으로 됩니다.

tglTest21이 해제되면 timing21
(TIMER_T 유형 포함)
이 20밀리초 + 100마이크로초(timer21이 타이밍 중) 동안 켜집니다. timer21.acc가 20밀리초 + 100마이크로초에 도달하면 timing21이 꺼지고 done21이 켜집니다. TOF 명령어가 활성화될 때까지 Done21은 계속 켜져 있습니다. timer21이 타이밍 중일 때 tglTest21이 참이면 timing21이 꺼집니다.의견을 작성 부탁드립니다.