모션 조정 직선 이동(Motion Coordinated Linear Move, MCLM)

이 정보는
CompactLogix
5370,
ControlLogix
5570,
Compact GuardLogix
5370,
GuardLogix
5570,
Compact GuardLogix
5380,
CompactLogix
5380,
ControlLogix
5580,
GuardLogix
5580 및 ControlLogix 5590 컨트롤러에 적용됩니다.
모션 좌표 선형 이동(MCLM) 명령어를 사용하여 데카르트 좌표계 내의 지정된 축에 대한 단일 또는 다차원의 직선 조정 이동을 시작하십시오. 절대 또는 증분으로 새 위치를 정의할 수 있습니다.
중요: 명령어의 모션 제어 속성에 사용하는 태그는 한 번만 사용해야 합니다. 다른 명령어에서 모션 제어 태그를 다시 사용할 경우 오작동이 발생할 수 있습니다. 장비 손상 또는 부상으로 이어질 수도 있습니다.
중요: 속도 및/또는 끝 위치 오버슈트 위험
이동 역학을 변경하거나(MCD 또는 MCCD) 마지막 명령어가 완료되기 전에 새로운 명령어를 시작하는 등의 방법을 사용하여 이동 파라미터를 동적으로 변경하는 경우 속도 및/또는 끝 위치 오버슈트 위험이 발생할 수 있다는 점을 알아두십시오.
사다리꼴 속도 프로파일은 이동이 감속 중이거나 감속 시점에 가까워지는 상태에서 최대 감속도가 감소하면 오버슈트할 수 있습니다.
S-곡선 속도 프로파일은 다음 경우에 오버슈트할 수 있습니다.
이동이 감속 중이거나 감속 시점에 가까워지는 상태에서 최대 감속도가 감소하는 경우 또는
최대 가속 저크가 감소하고 축이 가속 중인 경우 그렇지만 시간 비율(%)로 저크가 지정된 경우 저크가 간접적으로 변경될 수 있습니다.
아키텍처 및 안전 지원
아키텍처
표준
안전
CompactLogix 5370, ControlLogix 5570, Compact GuardLogix 5370 및 GuardLogix 5570 컨트롤러
예
아니요
Compact GuardLogix 5380, CompactLogix 5380, ControlLogix 5580, GuardLogix 5580 및 ControlLogix 5590 컨트롤러
예
아니요
  • 이것은 전환 명령어입니다. 사용할 경우 다음 단계를 수행하십시오.
    • 래더 로직에서 명령어가 실행되어야 할 때마다 렁-입력-조건을 거짓에서 참으로 전환하는 명령어를 삽입합니다.
    • Structured Text 루틴에서 명령어가 전환 시에만 실행되도록 하는 조건을 삽입합니다.
