램프/소크(RMPS)

이 정보는
CompactLogix
5370,
ControlLogix
5570,
Compact GuardLogix
5370,
GuardLogix
5570,
Compact GuardLogix
5380,
CompactLogix
5380,
ControlLogix
5580,
GuardLogix
5580 및 ControlLogix 5590 컨트롤러에 적용됩니다.
램프/소크(RMPS) 명령어는 번갈아 시행하는 램프/소크 주기 세그먼트를 제공합니다.
사용 가능한 언어
래더 다이어그램
이 명령어는 래더 다이어그램 로직에서는 사용할 수 없습니다.
펑션 블록
RMPS_FB_avail_v31
구조화된 텍스트
RMPS(RMPS_tag,RampValue,SoakValue,SoakTime);
피연산자
펑션 블록
피연산자
유형
형식
설명
RMPS tag
RAMP_SOAK
구조
RMPS 구조
RampValue
REAL
배열
램프 값 배열. 각 세그먼트의 램프 값을 입력합니다(0 ~ NumberOfSegs-1). 램프 값은 시간(분) 또는 비율(단위/분)로 입력합니다. TimeRate 매개 변수는 램프 지정에 사용되는 방법을 반영합니다. 램프 값이 유효하지 않으면 명령어는 Status에 적절한 비트를 설정하고 오퍼레이터 수동 또는 프로그램 보류 모드로 변경합니다. 이 배열은 NumberOfSegs 이상이어야 합니다.
유효값 = 0.0 ~ 최대 양의 부동 소수점 수
SoakValue
REAL
배열
소크 값 배열. 각 세그먼트의 소크 값을 입력합니다(0 ~ NumberOfSegs-1). 이 배열은 NumberOfSegs 이상이어야 합니다.
유효값 = 모든 부동 소수점 수
SoakTime
REAL
배열
소크 시간 배열. 각 세그먼트의 소크 시간을 입력합니다(0 ~ NumberOfSegs-1). 소크 시간은 분 단위로 입력합니다. 소크 값이 유효하지 않으면 명령어는 Status에 적절한 비트를 설정하고 오퍼레이터 수동 또는 프로그램 보류 모드로 변경합니다. 이 배열은 NumberOfSegs 이상이어야 합니다.
유효값 = 0.0 ~ 최대 양의 부동 소수점 수
구조화된 텍스트
피연산자
유형
형식
설명
RMPS tag
RAMP_SOAK
구조
RMPS 구조
RampValue
REAL
배열
램프 값 배열. 각 세그먼트의 램프 값을 입력합니다(0 ~ NumberOfSegs-1). 램프 값은 시간(분) 또는 비율(단위/분)로 입력합니다. TimeRate 매개 변수는 램프 지정에 사용되는 방법을 반영합니다. 램프 값이 유효하지 않으면 명령어는 Status에 적절한 비트를 설정하고 오퍼레이터 수동 또는 프로그램 보류 모드로 변경합니다. 이 배열은 NumberOfSegs 이상이어야 합니다.
유효값 = 0.0 ~ 최대 양의 부동 소수점 수
SoakValue
REAL
배열
소크 값 배열. 각 세그먼트의 소크 값을 입력합니다(0 ~ NumberOfSegs-1). 이 배열은 NumberOfSegs 이상이어야 합니다.
유효값 = 모든 부동 소수점 수
SoakTime
REAL
배열
소크 시간 배열. 각 세그먼트의 소크 시간을 입력합니다(0 ~ NumberOfSegs-1). 소크 시간은 분 단위로 입력합니다. 소크 값이 유효하지 않으면 명령어는 Status에 적절한 비트를 설정하고 오퍼레이터 수동 또는 프로그램 보류 모드로 변경합니다. 이 배열은 NumberOfSegs 이상이어야 합니다.
유효값 = 0.0 ~ 최대 양의 부동 소수점 수
스트럭쳐드 텍스트 내 식의 구문에 대한 자세한 내용은
스트럭쳐드 텍스트 구문
을 참조하십시오.
RMPS 구조
명령어별로 고유한 RMPS 구조를 지정합니다.
입력 매개 변수
데이터 유형
설명
EnableIn
BOOL
활성화 입력. 거짓이면 명령어가 실행되지 않고 출력이 업데이트되지 않습니다.
기본값은 참입니다.
PV
REAL
명령어에 대한 스케일링된 아날로그 온도 신호 입력입니다.
유효값 = 모든 부동 소수점 수
기본값 = 0.0
PVFault
BOOL
잘못된 PV 상태 표시기. 참이면 입력이 유효하지 않고 명령어는 프로그램 보류 또는 오퍼레이터 수동 모드로 전환되고 Status에 적절한 비트를 설정합니다.
기본값은 거짓입니다.
NumberOfSegs
DINT
세그먼트 수. 명령어에서 사용하는 램프/소크 세그먼트 수를 지정합니다. RampValue, SoakValue 및 SoakTime 배열은 NumberOfSegs 이상이어야 합니다. 이 값이 유효하지 않으면 명령어는 오퍼레이터 수동 또는 프로그램 보류 모드로 전환되고 Status에 적절한 비트를 설정합니다.
유효값 = 1에서 (RampValue, SoakValue 또는 SoakTime 배열의 최소 크기)까지
기본값 = 1
ManHoldAftInit
BOOL
초기화 후 수동/보류 참인 경우 초기화가 완료된 후 램프/소크는 작업자 수동 또는 프로그램 보류 모드에 있습니다. 그렇지 않으면 초기화가 완료된 후에도 램프/소크가 계속 이전 모드에 있습니다.
기본값은 거짓입니다.
CyclicSingle
BOOL
주기적/단일 실행. 주기적 작업의 경우 참 또는 단일 작업의 경우 거짓. 주기적 작업은 램프/소크 프로파일을 끊임없이 반복합니다. 단일 동작은 램프/소크 프로파일을 1회 수행한 다음 정지됩니다.
기본값은 거짓입니다.
TimeRate
BOOL
시간/비율 램프 값 구성. RampValue 매개 변수를 소크 온도에 도달하는 시간(분)으로 입력한 경우 참입니다. RampValue 파라미터를 비율(단위/분)로 입력한 경우 거짓입니다.
기본값은 거짓입니다.
GuarRamp
BOOL
보장된 램프. 참이고 명령어가 자동 모드인 경우 PV와 출력 간의 차이가 RampDeadband 이상인 경우 램핑이 일시적으로 중단됩니다.
기본값은 해제 상태입니다.
RampDeadband
REAL
보장된 램프 불감대. GuarRamp가 켜질 때 PV와 출력 간에 허용되는 엔지니어링 단위 차이를 지정합니다. 이 값이 유효하지 않으면 명령어는 RampDeadband = 0.0을 설정하고 Status에 적절한 비트를 설정합니다.
유효값 = 0.0보다 Greater than or equal to 모든 부동 소수점 수
기본값 = 0.0
GuarSoak
BOOL
보장된 소크. 해당 값이 참이고 명령어가 자동 모드인 경우 PV와 출력 간의 차이가 SoakDeadband 보다 크면 소크 타이머가 해제됩니다.
기본값은 거짓입니다.
SoakDeadband
REAL
보장된 소크 불감대. GuarSoak가 켜질 때 PV와 출력 간에 허용되는 엔지니어링 단위 차이를 지정합니다. 이 값이 유효하지 않으면 명령어는 SoakDeadband = 0.0을 설정하고 Status에 적절한 비트를 설정합니다.
유효값 = 0.0보다 Greater than or equal to 모든 부동 소수점 수
기본값 = 0.0
CurrentSegProg
DINT
현재 세그먼트 프로그램. 사용자 프로그램은 요청된 CurrentSeg 값을 이 입력에 씁니다. 이 값은 램프/소크가 프로그램 수동 모드일 경우에 사용합니다. 이 값이 유효하지 않으면 이 명령어는 Status에 적절한 비트를 설정합니다.
유효값 = 0부터 NumberOfSegs-1까지
기본값 = 0
OutProg
REAL
출력 프로그램. 사용자 프로그램은 요청된 Out 값을 이 입력에 씁니다. 이 값은 램프/소크가 프로그램 수동 모드인 경우 Out으로 사용됩니다.
유효값 = 모든 부동 소수점 수
기본값 = 0.0
SoakTimeProg
REAL
소크 시간 프로그램. 사용자 프로그램은 요청된 SoakTimeLeft 값을 이 입력에 씁니다. 이 값은 램프/소크가 프로그램 수동 모드일 경우에 사용합니다. 이 값이 유효하지 않으면 이 명령어는 Status에 적절한 비트를 설정합니다.
유효값 = 0.0 ~ 최대 양의 부동 소수점 수
기본값 = 0.0
CurrentSegOper
DINT
현재 세그먼트 작업자. 작업자 인터페이스에서 요청된 CurrentSeg 값을 이 입력에 씁니다. 이 값은 램프/소크가 작업자 수동 모드일 경우에 사용합니다. 이 값이 유효하지 않으면 이 명령어는 Status에 적절한 비트를 설정합니다.
유효값 = 0부터 NumberOfSegs-1까지
기본값 = 0
OutOper
REAL
출력 작업자. 작업자 인터페이스에서 요청된 Out 값을 이 입력에 씁니다. 이 값은 램프/소크가 오퍼레이터 수동 모드인 경우 Out으로 사용됩니다.
유효값 = 모든 부동 소수점 수
기본값 = 0.0
SoakTimeOper
REAL
소크 시간 작업자. 작업자 인터페이스에서 요청된 SoakTimeLeft 값을 이 입력에 씁니다. 이 값은 램프/소크가 작업자 수동 모드일 경우에 사용합니다. 이 값이 유효하지 않으면 이 명령어는 Status에 적절한 비트를 설정합니다.
유효값 = 0.0 ~ 최대 양의 부동 소수점 수
기본값 = 0.0
ProgProgReq
BOOL
프로그램 프로그래밍 요청. 프로그램 제어를 요청하려면 사용자 프로그램을 통해 참으로 설정합니다. ProgOperReq가 참인 경우 무시됩니다. 이 값을 참으로 ProgOperReq 값을 거짓으로 유지하면 명령어가 프로그램 제어로 잠깁니다.
기본값은 거짓입니다.
ProgOperReq
BOOL
프로그램 작업자 요청. 작업자 제어를 요청하려면 사용자 프로그램을 통해 참으로 설정합니다. 이 값을 참으로 유지하면 명령어가 작업자 제어로 잠깁니다.
기본값은 거짓입니다.
ProgAutoReq
BOOL
프로그램 자동 모드 요청. 램프/소크가 자동 모드로 되도록 요청하려면 사용자 프로그램에서 참으로 설정합니다. 루프가 작업자 제어인 경우, ProgManualReq가 참인 경우 또는 ProgHoldReq가 참인 경우 무시됩니다.
기본값은 거짓입니다.
ProgManualReq
BOOL
프로그램 수동 모드 요청. 램프/소크가 수동 모드로 되도록 요청하려면 사용자 프로그램에서 참으로 설정합니다. 램프/소크가 작업자 제어인 경우 또는 ProgHoldReq가 참인 경우 무시됩니다.
기본값은 거짓입니다.
ProgHoldReq
BOOL
프로그램 보류 모드 요청. Out, CurrentSeg 또는 SoakTimeLeft를 변경하지 않고 램프/소크 정지를 요청하려면 사용자 프로그램에서 참으로 설정합니다. 램프/소크에서 설정값을 가져오는 PID 루프가 캐스케이드를 벗어날 때에도 유용합니다. 작업자는 램프/소크를 작업자 수동 모드로 전환해도 동일한 효과를 얻을 수 있습니다.
기본값은 거짓입니다.
OperProgReq
BOOL
작업자 프로그램 요청. 프로그램 제어를 요청하려면 작업자 인터페이스에서 참으로 설정합니다. ProgOperReq가 참인 경우 무시됩니다. 명령어는 이 입력을 거짓으로 해제합니다.
기본값은 거짓입니다.
OperOperReq
BOOL
작업자 작업자 요청. 작업자 제어를 요청하려면 작업자 인터페이스에서 참으로 설정합니다. ProgProgReq가 참이고 ProgOperReq가 거짓인 경우 무시됩니다. 명령어는 이 입력을 거짓으로 해제합니다.
기본값은 거짓입니다.
OperAutoReq
BOOL
작업자 자동 모드 요청. 램프/소크가 자동 모드로 되도록 요청하려면 작업자 인터페이스에서 참으로 설정합니다. 루프가 프로그램 제어이거나 OperManualReq가 참인 경우 무시됩니다. 명령어는 이 입력을 거짓으로 해제합니다.
기본값은 거짓입니다.
OperManualReq
BOOL
작업자 수동 모드 요청. 램프/소크가 수동 모드로 되도록 요청하려면 작업자 인터페이스에서 참으로 설정합니다. 루프가 프로그램 제어인 경우 무시됩니다. 명령어는 이 입력을 거짓으로 해제합니다.
기본값은 거짓입니다.
Initialize
BOOL
프로그램 및 작업자 값을 초기화합니다. 참이고 수동일 때 명령어에서는 CurrentSegProg = 0, CurrentSegOper = 0, SoakTimeProg = SoakTime[0], SoakTimeOper = SoakTime[0]으로 설정합니다. 자동 또는 보류 모드인 경우 Initialize가 무시됩니다. 이 명령어는 이 파라미터를 거짓으로 해제합니다.
기본값은 거짓입니다.
ProgValueReset
BOOL
프로그램 제어 값 리셋. 해당 값이 참이면, 이 명령어는 ProgProgReq, ProgOperReq, ProgAutoReq, ProgHoldReq 및 ProgManualReq 파라미터를 거짓으로 해제합니다.
기본값은 거짓입니다.
출력 매개 변수
데이터 유형
설명
EnableOut
BOOL
명령어의 활성화 여부를 나타냅니다. Out이 오버플로되는 경우 거짓으로 해제됩니다.
Out
REAL
램프/소크 명령어 출력.
CurrentSeg
DINT
현재 세그먼트 번호. 램프/소크 사이클에서 현재 세그먼트의 번호를 표시합니다. 세그먼트에 0부터 번호를 지정합니다.
SoakTimeLeft
REAL
남은 소크 시간. 현재 소크에서 남은 소크 시간을 표시합니다.
GuarRampOn
BOOL
보장된 램프 상태. 보장된 램프 기능을 사용 중이며 PV와 출력이 RampDeadband 이상으로 차이가 나서 램프가 일시적으로 중단된 경우 참으로 설정합니다.
GuarSoakOn
BOOL
보장된 소크 상태. 보장된 소크 기능을 사용 중이며 PV와 출력이 SoakDeadband 이상으로 차이가 나서 소크 타이머가 해제된 경우 참으로 설정합니다.
ProgOper
BOOL
프로그램/작업자 제어 표시기. 프로그램 제어인 경우 참입니다. 작업자 제어인 경우 거짓입니다.
Auto
BOOL
자동 모드. 램프/소크가 프로그램 자동 또는 작업자 자동 모드일 때 참입니다.
Manual
BOOL
수동 모드. 램프/소크가 프로그램 수동 또는 작업자 수동 모드일 경우 참입니다.
Hold
BOOL
보류 모드. 램프/소크가 프로그램 보류 모드일 경우 참입니다.
Status
DINT
펑션 블록의 상태.
InstructFault (Status.0)
BOOL
명령어에서 다음 실행 에러 중 하나가 감지됩니다. 마이너 또는 메이저 컨트롤러 에러가 아닙니다. 나머지 상태 비트를 확인하여 발생한 에러를 판단합니다.
PVFaulted (Status.1)
BOOL
PVHealth 값이 상태 좋지 않습니다.
NumberOfSegsInv (Status.2)
BOOL
NumberOfSegs 값이 유효하지 않거나 배열 크기와 호환되지 않습니다.
RampDeadbandInv (Status.3)
BOOL
유효하지 않은 RampDeadband 값.
SoakDeadbandInv (Status.4)
BOOL
유효하지 않은 SoakDeadband 값.
CurrSegProgInv (Status.5)
BOOL
유효하지 않은 CurrSegProg 값.
SoakTimeProgInv (Status.6)
BOOL
유효하지 않은 SoakTimeProg 값.
CurrSegOperInv (Status.7)
BOOL
유효하지 않은 CurrSegOper 값.
SoakTimeOperInv (Status.8)
BOOL
유효하지 않은 SoakTimeOper 값.
RampValueInv (Status.9)
BOOL
유효하지 않은 RampValue 값.
SoakTimeInv (Status.10)
BOOL
유효하지 않은 SoakTime 값.
설명
RMPS 명령어는 일반적으로 배치 가열 프로세스에서 온도 프로파일을 제공하기 위해 사용됩니다. 이 명령어의 출력은 보통 PID 루프 설정값에 입력됩니다.
출력에 대해 계산된 값이 유효하지 않거나, NAN 또는 Plus or Minus sign INF인 경우 명령어는 Out을 유효하지 않은 값으로 설정하고 연산 오버플로 상태 플래그를 설정합니다. 내부 파라미터는 업데이트되지 않습니다. 각 후속 스캔에서는 마지막으로 출력이 유효했던 스캔의 내부 파라미터를 사용하여 출력을 계산합니다.
RMPS 명령어 모니터링
RMPS 명령어에 사용할 수 있는 작업자 면판이 있습니다.
연산 상태 플래그에 영향
아니요
주 폴트/부 폴트
이 명령어에만 해당되는 것은 없습니다. 피연산자 관련 폴트에 대해서는 공통 속성 항목을 참조하십시오.
실행
펑션 블록
조건/상태
수행한 작업
사전 스캔
EnableIn 및 EnableOut 비트가 거짓으로 해제됩니다.
Tag.EnableIn이 거짓임
EnableIn 및 EnableOut 비트가 거짓으로 해제됩니다.
Tag.EnableIn이 참임
EnableIn 및 EnableOut 비트가 참으로 설정됩니다.
명령어가 실행됩니다.
명령어 최초 실행
CurrentSeg를 0으로 해제합니다.
모드를 작업자 수동 모드로 설정하였습니다.
SoakTime[0]이 유효 범위인 경우 SoakTimeProg 및 SoakTimeOper를 SoakTime[0]으로 설정하였습니다.
명령어 최초 스캔
모든 작업자 요청 입력이 거짓으로 해제됩니다.
ProgValueReset이 참인 경우 모든 프로그램 요청 입력을 거짓으로 해제됩니다.
현재 모드가 보류인 경우 작업자 제어 모드를 수동 모드로 설정됩니다.
사후 스캔
EnableIn 및 EnableOut 비트가 거짓으로 해제됩니다.
구조화된 텍스트
조건/상태
수행한 작업
사전 스캔
펑션 블록 표의 사전 스캔을 참조하십시오.
정상 실행
펑션 블록 표에서 Tag.EnableIn이 참임을 참조하십시오.
사후 스캔
펑션 블록 표에서 사후 스캔을 참조하십시오.
명령어 최초 스캔에 적용된 초기 모드
다음 표에 프로그램 요청 입력을 기반으로 한 종료 제어가 표시됩니다.
최초 스캔 시작 시 제어
ProgOperReq
ProgProgReq
ProgValueReset
FirstRun
최초 스캔 종료 시 제어
작업자 제어
거짓
참
거짓
N/A
프로그램 제어
N/A
거짓
N/A
N/A
작업자 제어
프로그램 제어
참
N/A
거짓
거짓
작업자 제어
N/A
N/A
참
참
작업자 제어
거짓
거짓
거짓
참
작업자 제어
거짓
참
거짓
N/A
프로그램 제어
N/A
N/A
참
거짓
프로그램 제어
거짓
거짓
거짓
거짓
프로그램 제어
다음 표에 수동, 자동, 보류 모드 요청을 기반으로 하는 종료 제어가 표시됩니다.
최초 스캔 시작 시 제어
Oper
자동
요청
Oper
수동
요청
Prog
자동
요청
Prog
수동
요청
Prog
보류
요청
수동
보류
초기화 후
Prog
값
재설정
처음
실행
종료 시 제어
첫 스캔
작업자 제어
N/A
N/A
N/A
N/A
N/A
거짓
N/A
거짓
작업자 현재 모드
N/A
N/A
N/A
N/A
N/A
N/A
N/A
작업자 수동 모드
N/A
N/A
N/A
N/A
N/A
참
N/A
N/A
프로그램 제어
N/A
N/A
거짓
거짓
거짓
거짓
N/A
거짓
프로그램 현재 모드
N/A
N/A
N/A
N/A
N/A
거짓
참
거짓
N/A
N/A
참
거짓
거짓
거짓
거짓
N/A
프로그램 자동 모드
N/A
N/A
N/A
참
거짓
거짓
거짓
N/A
프로그램 수동 모드
N/A
N/A
N/A
N/A
참
거짓
거짓
N/A
프로그램 보류 모드
N/A
N/A
N/A
N/A
N/A
참
N/A
N/A
예
이 예에서 RMPS 명령어는 PIDE 명령어 설정값을 이끌어냅니다. PIDE 명령어가 캐스케이드/비율 모드인 경우 RMPS 명령어의 출력이 설정값으로 사용됩니다. 보장된 램핑 및/또는 보장된 소킹을 사용하려는 경우 PIDE 명령어에 대한 PV를 RMPS 명령어의 PV 입력으로 선택적으로 피딩할 수 있습니다.
이 예에서 AutoclaveRSSoakValue, AutoclaveRSSoakTime, AutoclaveRSRampValue 배열은 최대 10개의 세그먼트로 구성된 RMPS 프로파일을 허용하는 10개의 요소가 포함된 REAL 배열입니다.
펑션 블록
RMPS_FB_ex_v31
프로그램 제어 및 작업자 제어 간 전환
RMPS 명령어는 사용자 프로그램 또는 작업자 인터페이스를 통해 제어할 수 있습니다. 제어를 언제든지 변경할 수 있습니다.
RMPS Switch between
(1) ProgOperReq를 참으로 유지하면 명령어를 오퍼레이터 컨트롤로 잠글 수 있습니다.
(2) ProgOperReq가 거짓일 때 ProgProgReq를 참으로 유지하면 명령어를 프로그램 컨트롤로 잠글 수 있습니다.
ProgAutoReq, ProgManualReq 및 ProgHoldReq 입력이 거짓인 상태에서 작업자 제어에서 프로그램 제어로 전환할 경우 모드가 다음과 같이 결정됩니다.
명령어가 작업자 자동 모드로 설정되어 있었다면 프로그램 자동 모드로 전환됩니다.
명령어가 작업자 수동 모드로 설정되어 있었다면 프로그램 수동 모드로 전환됩니다.
OperAutoReq 및 OperManualReq 입력이 거짓인 상태에서 프로그램 제어에서 작업자 제어로 전환할 경우 모드가 다음과 같이 결정됩니다.
명령어가 프로그램 자동 모드로 설정되어 있었다면 작업자 자동 모드로 전환됩니다.
명령어가 프로그램 수동 또는 프로그램 보류 모드로 설정되어 있었다면 작업자 수동 모드로 전환됩니다.
프로그램 제어
다음 다이어그램에는 프로그램 제어일 때 RMPS 명령어 작동 방식이 표시됩니다.
RPMS_Program Control
(1) 단일(비주기적) 실행에서 램프/소크 프로파일 1회 실행이 완료되고 램프/소크 프로파일을 또 실행하기 원하는 경우 ProgAutoReq를 거짓에서 참으로 토글 전환해야 합니다.
(2) 명령어를 단일 실행으로 구성하고 자동 모드 램프-소크 프로파일이 완료된 경우 명령어가 보류 모드로 전환됩니다.
(3) PVFaulted가 참이거나 다음 입력 중 하나라도 유효하지 않은 경우 명령어가 보류 모드에 배치됩니다. NumberOfSegs, CurrentSegProg 또는 SoakTimeProg.
다음 표에는 가능한 프로그램 모드에 대한 설명이 나와 있습니다.
모드
설명
프로그램 자동 모드
자동 모드로 설정되어 있는 동안 명령어에서는 순차적으로 램프/소크 프로파일을 실행합니다.
프로그램 수동 모드
수동 모드로 설정되어 있는 동안 사용자 프로그램에서 직접 명령어 Out을 제어합니다. CurrentSegProg, SoakTimeProg, OutProg 입력이 CurrentSeg, SoakTimeLeft 및 Out 출력으로 전환됩니다. 명령어가 자동 모드에 배치되어 있는 경우 사용자 프로그램에서 마지막으로 입력한 값을 사용하여 램프/소크 함수가 다시 시작됩니다. CurrentSegProg 및 SoakTimeProg 값이 유효하지 않은 경우 전환되지 않습니다.
ProgValueReset이 설정되고 명령어가 프로그램 수동 모드가 아닐 때 수동 모드로의 "무충돌" 전환이 가능하도록 CurrentSegProg, SoakTimeProg, OutProg 입력이 CurrentSeg, SoakTimeLeft, Out의 현재 값으로 연속적으로 업데이트됩니다.
프로그램 보류 모드
보류 모드로 설정되어 있는 동안 명령어 출력은 현재 값으로 계속 유지됩니다. 이 모드에서 ProgOperReq가 작업자 제어로 변경하도록 설정되어 있는 경우 명령어가 작업자 수동 모드로 변경됩니다.
작업자 제어
다음 다이어그램에는 작업자 제어일 때 RMPS 명령어 작동 방식이 표시됩니다.
RPMS_Operator Control
(1) 명령어를 단일 실행으로 구성하고 자동 모드 램프/소크 프로파일이 완료되는 경우 명령어가 수동 모드로 전환됩니다.
(2) PVFaulted가 참이거나 다음 입력 중 하나라도 유효하지 않은 경우 명령어가 수동 모드에 배치됩니다. NumberOfSegs, CurrentSegOper 또는 SoakTimeOper.
다음 표에는 가능한 작업자 모드에 대한 설명이 나와 있습니다.
모드
설명
작업자 자동 모드
자동 모드로 설정되어 있는 동안 명령어에서는 순차적으로 램프/소크 프로파일을 실행합니다.
작업자 수동 모드
수동 모드로 설정되어 있는 동안 작업자가 직접 명령어 Out을 제어합니다. CurrentSegOper, SoakTimeOper, OutOper 입력이 CurrentSeg, SoakTimeLeft 및 Out 출력으로 전환됩니다. 명령어가 자동 모드에 배치되어 있는 경우 작업자가 마지막으로 입력한 값을 사용하여 램프/소크 함수가 다시 시작됩니다. CurrentSegOper 및 SoakTimeOper 값이 유효하지 않은 경우 전환되지 않습니다.
명령어가 오퍼레이터 수동 모드가 아닐 때는 언제든지 수동 모드로의 "무충돌" 전환이 가능하도록 CurrentSegOper, SoakTimeOper, OutOper 입력이 CurrentSeg, SoakTimeLeft, Out의 현재 값으로 연속적으로 업데이트됩니다.
램프/소크 프로파일 실행
다음 다이어그램은 RMPS 명령어에서 램프/소크 프로파일을 실행하는 방식을 보여줍니다.
RPMS_executing ramp soak profile
(1) Out = SoakValue일 때 램프가 완료됩니다. 램프 실행 동안 Out > SoakValue인 경우 Out이 SoakValue로 제한됩니다.
(2) 현재 세그먼트의 SoakTime에 지정된 시간 Out이 유지될 때 소킹이 완료됩니다. 실행된 세그먼트가 마지막 세그먼트가 아닌 경우 CurrentSeg가 1로 증가합니다.
(3) 프로그래밍된 마지막 세그먼트에 대한 소킹이 완료되었으면 명령어가 주기적 실행으로 구성됩니다. 명령어에서 CurrentSeg = 0으로 설정됩니다.
(4) 프로그래밍된 마지막 세그먼트에 대한 소킹이 완료되었으면 명령어가 단일 실행으로 구성됩니다.
(5) 자동 모드로 돌아갈 경우 명령어에서 램핑 또는 소킹이 다시 시작될지 결정합니다. 다음 동작은 현재 세그먼트의 Out, SoakTimeLeft 및 SoakValue에 따라 결정됩니다. 현재 세그먼트에서 Out = SoakValue이고 SoakTimeLeft = 0이면 현재 세그먼트가 완료고 다음 세그먼트가 시작됩니다.
램핑
램프 사이클에서 Out이 이전 세그먼트의 SoakValue에서 현재 세그먼트의 SoakValue로 램프 전환됩니다. 램프 통과 시간은 RampValue 매개 변수에 의해 정의됩니다.
Out < 현재 세그먼트의 SoakValue 목표값인 경우 램핑이 양의 방향입니다. 램프 수식으로 SoakValue 목표값을 초과하는 Out이 새로 계산되는 경우 Out이 SoakValue 목표값으로 설정됩니다.
Out > 현재 세그먼트의 SoakValue 목표값인 경우 램핑이 음의 방향입니다. 램프 수식으로 SoakValue 목표값보다 작은 Out이 새로 계산되는 경우 Out이 SoakValue 목표값으로 설정됩니다.
각 세그먼트마다 램프 값이 설정되어 있습니다. 시간 또는 비율 단위 중 선택하여 램프를 프로그래밍할 수 있습니다. 단 모든 세그먼트를 동일한 단위로 프로그래밍해야 합니다. 다음 표에는 램핑 옵션에 대한 설명이 나와 있습니다.
매개 변수
설명
시간 기준 램핑
시간(분) 기준 램핑의 경우 TimeRate가 참으로 설정됩니다.
Out이 현재 세그먼트의 소크 값에 도달할 때까지 현재 세그먼트의 변화율이 산출되고 Out에 합산되거나 차감됩니다. 다음 수식에서 DeltaT는 명령어가 마지막으로 실행된 후 경과 시간(분)입니다.
RPMS time-based ramping
여기에서 RampStart는 현재 세그먼트가 시작될 때의 Out 값입니다.
비율 기반 램핑
비율(단위/분) 기반 램핑의 경우 TimeRate가 거짓으로 해제됩니다.
Out이 현재 세그먼트의 소크 값에 도달할 때까지 프로그래밍된 변화율이 Out에 합산되거나 차감됩니다. 다음 수식에서 DeltaT는 명령어가 마지막으로 실행된 후 경과 시간(분)입니다.
RPMS_rated based ramping
보장된 램핑
보장된 램핑을 활성화하려면 GuarRamp 입력을 참으로 설정합니다. 활성화되면 이 명령어는 Out과 PV의 차이를 모니터링합니다. 차이가 프로그래밍된 RampDeadband를 벗어나는 경우 PV와 Out의 차이가 불감대 범위 이내로 될 때까지 출력이 변경되지 않습니다. 보장된 램핑이 적용되어 Out이 그대로 유지될 때는 언제나 GuarRampOn 출력이 참으로 설정되어 있습니다.
소킹
소킹은 다음 램프/소크 세그먼트가 시작될 때까지 블록 출력이 계속 변경되지 않은 채로 유지되는 시간입니다. 소크 사이클은 다음 세그먼트로 진행하기 전 프로그래밍된 시간 동안 출력을 SoakValue 값으로 유지합니다. 출력이 소킹해야 하는 시간은 SoakTime 매개 변수에서 프로그래밍됩니다.
각 세그먼트마다 SoakValue 및 SoakTime이 설정되어 있습니다. Out이 현재 세그먼트의 SoakValue 값까지 램프 전환될 때 소킹이 시작됩니다. SoakTimeLeft 파라미터는 출력 소킹의 남은 시간(분)을 나타냅니다. 램핑 동안 SoakTimeLeft는 현재 세그먼트의 SoakTime으로 설정됩니다. 램핑이 완료되면 SoakTimeLeft가 감소하여 현재 세그먼트의 남은 시간(분)을 반영합니다. SoakTime이 만료될 때 SoakTimeLeft = 0입니다.
보장된 소킹
보장된 소킹을 활성화하려면 GuarSoak 입력을 참으로 설정합니다. 활성화되면 이 명령어는 Out과 PV의 차이를 모니터링합니다. 차이가 SoakDeadband를 벗어나는 경우 소크 사이클의 타이밍이 중단되고 내부 소크 타이머가 해제됩니다. Out과 PV의 차이가 불감대 범위 이내로 돌아가면 타이밍이 다시 시작됩니다. 보장된 소킹이 적용되어 타이밍이 유지될 경우 GuarSoakOn 출력이 참으로 설정됩니다.
의견을 작성 부탁드립니다.
이 자료에 대한 문의사항이나 요청사항이 있습니까? 여기에 요청사항을 작성 부탁드립니다.
Normal