프로세스 허용(Process Permissives, PPERM)
이 정보는 CompactLogix 5380P, ControlLogix 5580P 및 ControlLogix 5590P 컨트롤러에 적용됩니다.
프로세스 허용(Process Permissives, PPERM) 명령어는 장비에 전원을 공급할 수 있는 허용 조건을 수집하거나 요약합니다. 대부분의 경우 장비에 전원을 공급하려면 허용 조건이 참이어야 합니다. 장비에 전원이 공급되면 허용이 무시됩니다.
새 PPERM 명령어는 다음을 제공합니다.
- 허용 입력 정상 확인. 입력 평가. 모든 입력이 구성된 정상 상태인 경우 명령어는 모든 허용 정상 상태를 참으로 설정합니다.
- 허용 바이패스. 바이패스할 수 없도록 구성된 허용 입력과 바이패스할 수 있는 입력(Cfg_Bypassable.x = 1) 그리고 바이패스하도록 설정된 입력(MSet_Bypass.x = 1)을 평가합니다. 해당 조건들이 구성된 정상 상태이면, 명령어는 '모든 바이패스 불가 허용 정상 상태'를 참으로 설정합니다.
- 요약 상태. 32개의 허용 입력 조건을 두 개의 1차 상태 비트로 요약합니다.
- Sts_PermOK. 바이패스 상태와 관계없이 모든 허용 조건이 해제됨(바이패스 상태와 관계없이 실행 준비 상태)을 나타냅니다.
- Sts_NBPermOK. 모든 바이패스 불가 허용 조건이 해제되고 바이패스 가능한 모든 허용 조건이 해제되거나 바이패스됨(허용이 바이패스된 경우 실행 준비됨)을 나타냅니다.
사용 가능한 언어
래더 다이어그램

함수 블록 다이어그램