사용 가능한 언어
래더 다이어그램
MCLM_LD_avail_v31
펑션 블록
이 명령어는 함수 블록에서 사용할 수 없습니다.
구조화된 텍스트
MCLM (CoordinateSystem, MotionControl, MoveType, Position, Speed, Speedunits, Accelrate, Accelunits, Decelrate, Decelunits, Profile, Acceljerk, Deceljerk, Jerkunits, TerminationType, Merge, Mergespeed, CommandTolerance,LockPosition, LockDirection, EventDistance, CalculatedData);
피연산자
명령어 내에서 혼합된 데이터 유형을 위한 데이터 변환 규칙이 있습니다. 데이터 변환 항목을 참조하십시오.
래더 다이어그램과 스트럭쳐드 텍스트
모션 조정 직선 이동(Motion Coordinated Linear Move, MCLM) 명령어는 최대 3개의 축을 사용하여 직선 이동을 수행하며 이러한 축들은 데카르트 좌표계의 기본 축으로서 정적으로 연결되어 있습니다. 절대 또는 증분 목표 위치 사용 여부, 원하는 속도, 최대 가속도, 최대 감속도, 가속 저크, 감속 저크 및 각각의 단위를 지정합니다. 실제 속도는 프로그래밍된 속도 단위(좌표 시스템에 대해 구성된 초당 단위 또는 최대값 비율(%))와 이동하도록 명령 처리된 기본 축 조합의 함수입니다. 모든 축이 동시에 프로그래밍된 끝점(목표 위치)에 도달할 수 있는 속도로 각각의 축이 이동하도록 명령 처리됩니다.
피연산자
유형
형식
설명
좌표계
COORDINATE_SYSTEM
태그
조정된 축 그룹.
조정된 축 그룹 참조. REF_TO 모션 데이터 유형을 지원하는 컨트롤러의 경우 좌표계 피연산자 유형을 REF_TO_COORDINATE_SYSTEM 유형으로 바꿀 수 있습니다.
모션 제어
MOTION_INSTRUCTION
태그
명령어 상태 파라미터에 액세스하는 데 사용되는 구조.
이동 유형
SINT, INT 또는 DINT
즉시 또는 태그
이동 유형 선택:
0 = 절대
1 = 증분
위치
REAL
배열 태그 [ ]
[좌표 단위]
속도
SINT, INT, DINT 또는 REAL
즉시 또는 태그
[좌표 단위]
속도 단위
SINT, INT 또는 DINT
즉시
0 = 단위/초
1 = 최대값 비율(%)
4 = 단위/마스터 단위
가속률
SINT, INT, DINT 또는 REAL
즉시 또는 태그
[좌표 단위]
가속도 단위
SINT, INT 또는 DINT
즉시
0 = 단위/초
2
1 = 최대값 비율(%)
4 = 단위/마스터 단위
2
감속률
SINT, INT, DINT 또는 REAL
즉시 또는 태그
[좌표 단위]
감속 단위
SINT, INT 또는 DINT
즉시
0 = 단위/초
2
1 = 최대값 비율(%)
4 = 단위/마스터 단위
2
프로파일
SINT, INT 또는 DINT
즉시
0 = 사다리꼴
1 = S-곡선
가속 저크
SINT, INT, DINT 또는 REAL
즉시 또는 태그
가속 및 감속 저크 피연산자 값은 반드시 입력해야 합니다. 이 명령어는 프로파일 피연산자가 S-곡선으로 구성된 경우에만 값을 사용합니다.
다음 저크 단위로 저크율을 입력합니다.
0 = 단위/초
3
1 = 최대값 비율(%)
2 = 시간 비율(%)
4 = 단위/마스터 단위
3
6 = 시간-마스터 구동 비율(%)
다음 값을 사용하여 시작합니다.
가속 저크 = 100 (시간 비율(%))
감속 저크 = 100 (시간 비율(%))
저크 단위 = 2
감속 저크
SINT, INT, DINT 또는 REAL
즉시 또는 태그
저크 단위
SINT, INT 또는 DINT
즉시
종료 유형
SINT, INT 또는 DINT
즉시 또는 태그
0 = 실제 공차
1 = 해결 안 됨
2 = 명령 공차
3 = 감속 안 함
4 = 제한된 한계 속도 준수
5 = 제한되지 않은 한계 속도 준수
6 = 프로그래밍된 명령 공차
아래의 관련 항목 섹션에서 종료 유형 선택을 참조하십시오.
병합
SINT, INT 또는 DINT
즉시
0 = 비활성화
1 = 조정 모션
2 = 모든 모션
병합 속도
SINT, INT 또는 DINT
즉시
0 = 프로그래밍됨
1 = 현재
명령 공차
REAL
즉시, 실수 또는 태그
혼합이 시작되어야 하는 조정 이동 상의 위치. 이 파라미터는 종료 유형 6을 사용하는 경우 좌표 시스템의 명령 공차 대신에 사용됩니다.
팁
: 종료 유형 2는 종료 유형 6과 동일하지만 좌표 시스템의 명령 공차 값을 사용하고 이 파라미터가 무시됩니다.
잠금 위치
REAL
태그
마스터 축 상의 위치로 슬레이브 축에서 이동이 시작된 후 여기에서 슬레이브가 마스터 다음에 시작해야 합니다.
자세한 내용은 아래 구조 섹션을 참조하십시오.
잠금 방향
UINT32
즉시
잠금 위치를 사용해야 하는 조건을 지정합니다.
자세한 내용은 아래 구조 섹션을 참조하십시오.
이벤트 거리
REAL ARRAY 또는 0
배열 태그
이동의 끝점에서 측정한 이동 상의 위치.
자세한 내용은 아래 구조 섹션을 참조하십시오.
계산된 데이터
REAL
ARRAY 또는 0
배열 태그
이동의 시작부터 이벤트 거리 지점까지 이동하는 데 필요한 마스터 거리(또는 시간).
자세한 내용은 아래 구조 섹션을 참조하십시오.
스트럭쳐드 텍스트의 피연산자 값에 열거형 값을 입력하는 경우 여러 개의 워드 열거형을 공백 없이 입력해야 합니다. 예: 감속도 단위를 입력할 때 래더 로직에 표시된 초당 단위
2
대신 unitspersec
2
로 값을 입력해야 합니다.
스트럭쳐드 텍스트 내 식의 구문에 대한 자세한 내용은 스트럭쳐드 텍스트 구문을 참조하십시오.
스트럭쳐드 텍스트 피연산자를 입력할 때 지침으로 이 표의 항목을 참조하십시오.
피연산자
다음 옵션은
텍스트로 입력
또는
좌표계
열거형 없음
태그
모션 제어
열거형 없음
태그
이동 유형
열거형 없음
0(절대)
1(증분)
위치
열거형 없음
배열 태그
속도
열거형 없음
즉시 또는 태그
속도 단위
unitspersec
%ofmaximum
unitspermasterunits
0
1
4
가속률
열거형 없음
즉시 또는 태그
가속도 단위
unitspersec
2
%ofmaximum
unitspermasterunit
2
0
1
4
감속률
열거형 없음
즉시 또는 태그
감속도 단위
unitspersec
2
%ofmaximum
unitspermasterunit
2
0
1
4
프로파일
사다리꼴
S-곡선
0
1
가속 저크
열거형 없음
즉시 또는 태그
가속 저크 및 감속 저크 피연산자 값을 반드시 입력해야 합니다. 이 명령어는 프로파일이 S-곡선으로 구성된 경우에만 값을 사용합니다.
다음 값을 사용하여 시작합니다.
가속 저크 = 100 (시간 비율(%))
감속 저크 = 100 (시간 비율(%))
저크 단위 = 2
감속 저크
열거형 없음
저크 단위
unitspersec
3
%ofmaximum
%oftime
unitspermasternit3
%oftimemasterdriven
0
1
2(이 값을 사용하여 시작하기)
4
6
종료 유형
열거형 없음
0 = 실제 공차
1 = 해결 안 됨
2 = 명령 공차
3 = 감속 안 함
4 = 제한된 한계 속도 준수
5 = 제한되지 않은 한계 속도 준수
6 = 프로그래밍된 명령 공차
아래의 관련 항목 섹션에서 종료 유형 선택을 참조하십시오.
병합
비활성화됨
coordinatedmotion
allmotion
0
1
2
병합 속도
프로그래밍됨
현재
0
1
명령 공차
열거형 없음
즉시 또는 태그
잠금 위치
열거형 없음
즉시, 실수 또는 태그
잠금 방향
없음
immediateforwardonly
immediatereverseonly
positionforward
positionreverse
0
1
2
3
4
이벤트 거리
열거형 없음
Array
계산된 데이터
열거형 없음
Array
좌표계
좌표 시스템 피연산자는 데카르트 좌표계의 차원을 정의하는 모션 축 세트를 지정합니다. 이번 릴리스에서는 좌표 시스템의 기본 축이 최대 3개까지 지원됩니다. 기본 축으로 구성된 축만 좌표 속도 계산에 포함됩니다.
모션 제어
다음은 MCLM 명령어의 영향을 받는 제어 비트입니다.
니모닉
설명
.EN(활성화) 비트 31
활성화 비트는 렁 상태가 거짓에서 참으로 전환될 때 설정되고 참에서 거짓으로 전환될 때 리셋됩니다.
.DN(완료) 비트 29
완료 비트는 조정 명령어가 확인을 거쳐 대기열 배치 완료되었을 때 설정됩니다. 큐에 있을 때 설정되기 때문에 큐에서 실행 전환 후 확인 작업 동안 런타임 에러가 발생할 때에 설정되는 것으로 보일 수 있습니다. 렁 상태가 거짓에서 참으로 전환할 때 리셋됩니다.
.ER(에러) 비트 28
에러 비트는 렁 상태가 거짓에서 참으로 전환할 때 리셋됩니다. 조정 이동이 성공적으로 시작되지 않았을 때 설정됩니다. 대기 중인 명령어에 런타임 에러가 발생하는 경우에도 완료 비트와 함께 설정됩니다.
.IP(진행 중) 비트 26
처리 중 비트는 조정 이동이 성공적으로 시작될 때 설정됩니다. 이어지는 이동이 없고 조정 이동이 새 위치에 도달하거나, 이어지는 이동이 있고 조정 이동이 완료 유형의 사양에 도달하거나, 조정 이동이 조정 이동의 병합 유형이 포함된 다른 MCLM 또는 MCCM 명령어로 대체되거나, MCS 명령어에 의해 종료되면 비트가 리셋됩니다.
.AC(활성) 비트 23
조정 이동 명령어가 큐에 있는 경우 활성 비트를 통해 모션을 제어하는 명령어를 알 수 있습니다. 조정 이동이 활성으로 될 때 설정됩니다. 프로세스 완료 비트가 설정되거나 명령어가 중지될 때 리셋됩니다.
.PC(프로세스 완료) 비트 27
프로세스 완료 비트는 렁 상태가 거짓에서 참으로 전환할 때 리셋됩니다. 이어지는 이동이 없고 조정 이동이 새 위치에 도달하거나, 이어지는 이동이 있고 조정 이동이 지정한 종료 유형에 도달하면 설정됩니다.
.ACCEL(가속 비트) 비트 00
조정 이동이 가속 단계에 있는 동안 가속 비트가 설정됩니다. 조정 이동이 일정한 속도이거나 감속 단계에 있거나 조정 모션이 종료되면 리셋됩니다.
.DECEL(감속 비트) 비트 01
조정 이동이 감속 단계에 있는 동안 감속 비트가 설정됩니다. 조정 이동이 일정한 속도이거나 가속 단계에 있거나 조정 모션이 종료되면 리셋됩니다.
.CalculatedDataAvailable 비트 02
CalculatedDataAvailable 비트는 이러한 명령어의 명령어 화면 파라미터인 Event Distance 요청에 응답하여 설정됩니다.
.TrackingMaster 비트 03
MDSC 모드에서 가속이 완료되면 TrackingMaster 비트가 설정됩니다. 즉 슬레이브 축이 마스터 축과 동기화되어 있습니다. 슬레이브 축에서 다음 상황이 발생하면 리셋됩니다.
슬레이브 축이 MCD 또는 MAS가 실행되는 등의 이유로 가속 또는 감속하기 시작하는 경우.
슬레이브 축이 다른 마스터 축에 연결되는 경우. 이런 경우 슬레이브 축이 새 마스터 축을 다시 추적하기 시작할 때 새 명령어 상태 워드에 비트가 다시 설정됩니다.
슬레이브 축이 정지되는 경우. 슬레이브 축에서 정지가 시작되는 즉시 추적 마스터가 해제됩니다.
이 비트는 Lock Direction== NONE일 경우에는 절대로 설정되지 않습니다.
슬레이브의 추적 마스터 비트는 마스터 축 상의 작업(즉, 중지, MCD 등)의 영향을 받지 않습니다.
추적 마스터 비트는 시간 기반 모드에서 항상 해제됩니다.
이동 유형
이동 유형 피연산자를 통해 조정 이동 경로를 나타내는 방법을 지정합니다. 이동 유형은 절대 또는 증분으로 지정 가능합니다.
  • 절대 - 피연산자로 지정된 속도, 가속률 및 감속률로 위치 배열로 정의된 위치까지 직선 경로를 통한 축 이동.
