프로세스 탱크 스트래핑 테이블(Process Tank Strapping Table, PTST)

이 정보는 CompactLogix 5380P, ControlLogix 5580P 및 ControlLogix 5590P 컨트롤러에 적용됩니다.
프로세스 탱크 스트래핑 테이블(Process Tank Strapping Table, PTST) 명령어는 제품의 레벨과 탱크 보정 표에서 직교한 원위치 탱크의 제품 양을 계산합니다. 이 명령어는 다음을 보상할 수 있습니다.
  • 제품/물 인터페이스 레벨이 지정되어 탱크 하단의 여유 물입니다.
  • 셸 재료와 제품 및 주변 온도의 선형 확장 계수로 지정된 탱크 셸의 열 확장.
  • 제품 밀도가 제공되면 부동 탱크 덮개입니다.
프로세스 탱크 스트래핑 테이블(Process Tank Strapping Table, PTST) 명령어는 블록 간 계산 함수입니다.
사용 가능한 언어
래더 다이어그램
PTST_avail_LD
함수 블록 다이어그램
PTST_avail_FBD
구조화된 텍스트
PTST(PTST_tag, Cfg_CalTbl);
피연산자
중요: 다음과 같은 경우 작업 시 예외가 발생할 수 있습니다.
  • 출력 태그 피연산자가 덮어써집니다.
  • 구조 피연산자의 구성원이 덮어써집니다.
  • 지정된 경우를 제외하고 여러 명령어에서 구조 피연산자를 공유합니다.
