FP-e 및 FP0의 경우에만: 인터럽트 프로그램에서 REAL 명령을 사용하지 마십시오.
'123'과 같은 정수 리터럴은 암묵적으로 REAL로 변환됩니다.
데이터 형식 REAL 값은 IEEE754를 기준으로 실수 32비트 숫자입니다. 가수는 23비트이고 지수는 8비트입니다.
REAL 값 범위: |
-3.402823466*E38 - -1.175494351*E-38 |
0.0 |
|
+1.175494351*E-38 - +3.402823466*E38 |
|
기본 초기값(예: POU 헤더 또는 글로벌 변수 리스트에서 변수 선언의 경우): |
0.0 |
REAL 값을 다음과 같은 형식으로 입력할 수 있습니다. [+-] 정수.정수 [(Ee) [+-] 정수]
5.983e-7
-33.876e12
3.876e3
0.000123
123.0
문제:
부동 소수점 명령에는 유효한 실수가 필요합니다.
REAL 값 범위: |
-3.402823466*E38 - -1.175494351*E-38 |
0.0 |
|
+1.175494351*E-38 - +3.402823466*E38 |
실수가 -3.402823466*E38보다 작거나 +3.402823466*E38보다 크면 시스템 변수 sys_bIsOperationErrorHold 및 sys_bIsOperationErrorNonHold가 설정되고 시스템 레지스터 26이 [정지]로 설정되면 동작이 정지합니다.
이 조건은 IsValidReal 및 IsValidReal2 펑션으로 확인됩니다.
실수가 -1.175494351*E-38 ~ +1.175494351*E-38 범위에 있으면 PLC는 0.0과 에러 플래그 없음이 설정된 것으로 가정합니다.
FP1 또는 FP-M과 같은 일부 구형 PLC 유형은 실수를 지원하지 않습니다.
이 예에서 IsValidReal 및 IsValidReal2 펑션은 래더 다이어그램(LD)과 명령 목록(IL)에서 프로그램됩니다. 모든 프로그래밍 언어에 같은 POU 헤더를 사용합니다.
POU 헤더
POU 헤더에서 모든 입력 및 출력 변수는 이 함수를 프로그래밍하기 위해 사용된다고 선언됩니다.
LD: IsValidReal
LD: IsValidReal2