회전 작업에 대한 축이 구성된 경우 절대 이동 유형은 직선 축에서와 동일한 방식으로 작동합니다. 축 위치가 언와인드 파라미터를 초과하는 경우 축이 언와인드됩니다. 이런 식으로 축 위치는 언와인드 값보다 크거나 0보다 작지 않습니다.
지정된 위치의 부호는 보간기에서 해석되며 양 또는 음의 부호일 수 있습니다. 음의 위치 값은 보간기에 원하는 절대 위치에 도달하기 위해 음의 방향으로 회전 축을 이동하도록 지시하는 한편 양의 값은 목표 위치에 도달하기 위해 양의 모션이 필요함을 나타냅니다. 위치 값이 언와인드 값보다 크면 에러가 발생합니다. 축이 언와인드 주기를 1회 이동하면 절대 위치에서 중지됩니다.
  • 증분 - 좌표 시스템이 직선 경로를 통해 각각의 피연산자에 의해 결정된 가속률 및 감속률을 사용하여 지정된 속도로 위치 배열에서 정의된 거리를 이동합니다.
지정된 거리는 보간기에서 해석되며 값이 양 또는 음일 수 있습니다. 음의 위치 값은 보간기에 음의 방향으로 축을 이동하도록 지시하는 한편 양의 값은 목표 위치에 도달하기 위해 양의 모션이 필요함을 나타냅니다. 증분 모드에서는 언와인드 1회 주기보다 큰 모션이 허용됩니다.
위치
1차원 배열로 여기에서 차원은 좌표 시스템에 지정된 축의 수와 최소한 같도록 정의됩니다. 위치 배열은 새로운 절대 또는 증분 위치를 정의합니다.
속도
속도 피연산자는 좌표 이동의 경로를 따라 최대 벡터 속도를 정의합니다.
속도 단위
속도 단위 피연산자는 지정된 좌표 시스템의 좌표 단위 값을 직접 입력하거나 좌표 시스템에 정의된 최대값의 비율(%)로 속도 피연산자에 적용된 단위를 정의합니다.
가속률
가속률 피연산자는 조정 이동의 경로를 따라 최대 가속도를 정의합니다.
가속도 단위
가속도 단위 피연산자는 지정된 좌표 시스템의 좌표 단위 값을 직접 입력하거나 좌표 시스템에 정의된 최대값의 비율(%)로 가속률 피연산자에 적용된 단위를 정의합니다.
감속률
감속률 피연산자는 좌표 이동의 경로를 따라 최대 감속도를 정의합니다.
감속 단위
감속도 단위 피연산자는 지정된 좌표 시스템의 좌표 단위 값을 직접 입력하거나 좌표 시스템에 정의된 최대값의 비율(%)로 감속률 피연산자에 적용된 단위를 정의합니다.
프로파일
프로파일 피연산자는 조정 이동 시 사다리꼴 또는 S-곡선 속도 프로파일을 사용할지 여부를 결정합니다.
ControlLogix
모션 컨트롤러는 사다리꼴(직선 가속 및 감속) 및 S-곡선(제어된 저크) 속도 프로파일을 제공합니다. 이러한 모션 프로파일이 다양한 응용 프로그램 요구 사항에 미치는 영향에 대한 지침이 아래에 나와 있습니다.
속도 프로파일 효과
프로파일
ACC/DEC
모터
제어 우선 순위
최우선 ~ 최하위
사다리꼴
가장 빠름
성능 저하
Acc/Dec
속도
위치
S-곡선
2배 느림
최고 성능
저크
Acc/Dec
속도
위치
사다리꼴
사다리꼴 속도 프로파일은 이어지는 모션을 프로그래밍할 때 최대한의 유연성 및 가장 빠른 가속 및 감속 시간을 제공하므로 가장 일반적으로 사용되는 프로파일입니다. 가속도 및 감속도를 통해 최대 속도 변화가 지정됩니다. 저크는 사다리꼴 프로파일의 요소가 아니므로 무한으로 간주되어 다음 그래프에 여러 개의 수직선으로 표시됩니다.
L5K_Trapezoidal_v31
S-곡선
S-곡선 속도 프로파일은 기계적 시스템 상의 응력과 부하를 최소화해야 할 경우 많이 사용됩니다. 그렇지만 S-곡선 프로파일은 사다리꼴 프로파일에 비해 가속 및 감속 시간이 저하됩니다. 속도가 가속 또는 감속할 수 있는 최대 비율은 저크에 의해 추가로 제한됩니다.
다음 명령어가 시작될 때 조정 모션 가속 및 감속 저크율 계산이 수행됩니다.
  • MAJ
  • MCS
  • MAM
  • MCCD
  • MAS
  • MCCM
  • MCD
  • MCLM
