타이머 16비트
보조 타이머 명령 F137_STMR은 다운 형식 타이머입니다. 타이머 설정 시간 수식은 0.01초 * s 값입니다(0.01~327.67초 사이에서 시간 설정 가능). 타이머 접점으로 특수 내부 플래그 R900D를 사용하는 경우, 명령 후 즉시 어드레스에서 프로그램해 주십시오.
보조 타이머 TM(STMR)의 트리거 EN이 ON 상태이면 정수 또는 s에서 지정한 값은 d에서 지정한 영역으로 전송됩니다.
타이밍 동작 중에 d에서 지정한 영역의 값에서 시간을 뺍니다.
d에서 지정한 영역의 값이 0이 되면 출력 ENO가 켜집니다.
입력
타이머 설정값의 16비트 영역 또는 해당 정수
출력
타이머 경과값의 16비트 영역
이 펑션 프로그램 시 사용한 모든 입력과 출력 변수는 POU 헤더에서 선언되었습니다. 모든 프로그래밍 언어에 같은 POU 헤더를 사용합니다.
VAR
bstart: BOOL:=FALSE;
(*activates the timer*)
iSetValue: INT:=600;
(*six seconds (600 * 0,01s)*)
iElapsedValue: INT:=0;
bTimerOutput: BOOL:=FALSE;
(*set to TRUE after 6s have elapsed*)
END_VAR
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 5 ;
NETWORK_BODY
B(B_VARIN,,iSetValue,7,2,9,4,);
B(B_VAROUT,,iElapsedValue,16,2,18,4,);
B(B_CONTACT,,bstart,4,1,6,3,);
B(B_COIL,,bTimerOutput,23,1,25,3,);
B(B_F,F137_STMR!,Instance,9,0,16,4,,?DEN?D@'s'?AENO?Cd);
L(1,2,4,2);
L(6,2,9,2);
L(16,2,23,2);
L(1,0,1,5);
END_NETWORK_BODY
END_NET_WORK
END_BODY