재설정 포함 꺼짐 지연 타이머(Timer Off Delay with Reset, TOFR)

TOFR 명령어는 TimerEnable이 해제된 시간을 누산하는 비적산 타이머입니다.
아키텍처 및 안전 지원 세부 정보
이 표에는 이 명령어를 지원하는 컨트롤러 및 응용 프로그램이 나와 있습니다.
아키텍처
표준 응용 프로그램
안전 응용 프로그램
CompactLogix 5370, ControlLogix 5570, Compact GuardLogix 5370, GuardLogix 5570
예
아니요
CompactLogix 5380, ControlLogix 5580, Compact GuardLogix 5380, GuardLogix 5580, ControlLogix 5590
예
예
사용 가능한 언어
래더 다이어그램
이 명령어는 래더 다이어그램에 사용할 수 없습니다.
펑션 블록
구조화된 텍스트
TOFR(TOFR_tag)
피연산자
구조화된 텍스트
변수
유형
형식
설명
TOFR 태그
FBD_TIMER
구조
TOFR 구조
스트럭처드 텍스트 내 식의 구문에 대한 자세한 내용은 구조화된 텍스트 구문 항목을 참조하십시오.
펑션 블록
피연산자
유형
형식
설명
TOFR tag
FBD_TIMER
구조
TOFR 구조
FBD_TIMER 구조
입력 파라미터
데이터 유형
설명
EnableIn
BOOL
선택하지 않으면 명령이 실행되지 않고 출력이 업데이트되지 않습니다. 설정하면 명령어가 실행됩니다.
기본값은 설정 상태입니다.
TimerEnable
BOOL
해제된 경우 타이머가 실행되어 시간이 누산됩니다.
기본값은 해제 상태입니다.
PRE
DINT
타이머 사전 설정 값. 타이밍이 완료되기 전 ACC가 도달해야 하는 1밀리초 단위의 값입니다. 유효하지 않을 경우 명령어에서 Status에 해당하는 비트를 설정하고 타이머가 실행되지 않습니다.
유효값 = 0~최대 양수
Reset
BOOL
타이머 리셋 요청. 설정된 경우 타이머가 리셋됩니다.
기본값은 해제 상태입니다.
Reset 입력 파라미터가 설정된 경우 명령어에 의해 EN, TT, DN이 해제되고 ACC = PRE로 설정됩니다. TOF 명령어 실행 후 RES 명령어를 사용하는 것과 다릅니다.
출력 매개 변수
데이터 유형
설명
EnableOut
BOOL
명령어에 의해 유효한 결과가 산출됩니다.
ACC
BOOL
밀리초 단위 누산 시간.
EN
BOOL
타이머 활성화 출력. 타이머 명령어가 활성화되었음을 나타냅니다.
TT
BOOL
타이머 타이밍 출력. 설정되면 타이밍 작업이 진행 중입니다.
DN
BOOL
타이밍 완료 출력. 누산 시간이 사전 설정 값 이상임을 나타냅니다.
Status
DINT
펑션 블록의 상태.
InstructFault (Status.0)
BOOL
명령어에서 다음 실행 에러 중 하나가 감지됩니다. 마이너 또는 메이저 컨트롤러 에러가 아닙니다. 나머지 상태 비트를 확인하여 발생한 에러를 판단합니다.
PresetInv (Status.1)
BOOL
사전 설정 값이 유효하지 않습니다.
설명
참인 경우 TOFR 명령어에 의해 다음 시점까지 시간이 누산됩니다.
  • TOFR 명령어가 비활성화됨
    • ACC가 PRE보다 크거나 같음
시간 기준은 항상 1밀리초입니다. 예를 들어 2초 타이머의 경우 PRE 값으로 2000을 입력합니다.
명령어를 재설정하려면 재설정 입력 매개 변수를 설정합니다. Reset이 참일 때 TimerEnable이 거짓인 경우 Reset이 거짓으로 될 때 TOFR 명령어에서 다시 타이밍을 시작하지 않습니다.
타이머 실행 방식
타이머는 현재 시간에서 타이머의 마지막 스캔 시간을 빼는 식으로 실행됩니다.
ACC = ACC + (current_time - last_time_scanned)
ACC를 업데이트한 후에 타이머는 last_time_scanned = current_time으로 설정됩니다. 다음 스캔에 대비하여 준비됩니다.
중요: 타이머가 실행되는 동안 최소한 69분마다 타이머를 스캔해야 합니다. 그렇지 않을 경우 ACC 값이 정확하지 않습니다.
last_time_scanned 값의 범위는 최대 69분입니다. 69분 이내에 타이머를 스캔하지 않을 경우 타이머 계산이 종료됩니다. 이 경우 ACC 값이 정확하지 않습니다.
다음에서 타이머를 설정한 경우 타이머가 실행되는 동안 69분 이내에 타이머를 스캔합니다.
  • 서브루틴
  • JMP 및 LBL 명령어 간 코드 섹션
  • 순차 함수 차트(Sequential Function Chart, SFC)
  • 이벤트 또는 주기 태스크
  • 단계 상태 루틴
연산 상태 플래그에 영향
아니요
주 폴트/부 폴트
이 명령어에만 해당되는 것은 없습니다. 에서 피연산자 관련 폴트를 참조하십시오.
실행
펑션 블록
조건/상태
수행한 작업
사전 스캔
EnableIn 및 EnableOut 비트가 거짓으로 해제됩니다.
Tag. EnableIn이 거짓임
EnableIn 및 EnableOut 비트가 거짓으로 해제됩니다.
Tag. EnableIn이 참임
EnableIn 및 EnableOut 비트가 참으로 설정됩니다.
명령어의 주 알고리즘이 실행되고 출력이 업데이트됩니다.
명령어 최초 실행
N/A
명령어 최초 스캔
EN, TT, DN이 해제되고 ACC 값이 수정되지 않습니다.
재설정
Reset 입력 파라미터가 설정된 경우 명령어에 의해 EN, TT, DN이 해제되고 ACC = PRE로 설정됩니다. (이는 TOF 명령어에 RES 명령어를 사용하는 것과는 다릅니다.)
사후 스캔
EnableIn 및 EnableOut 비트가 거짓으로 해제됩니다.
구조화된 텍스트
구조화된 텍스트에서 정상 스캔 중에 EnableIn은 항상 참입니다. 명령어가 로직에서 활성화한 제어 경로에 있는 경우 해당 명령어가 실행됩니다.
조건/상태
수행한 작업
사전 스캔
펑션 블록 표의 사전 스캔을 참조하십시오.
정상 실행
펑션 블록 표에서 Tag.EnableIn이 참임을 참조하십시오.
사후 스캔
펑션 블록 표에서 사후 스캔을 참조하십시오.
예
limit_switch1이 해제된 후 스캔할 때마다 TOFR 명령어는 ACC 값이 PRE 값에 도달할 때까지 경과된 시간만큼 ACC 값을 증가시킵니다. ACC PRE일 경우 DN 파라미터가 해제되고 timer_state2가 설정됩니다.
펑션 블록
구조화된 텍스트
TOFR_01.PRE := 500;
TOFR_01.Reset := Reset;
TOFR_01.TimerEnable := Input;
TOFR(TOFR_01);
timer_state := TOFR_01.DN;
의견을 작성 부탁드립니다.
이 자료에 대한 문의사항이나 요청사항이 있습니까? 여기에 요청사항을 작성 부탁드립니다.
Normal