구조화된 텍스트
PPERM (PPERM tag);
피연산자
중요:
다음과 같은 경우 작업 시 예외가 발생할 수 있습니다.
- 출력 태그 피연산자가 덮어써집니다.
- 구조 피연산자의 구성원이 덮어써집니다.
- 지정된 경우를 제외하고 여러 명령어에서 구조 피연산자를 공유합니다.
명령어 내에서 숫자 데이터 유형을 혼합하기 위한 데이터 변환 규칙이 있습니다. 데이터 변환 항목을 참조하십시오.
구성 피연산자
피연산자 | 유형 | 형식 | 설명 |
|---|---|---|---|
PlantPAx Control | P_PERMISSIVE | 태그 | 명령어의 적절한 연산에 필요한 데이터 구조. |
P_PERMISSIVE 구조
공개 구성원은 프로그래밍 방식으로 액세스할 수 있는 표준(표시) 태그 구성원입니다. 비공개의 숨겨진 구성원은 HMI 페이스 플레이트에서 사용되며 프로그래밍 방식으로 액세스할 수 없습니다. 비공개 구성원은 공개 구성원 다음의 별도의 테이블에 나열됩니다.
공개 입력 구성원 | 데이터 유형 | 설명 |
|---|---|---|
EnableIn | BOOL | 활성화 입력 - 시스템 정의 매개 변수 기본값은 참입니다. |
Inp_InitializeReq | BOOL | 1 = 명령어를 초기화하도록 요청합니다. 명령어는 명령어 최초 실행에서 정상적으로 초기화됩니다. 다시 초기화할 때 이 요청을 사용합니다. 명령어에 의해 이 피연산자가 자동으로 지워집니다. 기본값은 참입니다. |
Inp_Perm00 | BOOL | 허용 조건 00, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm01 | BOOL | 허용 조건 01, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm02 | BOOL | 허용 조건 02, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm03 | BOOL | 허용 조건 03, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm04 | BOOL | 허용 조건 04, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm05 | BOOL | 허용 조건 05, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm06 | BOOL | 허용 조건 06, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm07 | BOOL | 허용 조건 07, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm08 | BOOL | 허용 조건 08, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm09 | BOOL | 허용 조건 09, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm10 | BOOL | 허용 조건 10, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm11 | BOOL | 허용 조건 11, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm12 | BOOL | 허용 조건 12, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm13 | BOOL | 허용 조건 13, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm14 | BOOL | 허용 조건 14, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm15 | BOOL | 허용 조건 15, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm16 | BOOL | 허용 조건 16, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm17 | BOOL | 허용 조건 17, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm18 | BOOL | 허용 조건 18, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm19 | BOOL | 허용 조건 19, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm20 | BOOL | 허용 조건 20, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm21 | BOOL | 허용 조건 21, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm22 | BOOL | 허용 조건 22, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm23 | BOOL | 허용 조건 23, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm24 | BOOL | 허용 조건 24, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm25 | BOOL | 허용 조건 25, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm26 | BOOL | 허용 조건 26, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm27 | BOOL | 허용 조건 27, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm28 | BOOL | 허용 조건 28, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm29 | BOOL | 허용 조건 29, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm30 | BOOL | 허용 조건 30, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_Perm31 | BOOL | 허용 조건 31, 정상 상태로 구성된 경우 전원을 공급합니다. 기본값은 참입니다. |
Inp_BypassActive | BOOL | 1 = 허용 바이패스가 현재 활성 상태입니다. 기본값은 거짓입니다. |
Cfg_OKState | DINT | 비트는 각 입력의 상태(0 또는 1)가 전원 공급하기에 정상임을 나타냅니다. 기본값은 2#1111_1111_1111_1111_1111_1111_1111_1111입니다. |
Cfg_Bypassable | DINT | 설정 비트는 바이패스 가능한 조건을 나타냅니다. 기본값은 2#0000_0000_0000_0000_0000_0000_0000_0000입니다. |
Cfg_HasMoreObj | BOOL | 1 = 자세한 정보를 볼 수 있는 객체를 HMI에 알립니다. 기본값은 거짓입니다. |
Cfg_HasNav | DINT | 설정 비트는 활성화된 탐색 버튼을 나타냅니다. 기본값은 2#0000_0000_0000_0000_0000_0000_0000_0000입니다. |
공개 출력 구성원 | 데이터 유형 | 설명 |
|---|---|---|
EnableOut | BOOL | 활성화 출력 - 시스템 정의 매개 변수 |
Sts_Initialized | BOOL | 1 = 명령어가 초기화됩니다. Inp_InitializeReq를 사용하여 다시 초기화합니다. |
Sts_PermOK | BOOL | 전체 허용 상태(1 = 전원 공급하기에 정상임). |
Sts_NBPermOK | BOOL | 바이패스 불가 허용 상태(1 = 모든 바이패스 불가 허용이 전원 공급하기에 정상임). |
Sts_BypActive | BOOL | 1 = 허용 바이패스가 활성 상태입니다(바이패스 가능 허용 무시). |
Sts_Perm | DINT | 개별 허용 상태(1 = 확인, 0 = 전원 공급 안 함). |
개인 입력 구성원 | 데이터 유형 | 설명 |
|---|---|---|
MSet_Bypass | DINT | 개별 조건 유지 관리 바이패스를 전환합니다. 기본값은 2#0000_0000_0000_0000_0000_0000_0000_0000입니다. |
개인 출력 구성원 | 데이터 유형 | 설명 |
|---|---|---|
N/A | N/A | N/A |
연산
이 다이어그램은 PPERM 명령어의 기능을 보여줍니다.