명령어 내에서 숫자 데이터 유형을 혼합하기 위한 데이터 변환 규칙이 있습니다. 데이터 변환 항목을 참조하십시오.
구성 피연산자
피연산자
유형
형식
설명
PlantPAx Control
P_TANK_STRAPPING_TABLE
태그
명령어의 적절한 연산에 필요한 데이터 구조.
Cfg_CalTbl
P_STRAPPING_TABLE_ROW
태그
탱크 보정 표, 레벨 -> 볼륨.
P_TANK_STRAPPING_TABLE 구조
공개 구성원은 프로그래밍 방식으로 액세스할 수 있는 표준(표시) 태그 구성원입니다. 비공개의 숨겨진 구성원은 HMI 페이스 플레이트에서 사용되며 프로그래밍 방식으로 액세스할 수 없습니다. 비공개 구성원은 공개 구성원 다음의 별도의 테이블에 나열됩니다.
공개 입력 구성원
데이터 유형
설명
EnableIn
BOOL
활성화 입력. 래더 다이어그램: 렁-입력-조건에 해당합니다.
기본값은 참입니다.
Inp_InitializeReq
BOOL
1 = 명령어를 초기화하도록 요청합니다. 명령어는 명령어 최초 실행에서 정상적으로 초기화됩니다. 재초기화가 필요한 경우 이 요청을 사용합니다. 명령어에 의해 이 피연산자가 자동으로 지워집니다.
기본값은 참입니다.
Inp_Level
REAL
탱크 내 내장 레벨(피트 또는 미터)입니다. 유효값 = 모든 부동 소수점 수.
기본값은 0.0입니다.
Inp_FreeWaterLevel
REAL
주요 수준 단위(피트 또는 미터)로 표시한 탱크 내 내장 사용 가능한 물 인터페이스 레벨. 유효값 = 모든 부동 소수점 수.
기본값은 0.0입니다.
Inp_ObsAPI
REAL
제품 온도에서 관찰된 밀도 또는 도 API입니다. 중량 보정을 통해 변위를 계산하는 부동 루프 보정에 사용됩니다. 유효값 = 모든 부동 소수점 수.
기본값은 30.5입니다.
Inp_AvgProdTemp
REAL
평균 제품 온도 입력(화씨 또는 섭씨). 유효값 = 모든 부동 소수점 수.
기본값은 60.0입니다.
Inp_AmbTemp
REAL
주변 온도 입력(화씨 또는 섭씨). 유효값 = 모든 부동 소수점 수.
기본값은 60.0입니다.
Cfg_MinorPerMajor
REAL
표 부 단위(인치, 센티미터, 밀리미터, 주 단위당)(피트 또는 미터). 부 단위를 사용하지 않는 경우 유형 0.0입니다. 유효값 = 모든 부동 소수점 수.
기본값은 12.0입니다.
Cfg_HasCorrTempShell
BOOL
0= 탱크 셸의 온도 보정 없음. 1 = 탱크 셸의 온도 보정 포함.
기본값은 거짓입니다.
Cfg_HasFloatRoofAdj
BOOL
0 = 부동 루프 조정을 사용하지 마세요. 1 = 유체 레벨의 변위를 고려한 유동 조정을 포함합니다.
기본값은 거짓입니다.
Cfg_HasMoreObj
BOOL
1 = 추가 정보가 포함된 객체를 HMI에 알립니다.
기본값은 거짓입니다.
Cfg_CalTemp
REAL
탱크 보정 온도(일반적으로 60 °F 또는 15 °C). 유효값 = 모든 부동 소수점 수.
기본값은 60.0입니다.
Cfg_ShellCoefOfExp
REAL
탱크 셸 선형 열 팽창 계수(화씨당 1 또는 섭씨당 1). 유효값 = 모든 부동 소수점 수.
기본값은 0.0000062입니다.
Cfg_K
REAL
온도 가중치(절연 탱크의 경우 유형 0.0). API MPMS 2.2A Appendix D 참조. 유효값 = 모든 부동 소수점 수.
기본값은 7.0입니다.
Cfg_FloatRoofLevel
REAL
부동 루프 보상(피트)을 추가 또는 뺄 가장 낮은 레벨. 유효값 = 모든 부동 소수점 수.
기본값은 0.0입니다.
Cfg_FloatRoofCalAPI
REAL
부동 루프 데이터가 포함된 표의 도 API. 유효값 = 모든 부동 소수점 수.
기본값은 30.5입니다.
Cfg_FloatRoofVolPerAPI
REAL
보정 밀도(API 도 단위의 체적 단위 기준으로, 일반적으로 음수 값임)와 동일하지 않은 제품 밀도에 대한 표 값 조정. 유효값 = 모든 부동 소수점 수.
기본값은 -2.5입니다.
공개 출력 구성원
데이터 유형
설명
EnableOut
BOOL
활성화 출력. 이 출력 상태는 항상 EnableIn 입력 상태를 반영합니다.
Val_TotObsVol
REAL
보정 표에서 관찰된 원시 총량(배럴,갤런, 리터).
Val_FreeWater
REAL
자유 수량(배럴,갤런, 리터).
Val_TempShell
REAL
탱크 셀 온도를 화씨 또는 섭씨로 계산합니다.
Val_CorrTempShell
REAL
탱크 셸의 온도 보정(승수).
Val_FloatRoofAdj
REAL
부동 루프 조정 볼륨(배럴,갤런, 리터)입니다.
Val_GrossObsVol
REAL
1차 값: 총 관찰된 볼륨(API MPMS 12.1.1 참조).
Sts_Initialized
BOOL
1 = 명령어가 초기화됩니다. Inp_InitializeReq를 사용하여 다시 초기화합니다.
Sts_UnderMin
BOOL
Inp_Level 표 범위에서 가장 낮은 레벨입니다.
Sts_OverMax
BOOL
Inp_Level 표 범위에서 가장 높은 레벨보다 높습니다.
공개 InOut 구성원
데이터 유형
설명
Cfg_CalTbl
P_STRAPPING_TABLE_ROW[2]
탱크 보정 표(레벨 - 볼륨).
P_STRAPPING_TABLE_ROW 구조
구성원
데이터 유형
설명
주
REAL
주 단위(피트, 미터)의 수. 유효값 = 0.0~최대 양의 부동값.
부
REAL
부 단위의 수(인치, 센티미터 또는 밀리미터). 유효값 = 0.0~최대 양의 부동값.
볼륨
REAL
탱크 볼륨(오일 배럴,갤런, 리터)은 해당 레벨(피트, 인치)에 있습니다. 유효값 = 0.0~최대 양의 부동값.
연산
HMI용 문자열 구성
HMI 페이스 플레이트(FT 보기)과 Logix Designer 구성 대화 상자의 문자열을 구성합니다. 문자열은 태그 항목의 확장 속성으로 설정됩니다. 문자열을 Logix Designer에서만 구성합니다.
  • 설명
  • 그래픽 기호 레이블
  • HMI 페이스 플레이트 호출용 디스플레이 라이브러리
  • 명령어 이름
  • 영역 이름
  • URL 링크
  • 추가 정보
  • 총 볼륨 단위
  • 자유 수량 단위
  • 원시 볼륨 단위
  • 계산된 탱크 온도 단위
  • 탱크 온도 단위 보정
  • 부동 루프 조정 볼륨 단위
  • 탱크 보정 단위의 온도
  • API 단위의 온도
  • 레벨 단위
  • 볼륨 단위
  • 탱크 셸 선형 계수 단위의 온도