계산된 저크율은 다음 다이어그램에 나온 것처럼 삼각형 모양의 가속도 및 감속도 프로파일을 생성합니다.
S-곡선 가속/감속 시간
L5K_S_curve accel_decel time
S-곡선 이동의 경우 이동 길이가 아닌 프로그래밍 속도, 가속도 및 감속도 값을 기준으로 저크율이 결정됩니다.
Logix Designer
소프트웨어는 이동이 프로그래밍된 속도에 도달할 만큼 길지 않더라도(속도 제한된 이동) 동일한 가속도 및 감속도 값을 사용하는 이동을 혼합할 때 저크율을 일정하게 유지하려고 시도합니다.
S-곡선 이동의 구성 형태
속도 증가의 영향
속도가 제한되지 않음
이동의 실행 시간 감소
속도 제한됨
이동의 실행 시간 증가
속도가 0으로 프로그래밍된 S-곡선의 저크율은 속도가 0이 아닌 이전 명령어에 대해 프로그래밍된 속도에 의해 결정됩니다.
MCCD 명령어에 의한 변경의 영향에 관한 자세한 내용은 MCCD 명령어를 참조하십시오.
가속 저크
가속 저크는 프로그래밍된 이동의 최대 가속 저크를 정의합니다. 가속 저크 계산에 대한 자세한 내용은 아래 저크 단위 섹션을 참조하십시오.
감속 저크
감속 저크는 프로그래밍된 이동의 최대 감속 저크를 정의합니다. 감속 저크 계산에 대한 자세한 내용은 아래 저크 단위 섹션을 참조하십시오.
저크 단위
저크 단위는 가속 저크 및 감속 저크 피연산자에 입력한 값에 적용되는 단위를 정의합니다. 지정된 좌표 시스템의 위치 단위 값을 직접 입력하거나 비율로 입력할 수 있습니다. 최대값 비율(%)을 사용하여 구성된 경우 좌표 시스템 속성에 지정된 최대 가속 저크 및 최대 감속 저크 피연산자의 비율로 저크가 적용됩니다. 시간 비율(%)을 사용하여 구성된 경우 명령어에 지정된 속도, 가속률 및 감속률을 기준으로 하는 비율 값이 사용됩니다.
종료 유형
마스터 구동 속도 제어(MDSC) 명령어에서 모든 순차 명령어가 동일 모드로 실행되면(마스터 구동 모드 또는 시간 구동 모드) 모든 종료 유형이 지원됩니다. 조정 모션 큐에서 종료 유형이 전환되는 경우 모션 시퀀스 유형에 따라 에러가 발생할 수 있습니다.
다음은 슬레이브 좌표 시스템의 이동이 혼합 종료 유형(종료 유형 2, 3 또는 6)을 사용하고 MDSC 모드로 프로그래밍된 경우에만 적용됩니다.
모션 시퀀스의 마지막 MCLM 명령어에서 반환된 계산된 데이터를 사용하여 마스터 축이 모션 시퀀스가 PC 전환되기 위해 이동해야 하는 길이를 프로그래밍하는 경우 계산된 데이터에 안전을 위한 작은 여유를 추가해야 할 가능성이 있습니다. 이러한 여유를 추가하지 않을 경우 슬레이브 좌표 시스템에 프로그래밍된 전체 모션 시퀀스가 끝나기 전에 마스터 축의 모션이 완료될 가능성이 있습니다. 이런 경우 슬레이브 좌표 시스템의 마지막 모션 명령어는 계속 활성이며 PC로 되지 않습니다. 작은 안전 여유 값은 다음과 같이 모션 시퀀스의 첫 번째 및 마지막 이동에 사용된 명령 공차에 따라 달라집니다.
팁: 안전 여유 계산 시 다음 약어를 사용합니다.
CUP = 기본 업데이트 기간
MAS = 마스터 축 속도
  1. 시퀀스의 첫 번째 이동에 100% 명령 공차 값이 사용된 경우
    SafetyMargin1 = CUP * MAS
    그렇지 않으면
    SafetyMargin1 = CUP * MAS * .02
  2. 혼합 시퀀스의 첫 번째 및 마지막 이동 사이의 다른 모든 이동의 경우
    SafetyMargin2 = CUP * MAS * .02 * 첫 번째 및 마지막 이동 사이 혼합 이동의 수
  3. 시퀀스의 마지막 이동에 100% 명령 공차 값이 사용된 경우
    SafetyMargin3 = CUP * MAS
    그렇지 않으면
    SafetyMargin3 = CUP * MAS * .02
  4. 최종 SafetyMargin = SafetyMargin1 + SafetyMargin2 + SafetyMargin3
    시퀀스가 프로그래밍되고 확인되면 반복됩니다.
