빼기(SUB)

이 정보는 CompactLogix 5370, ControlLogix 5570, Compact GuardLogix 5370, GuardLogix 5570, Compact GuardLogix 5380, CompactLogix 5380, ControlLogix 5580, GuardLogix 5580 및 ControlLogix 5590 컨트롤러에 적용됩니다. 컨트롤러 구분이 있을 때는 언급합니다.
활성화되면 SUB 명령어와 ‘-’ 오퍼레이터는 Source A에서 Source B를 뺍니다.
사용 가능한 언어
래더 다이어그램
SUB_LD_avail_v31
함수 블록 다이어그램
함수 블록 다이어그램은 다음 요소를 지원합니다.
FBD 블록
SUB_FBD Block
FBD 함수
팁: FBD 함수는 CompactLogix 5380, ControlLogix 5580, Compact GuardLogix 5380, GuardLogix 5580 및 ControlLogix 5590 컨트롤러에만 적용됩니다.
FBD Function
구조화된 텍스트
이 명령어는 구조화된 텍스트에서 사용할 수 없습니다.
팁: 동일한 결과를 얻으려면 식에 연산자 '-’를 사용하십시오. 스트럭쳐드 텍스트 내에서 식의 구문과 할당에 대한 자세한 내용은 스트럭쳐드 텍스트 구문을 참조하십시오.
피연산자
중요: 다음과 같은 경우 작업 시 예외가 발생할 수 있습니다.
  • 출력 태그 피연산자가 덮어써집니다.
  • 구조 피연산자의 구성원이 덮어써집니다.
  • 지정된 경우를 제외하고 여러 명령어에서 구조 피연산자를 공유합니다.
명령어 내에서 숫자 데이터 유형을 혼합하기 위한 데이터 변환 규칙이 있습니다. 데이터 변환을 참조하십시오.
래더 다이어그램
피연산자
데이터 유형
CompactLogix 5370, ControlLogix 5570, Compact GuardLogix 5370 및 GuardLogix 5570 컨트롤러
데이터 유형
CompactLogix 5380, ControlLogix 5580, Compact GuardLogix 5380, GuardLogix 5580 및 ControlLogix 5590 컨트롤러
형식
설명
Source A
SINT
INT
DINT
REAL
SINT
INT
DINT
LINT
USINT
UINT
UDINT
ULINT
REAL
LREAL
LTIME*
TIME*
TIME32*
LDT*
DT*
즉시
태그
소스 B를 뺄 값.
Source B
SINT
INT
DINT
REAL
SINT
INT
DINT
LINT
USINT
UINT
UDINT
ULINT
REAL
LREAL
LTIME*
TIME*
TIME32*
LDT*
DT*
즉시
태그
소스 A에서 뺄 값.
Dest
SINT
INT
DINT
REAL
SINT
INT
DINT
LINT
USINT
UINT
UDINT
ULINT
REAL
LREAL
LTIME*
TIME*
TIME32*
LDT*
DT*
태그
명령어의 결과를 저장하는 태그.
팁: *SUB 명령어에서 상대 시간(LTIME, TIME32, TIME) 및 절대 시간(LDT, DT) 데이터 유형을 사용할 때 다음 사항을 염두에 두십시오.
  • Source A와 Source B가 모두 상대 시간이면 Dest는 상대 시간이어야 합니다.
  • Source A가 상대 시간이고 Source B가 절대 시간이거나 그 반대인 경우 Dest는 절대 시간이어야 합니다.
  • ADD 명령어에서 소스 A와 소스 B는 모두 절대 시간이 될 수 없습니다.
