TRUNC_TO_INT

REAL 또는 LREAL 입력 변수의 10진수 자리를 잘라서 INTEGER로 변환

TRUNC_TO_INT는 REAL, LREAL 숫자의 10진수 자리를 잘라내고 INTEGER 데이터 형식의 출력 변수를 전달합니다.

파라미터

입력

정의되지 않은 입력 (REAL, LREAL)

입력 데이터 형식

출력

정의되지 않은 출력 (INT)

변환 결과

주석

  • 필요한 데이터 형식이 지원되는 경우, 과부하 명령 TO_INT를 사용하는 것이 좋습니다.

  • 10진수 자리를 잘라내면 양수는 0으로 감소하고 음수는 0으로 증가합니다.

  • 입력 변수의 첫 16비트는 출력 변수에 할당됩니다.

에러 플래그

sys_bIsOperationErrorHold(TRUE로 전환되어 TRUE로 유지됨)
  • 입력 변수에 REAL 데이터 형식이 없는 경우

  • 출력 변수가 16비트 INTEGER 보다 큰 경우

sys_bIsOperationErrorNonHold(스캔 1회에 대해 TRUE로 전환)
  • 입력 변수에 REAL 데이터 형식이 없는 경우

  • 출력 변수가 16비트 INTEGER 보다 큰 경우

sys_bIsCarry(스캔 1회에 대해 TRUE로 전환)

출력 변수가 0인 경우

예

POU 헤더

이 펑션 프로그램 시 사용한 모든 입력과 출력 변수는 POU 헤더에서 선언되었습니다. 모든 프로그래밍 언어에 같은 POU 헤더를 사용합니다.

	VAR
		REAL_value: TRUNC;
		INT_value: INT:=0;
	END_VAR

이 예에서는 변수를 사용합니다. 또한 입력 변수에 정수를 사용할 수 있습니다.

POU 본문

REAL_value의 10진수 자리는 잘립니다. result는 INT_value의 16비트 INTEGER로 저장됩니다.

LD 본문

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 2 ;
        NETWORK_BODY
B(B_F,TRUNC_TO_INT!,Instance,10,0,19,2,,?D?C);
B(B_VARIN,,REAL_value,8,0,10,2,);
B(B_VAROUT,,INT_value,19,0,21,2,);
L(1,0,1,2);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

ST 본문

INT_value:=TRUNC_TO_INT(REAL_value);

IL 본문

LD

REAL_value

TRUNC_TO_INT

ST

INT_value

최종 수정일: 2023-08-16이 페이지에 대한 피드백Panasonic 직통 전화