병합
병합 피연산자는 지정된 모든 축의 모션을 순수한 조정 이동으로 전환할지 여부를 결정합니다. 병합 옵션은 다음과 같습니다. 병합 사용 안 함, 조정 모션 또는 모든 모션.
  • 병합 사용 안 함
    지정된 좌표 시스템에 정의된 축을 포함하는 현재 실행 중인 단일 축 모션 명령어의 경우 이 명령어를 활성화하여도 영향을 받지 않으며 명령어의 영향을 받는 축에 모션이 겹쳐집니다. 또한 지정된 동일한 좌표 시스템을 포함하는 조정 모션 명령어의 경우 실행되어 종료 유형에 따라 완료됩니다.
  • 조정 모션
    지정된 동일한 좌표 시스템을 포함하는 현재 실행 중인 조정 모션 명령어가 종료됩니다. 활성 모션은 병합 속도 파라미터에 정의된 속도로 현재 이동에 혼합됩니다. 보류 중인 조정 모션 명령어의 경우 취소됩니다. 지정된 좌표 시스템에 정의된 축을 포함하는 현재 실행 중인 좌표 시스템 단일 축 모션 명령어의 경우 이 명령어를 활성화하여도 영향을 받지 않으며 명령어의 영향을 받는 축에 모션이 겹쳐집니다.
  • 모든 모션
    지정된 좌표 시스템에 정의된 축을 포함하는 현재 실행 중인 단일 축 모션 명령어와 현재 실행 중인 조정 모션 명령어가 종료됩니다. 이전 모션은 병합 속도 파라미터에 정의된 속도로 현재 이동에 병합됩니다. 보류 중인 조정 이동 명령어의 경우 취소됩니다.
