파일 정렬(File Sort, SRT)
이 정보는
CompactLogix
5370, ControlLogix
5570, Compact GuardLogix
5370, GuardLogix
5570, Compact GuardLogix
5380, CompactLogix
5380, ControlLogix
5580, GuardLogix
5580 및 ControlLogix 5590 컨트롤러에 적용됩니다. 컨트롤러 구분이 있을 때는 언급합니다.SRT 명령어가 값 세트를 배열의 한 차원(Dim to vary)에 오름차순으로 정렬합니다.
사용 가능한 언어
래더 다이어그램

펑션 블록
이 명령어는 함수 블록에서 사용할 수 없습니다.
구조화된 텍스트
SRT(Array,Dimtovary,Control);
피연산자
래더 다이어그램
피연산자 | 유형 | 형식 | 설명 |
|---|---|---|---|
Array | SINT INT DINT REAL | 배열 태그 | 정렬할 배열 정렬할 요소 그룹의 첫 번째 요소 지정 |
Dimension to vary | DINT | 즉시 (0, 1, 2) | 사용할 차원 차원 순서: array[0,1,2] |
Control | CONTROL | 태그 | 연산의 제어 구조 |
Length | DINT | 즉시 | 정렬할 배열의 요소 수 |
Position | DINT | 즉시 | 배열의 현재 요소 초기값은 일반적으로 0입니다. |
Length 및 Position(제어 태그의 .LEN 및 .POS에 해당)은 의사 피연산자입니다. 자세한 내용은 의사 피연산자 초기화 항목을 참조하십시오.
구조화된 텍스트
피연산자 | 유형 | 형식 | 설명 |
|---|---|---|---|
Array | SINT INT DINT REAL | 배열 태그 | 정렬할 배열 정렬할 요소 그룹의 첫 번째 요소 지정 |
Dimension to vary | DINT | 즉시 (0, 1, 2) | 사용할 차원 차원 순서: array[0,1,2] |
Control | CONTROL | 태그 | 연산의 제어 구조 |
Length | DINT | 즉시 | 정렬할 배열의 요소 수. 지정된 Length 및 Position 값은 CONTROL 구조의 .LEN 및 .POS 구성원에서 액세스합니다. |
Position | DINT | 즉시 | 배열의 현재 요소 초기값은 일반적으로 0입니다. 지정된 Length 및 Position 값은 CONTROL 구조의 .LEN 및 .POS 구성원에서 액세스합니다. |
스트럭쳐드 텍스트 내 식의 구문에 대한 자세한 내용은 스트럭쳐드 텍스트 구문을 참조하십시오.
CONTROL 구조
니모닉 | 데이터 유형 | 설명 |
|---|---|---|
.EN | BOOL | 활성화 비트는 SRT 명령어가 활성화되었음을 나타냅니다. |
.DN | BOOL | 완료 비트는 명령어가 배열의 마지막 요소에서 작동된 경우에 설정됩니다. |
.ER | BOOL | 에러 비트는 .LEN < 0 또는 .POS < 0인 경우에 설정됩니다. 이러한 조건 중 하나가 충족되어도 메이저 폴트가 발생합니다. .ER 비트가 설정되면 명령어가 실행되지 않습니다. |
.LEN | DINT | 길이 워드는 명령어가 작동되는 배열의 요소 수를 지정합니다. |
.POS | DINT | 위치 워드는 명령어가 액세스하는 현재 요소를 식별합니다. |
설명
SRT 명령어가 값 세트를 배열의 한 차원(Dim to vary)에 오름차순으로 정렬합니다.
중요:
명령어가 변경하지 않으려는 데이터를 변경하지 않는지 테스트하고 확인해야 합니다.
SRT 명령어는 연속 데이터 메모리에서 작동합니다. 의 경우에만 명령어의 범위가 기본 태그로 제한됩니다. SRT 명령어가 기본 태그의 외부에 데이터를 쓰지 않지만 구성원 경계를 넘어설 수 있습니다. 구조의 구성원인 배열을 지정하고 길이가 해당 배열의 크기를 초과할 경우 SRT 명령어가 변경하지 않으려는 데이터를 변경하지 않는지 테스트하고 확인해야 합니다.
CompactLogix
5370, ControlLogix
5570, Compact GuardLogix
5370 및 GuardLogix
5570 컨트롤러CompactLogix
5380, ControlLogix
5580, Compact GuardLogix
5380, GuardLogix
5580 및 ControlLogix 5590 컨트롤러이 전환 명령어에서 명령어가 실행되려면 릴레이 래더가 렁-입력-조건을 거짓에서 참으로 토글 전환합니다.
연산 상태 플래그에 영향
컨트롤러 | 연산 상태 플래그에 영향 |
|---|---|
CompactLogix 5380, ControlLogix 5580, Compact GuardLogix 5380, GuardLogix 5580 및 ControlLogix 5590 컨트롤러 | 아니요 |
CompactLogix 5370, ControlLogix 5570, Compact GuardLogix 5370 및 GuardLogix 5570 컨트롤러 | 예 |
주 폴트/부 폴트
메이저 폴트는 다음과 같은 경우에 발생합니다. | 폴트 유형 | 폴트 코드 |
|---|---|---|
.POS < 0 또는 .LEN < 0 | 4 | 21 |
변경할 차원 > 차원 수 | 4 | 20 |
Length > 배열의 끝 | 4 | 20 |
피연산자 관련 폴트의 경우
공통 속성
을 참조하세요.실행
래더 다이어그램
조건/상태 | 수행한 작업 |
|---|---|
사전 스캔 | N/A. |
렁-입력-조건이 거짓임 | .EN 비트가 거짓으로 해제됩니다. .EN 비트가 거짓으로 해제됩니다. .DN 비트가 거짓으로 해제됩니다. |
렁-입력-조건이 참임 | 명령어가 실행됩니다. |
사후 스캔 | N/A. |
구조화된 텍스트
조건/상태 | 수행한 작업 |
|---|---|
사전 스캔 | 래더 다이어그램 표의 사전 스캔을 참조하십시오. |
정상 실행 | 이 명령어를 실행하려면 전환이 필요하므로 거짓으로 실행된 다음 참으로 실행됩니다. 자세한 내용은 래더 다이어그램 표를 참조하십시오. |
사후 스캔 | 래더 다이어그램 표에서 사후 스캔 섹션을 참조하십시오. |
예
예 1
DINT[4,5]에 해당하는 DINT_array를 정렬합니다.

래더 다이어그램

구조화된 텍스트
IF sort1 then
control_1.LEN := 4;
control_1.POS := 0;
SRT(DINT_array[0,2],0, control_1);
END_IF;
예 2
DINT[4,5]에 해당하는 DINT_array를 정렬합니다.

래더 다이어그램

구조화된 텍스트
ctrl.LEN := 4;
ctrl.POS := 0;
SRT(DINT_array[0,2],0, ctrl);
의견을 작성 부탁드립니다.