위/아래 누적기(Up/Down Accumulator, UPDN)

이 정보
CompactLogix
5370,
ControlLogix
5570,
Compact GuardLogix
5370,
GuardLogix
5570,
CompactLogix
5380,
ControlLogix
5580 및 ControlLogix 5590 컨트롤러에 적용됩니다.
UPDN 명령어는 누적된 값에 2개의 입력을 하나를 더하고 나머지를 뺍니다.
사용 가능한 언어
래더 다이어그램
이 명령어는 래더 다이어그램에 사용할 수 없습니다.
펑션 블록
RSL5K_UPDN Function Block_v31
구조화된 텍스트
UPDN(UPDN_tag)
피연산자
펑션 블록
피연산자
유형
형식
설명
UPDN tag
UP_DOWN_ACCUM
구조
UPDN 구조
UPDN 구조
입력 매개 변수
데이터 유형
설명
EnableIn
BOOL
활성화 입력. 선택하지 않으면 명령이 실행되지 않고 출력이 업데이트되지 않습니다.
기본값은 설정 상태입니다.
Initialize
BOOL
명령어에 대한 초기화 입력 요청. Initialize가 설정되면 명령어가 Out으로 설정되고 내부 누적기는 InitialValue로 설정됩니다.
기본값은 해제 상태입니다.
InitialValue
REAL
명령어의 초기값입니다.
유효값 = 모든 부동 소수점 수
기본값 = 0.0
InPlus
REAL
누적기에 추가된 입력입니다.
유효값 = 모든 부동 소수점 수
기본값 = 0.0
InMinus
REAL
누적기에서 감산된 입력입니다.
유효값 = 모든 부동 소수점 수
기본값 = 0.0
Hold
BOOL
명령어에 대한 입력 유지 요청. Hold가 설정되고 Initialize가 해제되면 Out이 유지됩니다.
기본값은 해제 상태입니다.
출력 매개 변수
데이터 유형
설명
EnableOut
BOOL
명령어의 활성화 여부를 나타냅니다. Out이 오버플로되는 경우 거짓으로 해제됩니다.
Out
REAL
명령어에 대한 출력.
구조화된 텍스트
피연산자
유형
형식
설명
UPDN tag
UP_DOWN_ACCUM
구조
UPDN 구조
스트럭쳐드 텍스트 내에서 식의 구문에 대한 자세한 내용은 스트럭쳐드 텍스트 구문을 참조하십시오.
설명
UPDN 명령어는 다음과 같은 알고리즘을 따릅니다.
조건
Action
Hold가 해제되고
Initialize가 해제됨
AccumValue
n
= AccumValue
n-1
+ InPlus - InMinus
Out = AccumValue
n
Hold가 설정되고
Initialize가 해제됨
AccumValue
n
= AccumValue
n-1
Out = AccumValue
n
Initialize가 설정됩니다.
AccumValue
n
= InitialValue
Out = AccumValue
n
연산 상태 플래그에 영향
아니요
폴트 조건
부 폴트 발생 조건
폴트 유형
폴트 코드
기능이 활성화되고 오버플로가 감지됨
4
4
피연산자 관련 폴트에 대해서는 공통 속성 항목을 참조하십시오.
실행
펑션 블록
조건/상태
수행한 작업
사전 스캔
EnableIn 및 EnableOut 비트가 거짓으로 해제됩니다.
Tag.EnableIn이 거짓임
EnableIn 및 EnableOut 비트가 거짓으로 해제됩니다.
Tag.EnableIn이 참임
EnableIn 및 EnableOut 비트가 참으로 설정됩니다.
명령어가 실행됩니다.
명령어 최초 실행
내부 누적기가 0으로 설정됩니다.
명령어 최초 스캔
N/A
사후 스캔
EnableIn 및 EnableOut 비트가 거짓으로 해제됩니다.
구조화된 텍스트
조건/상태
수행한 작업
사전 스캔
펑션 블록 표의 사전 스캔을 참조하십시오.
정상 실행
펑션 블록 표에서 Tag.EnableIn이 참임을 참조하십시오.
사후 스캔
펑션 블록 표에서 사후 스캔을 참조하십시오.
예
UPDN 명령어가 한 스캔의 카운트를 다음 스캔에 통합합니다. 이 명령어는 간단한 포지셔닝 응용 프로그램이나 프로세스의 차별화된 피드백 신호에서 누적된 값을 생성하는 데 간단한 적분이 필요한 다른 유형의 응용 프로그램에서 사용할 수 있습니다. 아래 예의 경우 Initial_Position은 0으로 설정되지만 Differential_Position_Plus와 Differential_Position_Minus는 시간이 지남에 따라 값이 달라집니다. 이 명령어를 사용하면 InPlus와 InMinus가 음의 값도 수락할 수 있습니다.
UPDN Example
펑션 블록
미분 명령어는 시간 경과에 따른 신호 변화량을 초당 단위로 계산합니다. 이 명령어는 관성이 높은 프로세스를 보상하기 위해 조절기에 피드포워드 경로를 만드는 폐쇄 루프 제어에 종종 사용됩니다.
RSL5K_UPDN Example 2_v31
구조화된 텍스트
UPDN_01.Initialize := Initialize_Position;
UPDN_01.InitialValue := Initial_Position;
UPDN_01.InPlus := Differential_Position_Plus;
UPDN_01.InMinus := Differential_Position_Minus;
UPDN(UPDN_01);
Position_Integrated := UPDN_01.Out;
의견을 작성 부탁드립니다.
이 자료에 대한 문의사항이나 요청사항이 있습니까? 여기에 요청사항을 작성 부탁드립니다.
Normal