병합 속도
병합 속도 피연산자는 병합이 활성화될 때 조정 이동의 경로를 따라 최대 속도로 현재 속도가 사용되는지 아니면 프로그래밍 속도가 사용되는지 정의합니다.
현재 조정 모션은 조정 모션 명령어 한 개만 큐에 지정할 수 있습니다. 따라서 MovePendingStatus 비트와 MovePendingQueueFullStatus 비트가 항상 같습니다.
병합 명령어에 대한 추가 정보
아래 그림에 나온 것처럼 A지점에서 B지점으로 이동이 시작됩니다. 축이 C지점에 있는 경우 D지점까지 증분 병합이 시작됩니다. 따라서 현재 명령어는 C지점에서 종료됩니다. 제어는 현재 속도에서 속도가 0이 될 때까지 벡터 AB를 따라 C지점에서 필요한 감속 거리를 계산합니다. 이 거리는 벡터 CF로 표시됩니다. 그런 다음 C지점에 벡터 CF를 추가하여 가상의 F지점을 계산합니다. 그 결과로 생긴 C지점에서 D지점까지 병합 모션은 아래 그림에 나와 있습니다. 모션은 C에서 시작하는 곡선을 따라가다가 F에서 D에 이르는 직선에 이어집니다. D지점은 병합 명령어의 증분 데이터를 사용하여 병합 원점(C지점)으로부터 계산됩니다. 이 경로는 종료 유형이 감속 안 함이고 A지점에서 F지점, 그 다음에는 F지점에서 D지점으로 프로그래밍된 원래의 이동이 이루어지는 경우와 동일합니다.
MCLM Point A to Point B
이 예는 직선 병합에 적용됩니다.
회전 이동을 병합하려고 하면 결과로 생기는 경로가 원이 아닐 경우 프로그래밍 에러가 발생할 수 있습니다. 증분 모드의 원 중심은 C지점으로부터 계산됩니다(병합 지점). 하지만 F지점(계산된 감속 끝점)부터 병합된 이동의 끝점에 이르는 원이 존재해야 합니다.
증분 모드에서 병합
조정 모션의 병합은 MAM에서의 병합과는 다르게 작동합니다. MCLM의 경우 병합 지점에서 완료되지 않은 모션은 폐기됩니다. 예를 들어 절대 위치 = 0에서 시작하고 프로그래밍된 증분 거리 = 4단위로 증분 모드로 프로그래밍된 단일 축 MCLM을 가정해 보십시오. 절대 위치 1에서 병합이 발생하고 병합은 4단위의 다른 증분 이동인 경우 위치 = 5에서 이동이 완료됩니다.
이 예가 증분 모드로 프로그래밍된 MAM에서 발생하는 경우 최종 위치 = 8입니다.
MCLM 목표 위치 입력(MCLM Target Position Entry) 대화 상자
MCLM 명령어의 목표 위치 입력(Target Position Entry) 대화 상자에서 쉽게 위치를 편집할 수 있습니다. 목표 위치 입력(Target Position Entry) 대화 상자에 액세스할 수 있는 권한을 얻으려면 명령어에 좌표 시스템 이름을 삽입하고 축 수를 처리하기에 충부한 요소가 포함된 위치 필드에 유효한 태그 이름이 입력되어 있어야 하며 이동 유형을 맞게 선택했어야 합니다.
MCLM 명령어 목표 위치 입력(Target Position Entry) 대화 상자에 액세스하려면 명령어 화면의 위치 라인 뒤에 있는 줄임표를 누릅니다.
목표 위치 입력(Target Position Entry) 대화 상자에 액세스하기 위한 MCLM 래더 유효 범위 값
MCLM_Ladder Valid Values_Pg407_v31
래더 명령어 화면의 위치(Position) 라인에 있는 줄임표 단추를 누르면 위치 값을 편집할 수 있는 목표 위치(Target Position) 탭이 호출됩니다.
팁: 이 작업은 참조에 대해 불가능합니다.
대화 상자 제목에 명령어의 좌표 시스템과 태그 이름이 표시됩니다.
기능
설명
축 이름
이 필드에는 좌표 시스템에 포함된 각 축의 이름이 나열됩니다. 이 대화 상자에서는 축 이름을 변경할 수 없습니다.
목표 위치/목표 증분
이 필드에는 명령어 화면에 지정된 조정 이동의 끝점 또는 증분이 들어 있습니다. 이는 숫자 값입니다.
실제 위치
이 값은 좌표 시스템에 있는 축의 지금 현재 실제 위치입니다. 이러한 위치는 온라인 상태이고 좌표 시스템 자동 태그 업데이트가 활성화되어 있는 경우 동적으로 업데이트됩니다.
목표값 = 실제값 설정(Set Targets = Actuals) 단추
절대 모드인 경우 이 단추를 누르면 실제 위치 값이 목표 위치 열(Target Position Column)에 자동으로 복사됩니다.
증분 모드인 경우 이 단추를 누르면 실제 위치 값이 목표 증분(Target Increment) 열에 자동으로 복사됩니다.
선택한 이동 유형에 따라 목표값 = 실제값 설정(Set Targets = Actuals) 단추의 모양과 가용성 표시 여부가 달라집니다.
이동 유형이 절대인 경우 대상 열의 제목이 목표 위치(Target Position)로 지정되고 이동 유형이 증분이면 대상 열의 이름이 목표 증분(Target Increment)으로 지정되고 목표값 = 실제값 설정(Set Targets = Actuals) 단추가 흐리게 표시됩니다.
MCLM은 전환 명령어입니다.
  • 릴레이 래더에서 명령어가 실행되어야 할 때마다 렁-입력-조건을 거짓에서 참으로 전환합니다.
  • 스트럭쳐드 텍스트에서는 명령어가 전환 시에만 실행되도록 조건을 구성합니다. 스트럭쳐드 텍스트 구문을 참조하십시오.