상대 시간(LTIME, TIME 및 TIME32) 및 절대 시간(LDT 및 DT) 데이터 유형에 대한 자세한 내용은 시간 및 날짜 데이터 유형을 참조하십시오.
함수 블록 다이어그램
FBD 블록
피연산자
데이터 유형
형식
설명
SUB
FBD_MATH
태그
SUB 구조
FBD_MATH 구조
입력 구성원
데이터 유형
설명
EnableIn
BOOL
활성화 입력. 거짓이면 명령어가 실행되지 않고 출력이 업데이트되지 않습니다.
기본값은 참입니다.
SourceA
REAL
SourceB를 뺄 값.
SourceB
REAL
SourceA에서 뺄 값.
출력 구성원
데이터 유형
설명
EnableOut
BOOL
명령어가 활성화되었을 때 폴트 없이 실행되었는지를 나타냅니다.
Dest
REAL
명령어의 결과.
FBD 함수
팁: FBD 함수는 CompactLogix 5380, ControlLogix 5580, Compact GuardLogix 5380, GuardLogix 5580 및 ControlLogix 5590 컨트롤러에만 적용됩니다.
입력 피연산자(왼쪽 핀)
데이터 유형
CompactLogix 5380, ControlLogix 5580, Compact GuardLogix 5380, GuardLogix 5580 및 ControlLogix 5590 컨트롤러만 해당
설명
SourceA(상위)
SINT
USINT
INT
UINT
DINT
UDINT
LINT
ULINT
REAL
LREAL
TIME
TIME32
LTIME
DT
LDT
SourceB를 뺄 값.
SourceB(하부)
SINT
USINT
INT
UINT
DINT
UDINT
LINT
ULINT
REAL
LREAL
TIME
TIME32
LTIME
DT
LDT
SourceA에서 뺄 값.
출력 피연산자
(오른쪽 핀)
데이터 유형
CompactLogix 5380, ControlLogix 5580, Compact GuardLogix 5380, GuardLogix 5580 및 ControlLogix 5590 컨트롤러만 해당
설명
Dest
DINT
UDINT
LINT
ULINT
REAL
LREAL
TIME
TIME32
LTIME
DT
LDT
함수의 결과.
FBD 함수 항목을 참조하십시오.
연산 상태 플래그에 영향
컨트롤러
연산 상태 플래그에 영향
CompactLogix 5380, ControlLogix 5580, Compact GuardLogix 5380, GuardLogix 5580 및 ControlLogix 5590 컨트롤러
조건부
CompactLogix 5370, ControlLogix 5570, Compact GuardLogix 5370 및 GuardLogix 5570 컨트롤러
예
연산 상태 플래그를 참조하십시오.
주 폴트/부 폴트
이 명령어에만 해당되는 것은 없습니다. 배열 인덱스 오류의 경우 배열을 통한 인덱스를 참조하세요.
실행
래더 다이어그램
조건/상태
수행한 작업
사전 스캔
N/A
렁-입력-조건이 거짓임
렁-출력-조건을 렁-입력-조건으로 설정
렁-입력-조건이 참임
렁-출력-조건을 렁-입력-조건으로 설정
Dest = Source A - Source B
사후 스캔
N/A
함수 블록 다이어그램
FBD 블록
조건/상태
수행한 작업
사전 스캔
N/A
EnableIn이 거짓임
EnableOut을 EnableIn으로 설정
EnableIn이 참임
Dest = SourceA - SourceB
오버플로가 발생하는 경우
EnableOut을 거짓으로 해제
그렇지 않으면
EnableOut을 참으로 설정
명령어 최초 실행
N/A
명령어 최초 스캔
N/A
사후 스캔
N/A
FBD 함수
팁: FBD 함수는 CompactLogix 5380, ControlLogix 5580, Compact GuardLogix 5380, GuardLogix 5580 및 ControlLogix 5590 컨트롤러에만 적용됩니다.
조건/상태
수행한 작업
사전 스캔
N/A
정상 스캔
Dest = SourceA - SourceB
명령어 최초 실행
N/A
명령어 최초 스캔
N/A
사후 스캔
N/A
예
래더 다이어그램
SUB_LD_ex_v31
함수 블록 다이어그램
FBD 블록
SUB_FBD_ex_v31
FBD 함수
SUB_FBD Function
구조화된 텍스트
DINT_dest := DINT_srcA - DINT_srcB;
의견을 작성 부탁드립니다.
이 자료에 대한 문의사항이나 요청사항이 있습니까? 여기에 요청사항을 작성 부탁드립니다.
Normal