기본 데이터 유형

컨트롤러는 IEC 1131-3에 정의된 기본 데이터 유형을 지원합니다. 기본 데이터 유형은 다음과 같습니다.
데이터 유형
설명
범위
BOOL
1비트 부울
0 = 해제됨
1 = 설정됨
SINT
1바이트 정수
-128~127
INT
2바이트 정수
-32,768~32,767
DINT
4바이트 정수
-2,147,483,648~2,147,483,647
LINT
8바이트 정수
팁: LINT 데이터 유형은
CompactLogix
5370,
ControlLogix
5570,
Compact GuardLogix
5370 및
GuardLogix
5570 컨트롤러에서 제한적으로 사용됩니다. 복사(COP, CPS) 명령어, CST/WallClock 시간 속성, 시간 동기화 및 Add-On 명령어에서만 사용할 수 있습니다.
-9223372036854775808~9223372036854775807
DT
날짜 및 시간. 64비트 저장 장치; 단위는 마이크로초입니다.
DT#1970-01-01-00:00:00.000_000(UTC+00:00) ~ DT#2250-12-31-23:59:59.999_999(UTC+00:00)
팁: 싱가포르와 같은 일부 표준 시간대에서 이 범위는 다음과 같습니다.
DT#1970-01-01-08:00:00.000_000(UTC+08:00) ~ DT#2251-01-01-07:59:59.999_999(UTC+08:00)
LDT
긴 날짜 및 시간. 64비트 저장 장치; 단위는 나노초입니다.
LDT#1970-01-01-00:00:00.000_000(UTC+00:00) ~ LDT#2250-12-31-23:59:59.999_999_999(UTC+00:00)
팁: 싱가포르와 같은 일부 표준 시간대에서 이 범위는 다음과 같습니다.
LDT#1970-01-01-08:00:00.000_000_000(UTC+08:00) ~ LDT#2251-01-01-07:59:59.999_999_999(UTC+08:00)
TIME32
기간. 32비트 저장 장치; 단위는 마이크로초입니다.
T32#-35m_47s_483ms_647us ~ T32#35m_47s_483ms_647us
TIME
기간. 64비트 저장 장치; 단위는 마이크로초입니다.
T#-106750d_12h_59m_59s_999ms_999us~T#106750d_12h_59m_59s_999ms_999us
LTIME
긴 시간. 64비트 저장 장치; 단위는 나노초입니다.
LT#-106750d_12h_59m_59s_999ms_999us_999ns ~ LT#106750d_12h_59m_59s_999ms_999us_999ns
USINT
1바이트 부호 없는 정수
0~255
UINT
2바이트 부호 없는 정수
0~65,535
UDINT
4바이트 부호 없는 정수
0~4,294,967,295
ULINT
8바이트 부호 없는 정수
0~18,446,744,073,709,551,615
REAL
4바이트 부동 소수점 수
-3.4028235E38~-1.1754944E-38
(음수 값)
및
0.0
및
1.1754944E-38~3.4028235E38
(양수 값)
LREAL
8바이트 부동 소수점 수
-1.7976931348623157E308~
-2.2250738585072014E-308
(음수 값)
및
0.0
및
2.2250738585072014E-308~
1.7976931348623157E308
(양수 값)
이러한 컨트롤러는 다음과 같은 기본 데이터 유형을 지원합니다.
컨트롤러
데이터 유형
CompactLogix
5380,
ControlLogix
5580,
Compact GuardLogix
5380,
GuardLogix
5580 및 ControlLogix 5590 컨트롤러
SINT, INT, DINT, LINT, REAL
USINT, UINT, UDINT, ULINT, LREAL
CompactLogix
5370,
ControlLogix
5570,
Compact GuardLogix
5370 및
GuardLogix
5570 컨트롤러
SINT, INT, DINT, LINT, REAL.
컨트롤러는 모든 즉시 값을 DINT 데이터 유형으로 처리합니다.
REAL 데이터 유형은 Plus or Minus sign 무한대와 Plus or Minus sign NAN도 저장하지만 소프트웨어 표시는 표시 형식에 따라 달라집니다.
데이터 유형 변환
하나의 명령어 내에서 피연산자의 데이터 유형을 혼합하는 경우 명령어에 따라 데이터가 해당 명령어에 적합한 최적의 데이터 유형으로 자동 변환됩니다. 컨트롤러가 새 데이터 유형에 맞춰 데이터를 변환하거나 단순히 가능한 최적의 형태로 데이터를 끼워 맞추는 경우도 있습니다.
변환
결과
큰 정수 -> 작은 정수
컨트롤러는 큰 정수의 위쪽 부분을 잘라서 오버플로를 만듭니다.
예:
10진수
이진수
DINT
65,665
0000_0000_0000_0001_0000_0000_1000_0001
INT
129
0000_0000_1000_0001
SINT
-127
1000_0001
SINT 또는 INT -> REAL
데이터 정밀도가 상실되지 않음
DINT -> REAL
데이터 정밀도가 상실되었을 수 있음. 두 데이터 유형 모두 32비트 데이터를 저장하지만 REAL 유형은 32비트 중 일부를 지수 값을 저장하는 데 사용합니다. 정밀도가 손실되면 컨트롤러는 DINT의 중요도가 가장 낮은 부분을 취합니다.
LREAL -> LREAL
데이터 정밀도가 상실되지 않음.
LREAL -> REAL
데이터 정밀도가 상실되었을 수 있음.
LREAL/REAL -> 부호 없는 정수
데이터 정밀도가 상실되었을 수 있음. 소스 값이 너무 커서 대상에 맞지 않을 경우 컨트롤러가 저장할 수 있는 부분만 저장하고 오버플로를 생성할 수 있습니다.
부호 있는 정수/부호 없는 정수 -> LREAL/REAL
Destination에 저장할 수 있는 것보다 더 많은 상위 비트가 정수 값이 포함된 경우 하위 비트가 잘립니다.
부호 있는 정수 -> 부호 없는 정수
소스 값이 너무 커서 대상에 맞지 않을 경우 컨트롤러가 저장할 수 있는 부분만 저장하고 오버플로를 생성할 수 있습니다.
부호 없는 정수 -> 부호 있는 정수
소스 값이 너무 커서 대상에 맞지 않을 경우 컨트롤러가 저장할 수 있는 부분만 저장하고 오버플로를 생성할 수 있습니다.
정수로 REAL 변환
컨트롤러는 소수 부분을 반올림하고 소수가 아닌 부분의 위쪽 부분을 자릅니다. 데이터 손실 시 컨트롤러는 오버플로 상태 플래그를 설정합니다.
가장 가까운 정수로 반올림합니다.
0.5보다 작으면 버리고 0.5인 경우 우수리 없이 최대한 가까운 정수, 0.5보다 큰 경우 반올림
예:
REAL(소스)
DINT(결과)
1.6
2
-1.6
-2
1.5
2
-1.5
-2
1.4
1
-1.4
-1
2.5
2
-2.5
-2
데이터를 BOOL 데이터 유형으로 변환하거나 BOOL 데이터 유형에서 변환하는 것은 불가능합니다.
중요: 연산 상태 플래그는 저장되는 값에 따라 설정됩니다. 일반적으로 연산 상태 키워드에 영향을 미치지 않는 명령어이지만 명령어 파라미터의 데이터 유형이 혼합되어 유형 변환이 일어나는 경우 영향을 미치는 것처럼 보일 수 있습니다. 유형 변환 프로세스를 통해 수학 상태 키워드가 설정됩니다.
안전 데이터 유형
Logix Designer
응용 프로그램은 안전 태그가 직접 또는 간접적으로 참조하는 사용자 정의 또는 Add-On 정의 유형의 잘못된 데이터 유형을 초래하는 사용자 정의 또는 Add-On 정의 유형의 수정 작업을 방지합니다. (여기에는 중첩된 구조가 포함됩니다.)
안전 태그는 다음과 같은 데이터 유형으로 구성될 수 있습니다.
  • 모든 기본 데이터 유형.
  • 안전 명령어에 사용되는 미리 정의된 유형.
  • 사용자 정의 데이터 유형 또는 앞의 두 유형으로 구성된 배열.
안전 태그의 사용자 정의 데이터 유형 구성원 이름 온라인 편집
CompactLogix
5380,
Compact GuardLogix
5380,
ControlLogix
5580 및
GuardLogix
5580 컨트롤러에서 사용자 정의 데이터 유형의 구성원 이름을 온라인으로 편집할 수 있습니다. 그러나 사용자 정의 데이터 유형이 안전 태그에 사용되고 컨트롤러가 안전 보안 상태인 경우에는 온라인 편집이 비활성화됩니다.
의견을 작성 부탁드립니다.
이 자료에 대한 문의사항이나 요청사항이 있습니까? 여기에 요청사항을 작성 부탁드립니다.
Normal