구조
마스터 구동 속도 제어(Master Driven Speed Control, MDSC) 기능을 통해 MCLM 명령어에서 사용할 수 있는 입력 및 출력 파라미터를 보려면 입력 및 출력 매개 변수 구조 항목을 참조하십시오. 이 파라미터 중 하나가 활성이 되기 전 MDCC 명령어를 실행하여 해당 명령어가 활성이어야 합니다(IP 비트 설정됨).
연산 상태 플래그에 영향
아니요
주 폴트/부 폴트
이 명령어에만 해당되는 것은 없습니다. 초기화되지 않은 참조 또는 잘못된 유형의 참조가 좌표계 피연산자로 전달되면 주 폴트가 발생할 수 있습니다. 피연산자 관련 폴트에 대해서는 공통 속성 항목을 참조하십시오.
실행
래더 다이어그램
조건/상태
수행한 작업
사전 스캔
.EN, .DN, .ER 및 .IP 비트는 거짓으로 해제됩니다.
렁-입력-조건이 거짓임
.DN 또는 .ER 비트가 참인 경우 .EN 비트는 거짓으로 해제됩니다.
렁-입력-조건이 참임
.EN 비트가 참으로 설정되고 명령어가 실행됩니다.
사후 스캔
N/A
구조화된 텍스트
조건/상태
수행한 작업
사전 스캔
래더 다이어그램 표의 사전 스캔을 참조하십시오.
정상 실행
래더 다이어그램 표에서 렁-입력-조건이 거짓임을 참조하고 이어서 렁이 참임을 참조하십시오.
사후 스캔
래더 다이어그램 표에서 사후 스캔 섹션을 참조하십시오.
런타임 에러 조건
마스터 속도가 0인 경우 시간 구동 모드에서 마스터 구동 모드로 전환할 수 없습니다. 단 슬레이브 속도마저 0이 아니어야 합니다.
확장 에러 코드
확장 에러 코드를 사용하면 이 특정 명령어에 대해 표시되는 에러 메세지를 추가로 정의할 수 있습니다. 메세지와 연결된 에러 코드에 따라 확장 코드의 동작이 다릅니다.
서보가 꺼진 상태 (5), 종료 상태 (7), 서보가 아닌 축 유형 (8), 축 구성 안 됨 (11), 호밍 중 에러(16) 및 잘못된 축 데이터 유형 (38) 에러의 확장 에러 코드는 모두 동일한 방식으로 작동합니다. 확장 에러 코드에 대해 0 ~ n 사이의 숫자가 표시됩니다. 이 숫자는 좌표 시스템에서 에러 상태인 축을 나타내는 인덱스입니다.
축 구성 안 됨 (11) 에러 코드의 경우 -1이라는 추가 값이 있어서 좌표 시스템에서 조정 모션의 축을 설정할 수 없음을 나타냅니다. 모션 명령어는 모션 에러 코드 .ERR 항목을 참조하십시오.
MCLM 명령어에서 에러 코드 13 - 매개 변수가 범위를 벗어나면 확장 에러에서 문제의 매개 변수를 나타내는 숫자(0부터 시작하여 위에서 아래로 번호순으로 페이스 플레이트에 나열됨)가 반환됩니다. 예를 들어 2는 이동 유형 매개 변수 값이 에러 상태임을 나타냅니다.
참조 에러 코드 및 번호
확장 에러 번호 표시
명령어 파라미터
설명
범위를 벗어난 파라미터(13)
2
이동 유형
이동 유형이 0보다 작거나 1보다 큽니다.
범위를 벗어난 파라미터(13)
3
위치
위치 배열이 좌표 시스템의 모든 축 위치를 표시할 만큼 크지 않습니다.
범위를 벗어난 파라미터(13)
4
속도
속도가 0 미만입니다.
범위를 벗어난 파라미터(13)
6
가속률
가속률이 0 이하입니다.
범위를 벗어난 파라미터(13)
8
감속률
감속률이 0 이하입니다.
범위를 벗어난 파라미터(13)
11
종료 유형
종료 유형이 0보다 작거나 3보다 큽니다.
에러 코드 54 – 최대 감속도 값이 0인 경우 확장 에러에서 양수(0-n)가 반환되면 좌표 시스템의 문제 있는 축을 지칭합니다. 좌표 시스템 속성의 일반 탭으로 이동하여 축 그리드의 괄호([ ]) 열을 아래를 보고 최대 감속도 값이 0인 축을 확인합니다. 문제의 축 옆에 있는 줄임표 단추를 클릭하여 축 속성 화면에 액세스합니다. 다이내믹 탭으로 이동하여 최대 감속도 값을 적절히 변경합니다. 확장 에러 번호가 -1이라면 좌표 시스템의 최대 감속도 값이 0이라는 의미입니다. 좌표 시스템 속성의 다이내믹 탭으로 이동하여 최대 감속도 값을 수정합니다.
MCLM에 의한 상태 비트 변경
상태 비트는 모션 명령어의 진행 상태를 모니터링하는 수단을 제공합니다. 관련 정보를 제공하는 세 가지 유형의 상태 비트가 있습니다.
  • 축 상태 비트
  • 좌표 시스템 상태 비트
  • 조정 모션 상태 비트