PTST 명령어 모니터링
Logix Designer 내에서 모니터링. PTST에 연결된 작업자 페이스 플레이트가 없습니다.
연산 상태 플래그에 영향
아니요.
주 폴트/부 폴트
이 명령어에만 해당되는 것은 없습니다. 배열 인덱스 폴트의 경우 배열을 통한 인덱스를 참조하세요.
실행
래더 다이어그램
조건/상태
수행한 작업
사전 스캔
렁-출력-조건이 거짓으로 해제됩니다.
명령어 최초 실행
모든 내부 상태 및 계산이 재설정됩니다.
명령어는 정상 실행됩니다.
렁-입력-조건이 거짓임
렁-출력-조건이 거짓으로 해제됩니다.
계산 값이 업데이트되지 않습니다(마지막 값 유지).
렁-입력-조건이 참임
렁-출력-조건을 렁-입력-조건으로 설정합니다.
명령어가 실행됩니다.
사후 스캔
렁-출력-조건이 거짓으로 해제됩니다.
함수 블록 다이어그램
조건/상태
수행한 작업
사전 스캔
EnableOut이 거짓으로 해제됩니다.
명령어 최초 실행
모든 내부 상태 및 계산이 재설정됩니다.
명령어는 정상 실행됩니다.
명령어 최초 스캔
함수 블록 다이어그램 표에서 명령어 최초 실행을 참조하십시오.
EnableIn이 거짓임
EnableOut이 거짓으로 해제됩니다.
계산 값이 업데이트되지 않습니다(마지막 값 유지).
EnableIn이 참임
EnableOut이 참으로 설정됩니다.
명령어가 실행됩니다.
사후 스캔
EnableIn 및 EnableOut 비트가 거짓으로 해제됩니다.
구조화된 텍스트
구조화된 텍스트에서 정상 스캔 중에 EnableIn은 항상 참입니다. 명령어는 로직에서 활성화한 컨트롤 경로에 있을 때 실행됩니다.
조건/상태
수행한 작업
사전 스캔
함수 블록 다이어그램 표의 사전 스캔을 참조하십시오.
명령어 최초 실행
함수 블록 다이어그램 표에서 명령어 최초 실행을 참조하십시오.
EnableIn이 참임
함수 블록 다이어그램 표의 EnableIn이 참인 경우를 참조하십시오.
사후 스캔
함수 블록 다이어그램 표에서 사후 스캔을 참조하십시오.
예
이 예에서 PTST 명령어는 측정된 저장 탱크 수준 및 저장 탱크 배타적 범위 정보를 기반으로 저장 탱크에서 제품의 양을 계산합니다. 부동 루프에는 변위가 없으며 변위에 대한 보상이 없습니다. 탱크의 열 확장을 고려하여 온도를 기준으로 조정은 없습니다.
래더 다이어그램
PTST_example_LD
함수 블록 다이어그램
PTST_example_FBD
측정된 저장 탱크 레벨은 입력 Inp_Level 사용하여 PTST 명령어에 연결합니다. 레벨은 피트 단위입니다. 저장 탱크의 높이가 4피트입니다. 이 예에서는 데이터가 6인치 증분입니다. 배선 표에는 9개의 행이 있습니다.
레벨(ft-in).
볼륨(배럴)
0-00
3.1
0-06
136.6
1-00
264.2
1-06
402.7
2-00
541.4
2-06
692.7
3-00
844.1
3-06
990.8
4-00
1137.5
컨트롤러에 스트래핑 테이블 정보를 저장하기 위해 태그 MyP_StrapTbl_CalTable 9 성분 배열인 [9]P_STRAPPING_TABLE_ROW 유형으로 만들어집니다.
. 주요
. 사소한
. 볼륨
MyP_StrapTbl_CalTable[0]
0
0
3.1
MyP_StrapTbl_CalTable[1]
0
6
136.6
MyP_StrapTbl_CalTable[2]
1
0
264.2
MyP_StrapTbl_CalTable[3]
1
6
402.7
MyP_StrapTbl_CalTable[4]
2
0
541.4
MyP_StrapTbl_CalTable[5]
2
6
692.7
MyP_StrapTbl_CalTable[6]
3
0
844.1
MyP_StrapTbl_CalTable[7]
3
6
990.8
MyP_StrapTbl_CalTable[8]
4
0
1137.5
PTST 명령어의 InOut 태그 Cfg_CalTbl은 명령어에 스트래핑 테이블 정보를 제공하기 위해 MyP_StrapTbl_CalTable 새 배열을 가리키도록 수정됩니다. 그러면 PTST 출력이 다른 PAI 명령어에 연결됩니다. 출력은 저장 탱크의 계산된 양입니다.
구조화된 텍스트
MyPTST.Inp_Level := MyLevel.Val;
MyVolume.Inp_PVUncertain := MyLevel.Sts_PVUncertain;
MyVolume.Inp_PVData := MyPTST.Val_TotObsVol;
PAI(MyLevel);
PTST(MyPTST,MyP_StrapTbl_CalTable);
PAI(MyVolume);
의견을 작성 부탁드립니다.
이 자료에 대한 문의사항이나 요청사항이 있습니까? 여기에 요청사항을 작성 부탁드립니다.
Normal