HMI용 문자열 구성
HMI 페이스 플레이트(FT 보기)과 Logix Designer 구성 대화 상자의 문자열을 구성합니다. 문자열은 태그 항목의 확장 속성으로 설정됩니다. 문자열을 Logix Designer에서만 구성합니다.
- 설명
- 그래픽 기호 레이블
- HMI 페이스 플레이트 호출용 디스플레이 라이브러리
- 명령어 이름
- 영역 이름
- URL 링크
- 입력 조건부 텍스트
- 탐색 경로
- 추가 정보
PPERM 명령어 모니터링
모니터링을 위해 프로세스 객체의 PlantPAx 라이브러리에서 작업자 페이스 플레이트를 사용합니다.
연산 상태 플래그에 영향
아니요.
주 폴트/부 폴트
이 명령어에만 해당되는 것은 없습니다. 배열 인덱스 폴트의 경우 배열을 통한 인덱스를 참조하세요.
실행
래더 다이어그램
조건/상태 | 수행한 작업 |
|---|---|
사전 스캔 | 렁-출력-조건이 거짓으로 해제됩니다. |
명령어 최초 실행 | 명령어는 정상 실행됩니다. |
렁-입력-조건이 거짓임 | 렁-출력-조건이 거짓으로 해제됩니다. 이 명령어가 오프 스캔인 경우 허용 정상 상태 요약 비트를 거짓으로 설정합니다. 바이패스로 구성된 조건에 대해서만 개별 허용 바이패스를 설정합니다. 바이패스 불가 입력에 대한 모든 MSets는 해제됩니다. |
렁-입력-조건이 참임 | 렁-출력-조건을 렁-입력-조건으로 설정합니다. 명령어가 실행됩니다. |
사후 스캔 | 렁-출력-조건이 거짓으로 해제됩니다. |
함수 블록 다이어그램
조건/상태 | 수행한 작업 |
|---|---|
사전 스캔 | EnableOut이 거짓으로 해제됩니다. |
명령어 최초 실행 | 명령어는 정상 실행됩니다. |
명령어 최초 스캔 | 함수 블록 다이어그램 표에서 명령어 최초 실행을 참조하십시오. |
EnableIn이 거짓임 | EnableOut이 거짓으로 해제됩니다. 이 명령어가 오프 스캔인 경우 허용 정상 상태 요약 비트를 거짓으로 설정합니다. 바이패스로 구성된 조건에 대해서만 개별 허용 바이패스를 설정합니다. 바이패스 불가 입력에 대한 모든 MSets는 해제됩니다. |
EnableIn이 참임 | EnableOut이 참으로 설정됩니다. 명령어가 실행됩니다. |
사후 스캔 | EnableIn 및 EnableOut 비트가 거짓으로 해제됩니다. |
구조화된 텍스트
구조화된 텍스트에서 정상 스캔 중에 EnableIn은 항상 참입니다. 명령어는 로직에서 활성화한 컨트롤 경로에 있을 때 실행됩니다.
조건/상태 | 수행한 작업 |
|---|---|
사전 스캔 | 함수 블록 다이어그램 표의 사전 스캔을 참조하십시오. |
명령어 최초 실행 | 함수 블록 다이어그램 표에서 명령어 최초 실행을 참조하십시오. |
EnableIn이 참임 | 함수 블록 다이어그램 표의 EnableIn이 참인 경우를 참조하십시오. |
사후 스캔 | 함수 블록 다이어그램 표에서 사후 스캔을 참조하십시오. |
예
래더 다이어그램


함수 블록 다이어그램

구조화된 텍스트
P182_Motor_1Perm.Inp_BypActive := P182_Motor.Sts_BypActive;
PPERM(P182_Motor_1Perm);
P182_Motor.Inp_1PermOK := P182_Motor_1Perm.Sts_PermOK;
P182_Motor.Inp_1NBPermOK := P182_Motor_1Perm.Sts_NBPermOK;
P182_Motor.Inp_Hand := E300_P182:I.OperatorStationLocalLEDReadback;
P182_Motor.XCmd_Start1 := E300_P182:I.Pt03Data;
P182_Motor.XCmd_Start2 := E300_P182:I.Pt04Data;
P182_Motor.XCmd_Stop := NOT(E300_P182:I.Pt05Data);
P182_Motor.XCmd_Acq := E300_P182:I.Pt02Data;
PMTR_ci(P182_Motor,P182_CtrlSet,P182_CtrlCmd,P182_CtrlSts);
의견을 작성 부탁드립니다.