MCLM 명령어가 시작되면 상태 비트는 다음과 같은 변경을 거칩니다.
모션 명령어 미리 정의된 데이터 유형 상태 비트
축 상태 비트
비트 이름
의미
CoordinatedMotionStatus
명령어가 시작되면 설정됩니다. 명령어가 종료되면 해제됩니다.
좌표 시스템 상태 비트
비트 이름
의미
MotionStatus
MCLM 명령어가 활성이고 좌표 시스템이 관련 축에 연결되어 있으면 설정됩니다.
조정된 모션 상태 비트
비트 이름
의미
AccelStatus
벡터가 가속 중일 때 설정됩니다. 혼합이 진행 중이거나 벡터 이동이 감속 중일 때 해제됩니다.
DecelStatus
벡터가 감속 중일 때 설정됩니다. 혼합이 진행 중이거나 벡터 이동이 가속 중일 때 해제됩니다.
ActualPosToleranceStatus
실제 공차 종료 유형에 한해 설정됩니다. 다음 두 조건이 충족된 후 설정됩니다. 1) 보간이 완료됩니다. 2) 프로그래밍된 끝점까지 실제 거리가 구성된 좌표 시스템 실제 허용 범위 값보다 작습니다. 명령어가 완료된 후 비트가 계속 설정되어 있습니다. 새 명령어가 시작되면 비트가 리셋됩니다.
CommandPosToleranceStatus
프로그래밍된 끝점까지의 거리가 구성된 좌표 시스템 명령 공차보다 짧을 때는 항상 모든 종료 유형에 대해 설정합니다. 명령어가 완료된 후 비트가 계속 설정되어 있습니다. 새 명령어가 시작되면 리셋됩니다.
좌표 시스템의 CommandPosToleranceStatus(CS_CMD_POS_TOL_STS) 상태 비트는 다음과 같이 설정됩니다.
TT0, TT1, TT4, TT5 - 끝점까지의 거리가 명령 공차 값보다 작은 경우 비트가 설정됩니다.
처음 이동이 완료되면 비트가 지워집니다.
TT2, TT6 - 끝점까지의 거리가 명령 공차 값보다 짧은 경우 비트가 설정됩니다.
혼합이 시작되면(즉, 두 번째 이동이 시작되면) 비트가 지워집니다. 따라서 명령 공차(CT) 지점에서 혼합이 시작되면 비트가 보이지 않을 수 있습니다. 다음 이동이 짧은 이동이거나 인접하는 두 이동의 가속 및 감속 시간이 일치하면 혼합이 CT 지점을 벗어나 약간 지연될 수 있습니다.
TT3 - 끝점까지의 거리가 명령 공차 값보다 짧은 경우 비트가 설정됩니다(TT2 및 TT6과 유사함).
혼합이 시작되면 비트가 지워집니다. 따라서 감속 지점에서 혼합이 시작되면 비트가 보이지 않을 수 있습니다. 다음 이동이 짧은 이동이거나 인접하는 두 이동의 가속 및 감속 시간이 일치하면 혼합이 감속 지점을 벗어나 약간 지연될 수 있습니다.
StoppingStatus
MCLM 명령어가 시작되면 정지 상태 비트가 지워집니다.
MoveStatus
MCLM이 축 모션을 시작할 때 설정됩니다. 마지막 모션 명령어의 .PC 비트에서 또는 정지가 발생하는 모션 명령어가 실행되면 지워집니다.
MoveTransitionStatus
감속 없음 또는 명령 공차 종료 유형이 충족되면 설정됩니다. 혼합 공선이 이동할 경우 시스템이 항상 경로 위에 있으므로 비트가 설정되지 않습니다. 혼합이 완료되거나, 보류 중인 명령어 모션이 시작되거나, 정지를 발생시키는 모션 명령어가 실행될 때 해제됩니다. 경로 위에 있지 않음을 나타냅니다.
MovePendingQueueFullStatus
명령어 큐가 가득 찬 경우 설정됩니다. 큐에 새 조정 모션 명령어를 위한 공간이 있는 경우 지워집니다.
CoordinateSystemLockStatus
MCLM 또는 MCCM 명령어에 대해 축 잠금이 요청되고 축이 잠금 위치를 교차한 경우 설정됩니다. MCLM 또는 MCCM이 시작되면 해제됩니다.
MCLM 또는 MCCM 명령어가 시작되자마자 즉시 정방향만 및 즉시 역방향만 열거형에 대한 비트가 설정됩니다.
마스터 축이 지정된 방향의 잠금 위치를 교차할 때 열거형이 위치 정방향만 또는 위치 역방향만인 경우 비트가 설정됩니다. 열거형이 없음인 경우 비트가 설정되지 않습니다.
마스터 축의 방향이 반전되거나 마스터 축을 따라 슬레이브 축이 정지하는 경우 CoordMotionLockStatus 비트가 해제됩니다. 마스터 축을 따라 슬레이브 좌표 시스템이 다시 시작되는 경우 CoordMotionLockStatus 비트가 다시 설정됩니다. MCCS가 시작되면 CoordMotionLockStatus 비트도 지워집니다.
현재 조정 모션은 조정 모션 명령어 한 개만 큐에 지정할 수 있습니다. 따라서 MovePendingStatus 비트와 MovePendingQueueFullStatus 비트가 항상 같습니다.
마스터 구동 속도 제어(Master Driven Speed Control, MDSC) 및 모션 지시 명령 지원
모션 지시 명령은 MCLM 명령어에 대한 명령어 트리에서는 사용할 수 없습니다. 시간 구동 모드에서 MAM 또는 MAJ를 실행하기 전에 지원되는 프로그래밍 언어 중 하나로 MCLM을 프로그래밍해야 합니다. 이전에 MCLM이 마스터 구동 모드의 MAM 및 MAJ에서 실행되지 않은 경우에는 런타임 에러가 발생합니다.
예
래더 다이어그램
L5K_MCLM_LD_ex_v31.png
구조화된 텍스트
MCLM(myMclmCoordinateSystem, myMclmMotionControl, myMclmMoveType, myMclmPosition[0], myMclmSpeed, Unitspersec, myMclmAccelRate, Unitspersec2, myMclmDecelRate, Unitspersec2, Trapezoidal, 100.0, 100.0, %ofTime, myMclmTermType, CoordinatedMotion, Programmed, 0, 0, None, 0, 0);
릴레이 래더
l5k_mclm_rl_ex2_v36
구조화된 텍스트
MCLM(myMclmCoordinateSystem,myMclmMotionControl,myMclmMoveType,myMclmPosition[0], myMclmSpeed,Unitspersec,myMclmAccelRate,Unitspersec2,myMclmDecelRate,Unitspersec2,Trapezoidal, 100.00,100.0,%ofTime,myMclmTermType,CoordinatedMotion,Programmed,0,0, None,0,0);
의견을 작성 부탁드립니다.
이 자료에 대한 문의사항이나 요청사항이 있습니까? 여기에 요청사항을 작성 부탁드립니다.
Normal