TIME을 DOUBLE INTEGER로 곱하기
MUL_TIME_DINT는 입력 변수 값을 곱하고 결과를 출력 변수에 씁니다.
입력
1번째 입력: 곱셈
2번째 입력: 승수
출력
결과
이 펑션 프로그램 시 사용한 모든 입력과 출력 변수는 POU 헤더에서 선언되었습니다. 모든 프로그래밍 언어에 같은 POU 헤더를 사용합니다.
VAR
time_value_1: TIME:=T#1s500ms;
multiplier: DINT:=5;
time_value_2: TIME:=T#0s;
END_VAR
이 예에서 입력 변수 time_value 및 multiplier이 선언됩니다. 하지만 펑션의 입력 접점에 직접 정수를 쓸 수 있습니다.
time_value_1과 multiplier를 곱합니다. 결과는 time_value_2에 작성됩니다.
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 4 ;
NETWORK_BODY
B(B_VARIN,,time_value_1,6,1,8,3,);
B(B_VARIN,,multiplier,6,2,8,4,);
B(B_VAROUT,,time_value_2,17,1,19,3,);
B(B_F,MUL_TIME_DINT!,Instance,8,0,17,4,,?D@'Time'?D@'DInt'?C);
L(1,0,1,4);
END_NETWORK_BODY
END_NET_WORK
END_BODY
time_value_2:=MUL_TIME_DINT(time_value_1, multiplier);