이벤트 태스크 트리거(Trigger Event Task, EVENT)
이 정보는
CompactLogix
5370, ControlLogix
5570, Compact GuardLogix
5370, GuardLogix
5570, Compact GuardLogix
5380, CompactLogix
5380, ControlLogix
5580, GuardLogix
5580 및 ControlLogix 5590 컨트롤러에 적용됩니다.EVENT 명령어는 이벤트 태스크의 실행 한 개를 트리거합니다.
사용 가능한 언어
래더 다이어그램

펑션 블록
이 명령어는 함수 블록에서 사용할 수 없습니다.
구조화된 텍스트
EVENT(task_name);
피연산자
래더 다이어그램
피연산자 | 유형 | 형식 | 설명 |
Task | TASK | 이름 | 실행할 이벤트 태스크. 이벤트 태스크가 아닌 태스크를 지정하면 지정한 태스크는 실행되지 않습니다. |
구조화된 텍스트
피연산자 | 유형 | 형식 | 설명 |
Task | TASK | 이름 | 실행할 이벤트 태스크. 이벤트 태스크가 아닌 태스크를 지정하면 지정한 태스크는 실행되지 않습니다. |
스트럭쳐드 텍스트 내 식의 구문에 대한 자세한 내용은 스트럭쳐드 텍스트 구문을 참조하십시오.
설명
EVENT 명령어를 사용하여 이벤트 태스크를 프로그래밍 방식으로 실행합니다.
명령어가 실행할 때마다 지정된 이벤트 태스크를 트리거합니다.
이벤트 태스크를 다시 트리거하기 전에 실행을 완료하기에 충분한 시간을 부여해야 합니다. 그렇지 않으면 겹침이 발생합니다.
이벤트 태스크가 이미 실행하고 있는 동안 EVENT 명령어를 실행하면 컨트롤러는 중복 카운터를 증가시키지만 이벤트 태스크를 트리거하지 않습니다.
EVENT 명령어를 사용하면 모든 트리거 유형으로 이벤트 태스크를 트리거할 수 있습니다.
프로그래밍 방식으로 EVENT 명령어가 태스크를 트리거했는지 여부를 결정합니다.
EVENT 명령어가 이벤트 태스크를 트리거했는지 여부를 결정하려면 시스템 값 가져오기(Get System Value, GSV) 명령어를 사용하여 태스크의 Status 속성을 모니터링합니다.
속성 | 데이터 유형 | 명령어 | 설명 | |
상태 | DINT | GSV SSV | 태스크에 대한 상태 정보 제공함. 컨트롤러가 비트를 설정한 후 수동으로 비트를 해제하여 해당 유형의 다른 폴트가 발생했는지 여부를 결정해야 합니다. | |
다음의 여부를 결정하려면 | 이 비트를 검사 | |||
EVENT 명령어가 태스크를 트리거함(이벤트 태스크만 해당) | 0 | |||
타임아웃에 의해 태스크가 트리거됨(이벤트 태스크만 해당) | 1 | |||
이 태스크에 대한 중복이 발생함 | 2 | |||
컨트롤러는 Status 속성의 비트가 설정된 후 해당 비트를 해제하지 않습니다. 새 상태 정보를 위해 비트를 사용하려면 해당 비트를 수동으로 지워야 합니다. 시스템 값 설정(Set System Value, SSV) 명령어를 사용하여 속성을 다른 값으로 설정합니다.
연산 상태 플래그에 영향
아니요
폴트 조건
이 명령어에만 해당되는 것은 없습니다. 피연산자 관련 폴트에 대해서는 공통 속성을 참조하십시오.
실행
래더 다이어그램
조건 | 수행한 작업 |
사전 스캔 | N/A |
렁-입력-조건이 거짓임 | N/A |
렁-입력-조건이 참임 | 명령어가 실행됩니다. |
사후 스캔 | N/A |
구조화된 텍스트
조건 | 수행한 작업 |
사전 스캔 | N/A |
정상 실행 | 명령어가 실행됩니다. |
사후 스캔 | N/A |
예
예 1
컨트롤러는 여러 프로그램을 사용하지만 공통의 종료 절차를 사용합니다. 각 프로그램은 종료해야 하는 조건을 감지한 경우에 켜지는 Shut_Down_Line이라는 프로그램 범위 태그를 사용합니다. 각 프로그램의 로직은 다음과 같이 실행됩니다.
Shut_Down_Line = on(조건이 종료를 요구함)이면
Shut_Down 태스크를 한 번 실행
래더 다이어그램
프로그램 A

프로그램 B

구조화된 텍스트
프로그램 A
IF Shut_Down_Line AND NOT Shut_Down_Line_One_Shot THEN
EVENT (Shut_Down);
END_IF;
Shut_Down_Line_One_Shot:=Shut_Down_Line;
프로그램 B
IF Shut_Down_Line AND NOT Shut_Down_Line_One_Shot THEN
EVENT (Shut_Down);
END_IF;
Shut_Down_Line_One_Shot:=Shut_Down_Line;
예 2
다음 예는 EVENT 명령어를 사용하여 이벤트 태스크를 초기화합니다. 다른 유형의 이벤트는 일반적으로 이벤트 태스크를 트리거합니다.
연속 태스크
IF Initialize_Task_1 = 1 THEN
ONS 명령어는 EVENT 명령어의 실행을 1스캔으로 제한합니다.
EVENT 명령어는 Task_1(이벤트 태스크)의 실행을 트리거합니다.

Task_1(이벤트 태스크)
GSV 명렁어는 Task_Status(DINT 태그) = 이벤트 태스크의 상Status 속성을 설정합니다. Instance Name 속성에서 THIS는 명령어가 있는 태스크(예, Task_1)에 대한 TASK 객체를 의미합니다.

Task_Status.0 = 1이면 EVENT 명령어가 이벤트 태스크를 트리거했습니다(즉, 연속 태스크가 해당 EVENT 명령어를 실행하여 이벤트 태스크를 초기화함).
RES 명령어는 이벤트 태스크가 사용하는 카운터를 리셋합니다.

컨트롤러는 Status 속성의 비트가 설정된 후 해당 비트를 해제하지 않습니다. 새 상태 정보를 위해 비트를 사용하려면 해당 비트를 수동으로 지워야 합니다.
Task_Status.0 = 1이면 해당 비트를 해제합니다.
OTU 명령어는 Task_Status.0 = 0을 설정합니다.
SSV 명령어는 THIS 태스크(Task_1)의 Status 속성 = Task_Status를 설정합니다. 이는 해제된 비트를 포함합니다.

의견을 작성 부탁드립니다.