모션 계산 캠 프로파일(Motion Calculate Cam Profile, MCCP)

이 정보는
CompactLogix
5370,
ControlLogix
5570,
Compact GuardLogix
5370,
GuardLogix
5570,
Compact GuardLogix
5380,
CompactLogix
5380,
ControlLogix
5580,
GuardLogix
5580 및 ControlLogix 5590 컨트롤러에 적용됩니다.
MCCP(모션 계산 캠 프로파일) 명령어는 캠 지점의 배열에 따라 캠 프로파일을 계산합니다. 프로그래밍 방식으로, 아니면 캠 프로필 편집기를 사용하여 캠 포인트 배열을 설정합니다. 캠 배열 내의 각 캠 포인트는 슬레이브 위치 값, 마스터 위치(위치 캠) 또는 시간(시간 캠) 값, 그리고 보간 유형(선형 또는 입방형)으로 구성됩니다. 모션 축 위치 캠(Motion Axis Position Cam, MAPC) 명령어 또는 모션 축 시간 캠(Motion Axis Time Cam, MATC) 명령어는 결과 캠 프로필을 사용하여 마스터 위치 또는 시간에 따라 슬레이브 축의 모션을 제어할 수 있습니다.
이는 전환 명령어입니다. 사용할 경우 다음 단계를 수행하세요.
  • 래더 로직에서 명령어가 실행되어야 할 때마다 렁-입력-조건을 거짓에서 참으로 전환합니다.
  • 구조화된 텍스트 루틴에서 명령어가 전환 시에만 실행되도록 하는 조건을 삽입합니다.
사용 가능한 언어
래더 다이어그램
L5K_MCCP_LD_avail_v31
펑션 블록
이 명령어는 함수 블록에서 사용할 수 없습니다.
구조화된 텍스트
MCCP(MotionControl,Cam,Length,StartSlope,EndSlope,CamProfile);
피연산자
래더 다이어그램
피연산자
유형
형식
설명
Motion Control
MOTION_INSTRUCTION
태그
블록 상태 파라미터에 액세스하는 데 사용되는 구조입니다.
Cam
CAM,
CAM_EXTENDED
Array
캠 프로파일을 계산하는 데 사용되는 캠의 태그 이름입니다. 숫자 배열 인덱스는 캠 프로파일 계산에 사용되는 배열의 시작 캠 요소를 나타냅니다. 줄임표는 캠 프로파일 편집기를 시작합니다.
이 피연산자에 CAM_EXTENDED 유형을 사용하면 이중 정밀도(64비트 LREAL) 캠 데이터 구성원에 액세스할 수 있습니다. 사용되는 경우 캠 프로필 피연산자 유형은 CAM_PROFILE_EXTENDED여야 합니다.
Length
UINT
즉시 또는 태그
캠 프로파일 계산에 사용되는 배열의 캠 요소 수를 결정합니다.
Start Slope
REAL
즉시 또는 태그
이는 프로파일의 초기 기울기의 경계 조건으로, 입방형의 첫 번째 세그먼트에 대해서만 유효하며 첫 번째 지점을 통해기울기를 지정합니다.
End Slope
REAL
즉시 또는 태그
이는 프로파일의 끝 기울기의 경계 조건으로, 입방형의 마지막 세그먼트에 대해서만 유효하며 마지막 지점을 통해 기울기를 지정하는 데 사용됩니다.
Cam Profile
CAM_PROFILE,
CAM_PROFILE_EXTENDED
팁: CAM_PROFILE_EXTENDED는 Compact GuardLogix 5580 및 CompactLogix 5380 컨트롤러에서만 지원됩니다.
Array
MAPC 및 MATC 명령어에 대한 입력으로 사용되는 계산된 캠 프로파일(캠 프로필) 배열의 태그 이름입니다. 0 배열 요소([0])만 캠 프로파일 배열에 허용됩니다. 줄임표는 캠 프로파일 편집기를 시작합니다.
이 피연산자에 CAM_PROFILE_EXTENDED 유형을 사용하면 이중 정밀도(64비트 LREAL) 캠 데이터 구성원에 액세스할 수 있습니다. 사용되는 경우 캠 피연산자는 CAM_EXTENDED 유형이어야 합니다.
구조화된 텍스트
피연산자
유형
형식
설명
Source
SINT
INT
DINT
REAL
STRING
구조
태그
복사할 초기 요소
중요: 소스 및 대상 피연산자의 데이터 유형이 동일해야 합니다. 그렇지 않으면 예기치 않은 결과가 발생할 수 있습니다.
Destination
SINT
INT
DINT
REAL
STRING
LINT
구조
태그
소스가 덮어쓸 초기 요소
중요: 소스 및 대상 피연산자의 데이터 유형이 동일해야 합니다. 그렇지 않으면 예기치 않은 결과가 발생할 수 있습니다.
Length
DINT
즉시
태그
복사할 대상 요소의 수입니다.
스트럭쳐드 텍스트 내 식의 구문에 대한 자세한 내용은 스트럭쳐드 텍스트 구문을 참조하십시오.
릴레이 래더 MCCP 명령어와 피연산자가 같습니다. 배열 피연산자의 경우 배열 인덱스를 포함하지 않아도 됩니다. 인덱스를 포함하지 않으면 배열의 첫 번째 요소([0])부터 명령어가 시작됩니다.
MOTION_INSTRUCTION 구조
니모닉
설명
.EN (Enable) Bit 31
활성화 비트는 렁이 거짓에서 참으로 전환할 경우 설정되며 완료 비트가 설정되고 렁이 거짓이 될 때까지 설정된 상태로 유지됩니다.
.DN (Done) Bit 29
완료 비트는 계산 캠 명령어가 성공적으로 실행되고 캠 프로필 배열이 계산될 경우에 설정됩니다.
.ER (Error) Bit 28
에러 비트는 명령어가 에러(예: 캠 배열의 길이가 올바르지 않음)를 발견했음을 나타냅니다.
설명
MCCP 명령어는 지정된 캠 배열의 주어진 지점 집합에 따라 캠 프로파일을 계산합니다. 후속 모션 축 위치 캠(Motion Axis Position Cam, MAPC) 또는 모션 축 시간 캠(Motion Axis Time Cam, MATC) 캠 명령어는 MCCP 명령어에 의해 생성된 캠 프로파일을 사용하여 마스터 축 위치 또는 시간에 따라 슬레이브 축의 복잡한 모션을 제공할 수 있습니다.
캠 프로필은
Logix Designer
캠 프로필 편집기에서 직접 계산할 수 있으므로 MCCP 명령어의 주된 목적은 해당 캠 배열에 대한 프로그래밍 변경사항에 따라 실시간으로 캠 프로필을 계산하는 방법을 제공하는 것입니다.
캠 배열 지정
MCCP 명령어를 실행하기 위해 RSLogix 태그 편집기 또는 캠 프로파일 편집기를 사용하여 캠 배열 태그를 생성해야 합니다. 아래 그림은 캠 배열 태그가 구성되고 MCCP 명령어에 대한 입력으로 사용되는 방식을 보여줍니다.
캠 배열 요소는 보간 유형뿐 아니라 슬레이브(yp)와 마스터(xp) 지점 쌍으로 구성됩니다. 특정 축 위치 또는 시간과 연결되지 않으므로 x 및 y 지점 값은 단위가 없습니다. 각 지점에 대해 보간 유형을 선형 또는 입방형으로 지정할 수 있습니다.
MCCP 명령어는 다음 두 가지 유형의 캠 배열을 지원합니다. CAM 및 CAM_EXTENDED. CAM 배열을 사용하여 CAM_PROFILE 유형의 캠 프로필 태그를 계산합니다. CAM_EXTENDED 배열을 사용하여 더 나은 정밀도를 제공하는 CAM_PROFILE_EXTENDED 유형의 캠 프로필 태그를 계산합니다.
캠 프로파일 태그 지정
MAPC 명령어를 실행하려면 캠 프로파일 배열 태그도 생성해야 합니다. 캠 프로파일 배열 태그는
Logix Designer
태그 편집기 또는 내장된 캠 프로파일 편집기를 사용한 MAPC/MATC 명령어에 의해 생성될 수 있습니다.
캠 프로필 배열 내의 데이터는 컴파일 시 캠 프로파일 편집기를 사용하거나 런타임 시 MCCP 명령어를 사용하여 수정할 수 있습니다. 런타임이 변경될 경우 MCCP 명령어를 사용하려면 캠 배열을 생성해야 합니다.
상태 파라미터는 캠 프로파일 배열 요소가 계산되었음을 나타내기 위해 사용됩니다. 캠 프로파일의 계산되지 않은 요소를 사용하여 캠 명령어의 실행을 시도하면 MAPC 또는 MATC 명령어에 에러가 발생합니다. 유형 파라미터는 이 캠 배열 요소와 다음 캠 요소 사이에 적용되는 보간의 유형을 결정합니다.
MCCP 명령어는 다음 두 가지 유형의 캠 프로필 배열을 지원합니다. CAM_PROFILE 및 CAM_PROFILE_EXTENDED. CAM_PROFILE은 CAM 배열에서 계산됩니다. CAM_PROFILE_EXTENDED는 더 나은 정밀도를 제공하는 CAM_EXTENDED 배열에서 계산됩니다.
캠 프로파일 배열 상태 구성원
캠 프로파일 배열의 첫 번째 요소의 상태 구성원은 특수하며 데이터 무결성 검사에 사용됩니다. 따라서 MCCP는 항상 시작 인덱스를 0으로 설정하여 캠 프로파일을 지정해야 합니다. 이 첫 번째 캠 프로파일 요소 상태 구성원은 다음 값을 가질 수 있습니다.
상태 변수
설명
0
캠 프로파일 요소가 계산되지 않았습니다.
1
캠 프로파일 요소를 계산하는 중입니다.
2
캠 프로파일 요소가 계산되었습니다.
n
캠 프로파일 요소가 계산되었고 현재 (n-2) 또는 MATC 명령어가 사용 중입니다.
선형 및 입방형 스플라인 보간
결과로 계산된 캠 프로파일은 완전히 보간되어 있습니다. 즉 현재 마스터 위치 또는 시간이 캠 프로파일 생성에 사용된 캠 배열의 포인트와 정확히 일치하지 않는 경우 슬레이브 축 위치는 인접한 포인트 간의 선형 또는 입방형 보간으로 결정된다는 의미입니다. 이런 식으로 가능한 가장 완만한 슬레이브 모션이 제공됩니다. MCCP 명령어는 슬레이브 위치를 마스터 위치 또는 시간의 함수로 결정하는 다항식의 계수로 계산하여 이 작업을 수행합니다.
캠 프로파일 계산
지정된 축에서 캠을 계산하기 전에 MCCP 명령어가 먼저 첫 번째 캠 프로파일 요소의 상태 구성원 값을 확인하여 캠 프로파일 배열이 계산되었는지 확인합니다. 상태 값이 0 또는 2이면 MCCP가 캠 프로파일 계산을 계속 진행합니다. 캠 프로파일 배열이 완전히 계산되면 MCCP 명령어가 첫 번째 캠 프로파일 요소의 상태 값을 계산 중 또는 1로 설정한 다음 다른 모든 캠 프로파일 요소의 상태 값을 계산 중으로 설정합니다. 계산이 진행되면 개별 캠 프로파일 구성원의 상태 값이 계산됨 또는 2로 설정됩니다. 캠 프로파일 배열의 모든 요소가 계산되면 첫 번째 캠 프로파일 요소의 상태 값도 계산됨으로 설정됩니다.
그러나 MCCP 명령어가 내부 캠 프로파일 상태 값 1로 실행되는 경우 해당 캠 프로파일은 다른 MCCP 명령어에서 계산 중인 것으로, MCCP 명령어 에러가 발생합니다. 상태 값이 2보다 크면 MAPC 또는 MATC 명령어에서 해당 캠 프로파일을 적극적으로 사용 중인 것으로 MCCP 명령어 에러가 발생합니다.
시작 기울기와 끝 기울기
입방형 캠 프로파일에서 원활하게 진입 또는 진출하도록 하려면 슬로프 제어가 필요합니다. 시작 기울기 및 끝 기울기 파라미터가 마스터를 기준으로 슬레이브의 초기 변화율을 결정합니다. 이러한 값은 캠 배열에 대해 수행되는 3차 스플라인 계산에서 사용됩니다. 아래 다이어그램은 마스터 슬레이브 기울기 관계를 보여줍니다.
MCCP Start Slope and End Slope
휴지 상태에서 캠 프로파일로 원활하게 시작 및 종료되도록 시작 기울기 및 끝 기울기의 기본 값은 0입니다. 그러나 축이 이미 캠 작업 중인 경우 프로파일 2개가 서로 원활하게 혼합되도록 0이 아닌 적절한 시작 기울기를 지정해 현재 실행 중인 캠의 끝 기울기와 일치시킬 수 있습니다.
선형 보간을 통해 캠 프로파일을 시작 또는 종료하는 경우 시작 기울기 및 끝 기울기 값은 적용할 수 없습니다.
중요: MCCP 명령어 실행은 단일 스캔에서 완료됩니다. 따라서 사용자 프로그램 스캔 시간에 영향을 미치지 않도록 이 명령어는 별도의 태스크에 배치해야 합니다.
이는 전환 명령어에 해당합니다.
  • 릴레이 래더에서 명령어가 실행되어야 할 때마다 렁-입력-조건을 거짓에서 참으로 전환합니다.
  • 스트럭쳐드 텍스트에서는 명령어가 전환 시에만 실행되도록 조건을 구성합니다.
연산 상태 플래그에 영향
아니요
주 폴트/부 폴트
이 명령어에만 해당되는 것은 없습니다. 피연산자 관련 폴트에 대해서는 공통 속성 항목을 참조하십시오.
실행
래더 다이어그램
조건/상태
수행한 작업
사전 스캔
.EN, .DN, .ER 및 .IP 비트는 거짓으로 해제됩니다.
렁-입력-조건이 거짓임
.DN 또는 .ER 비트가 참인 경우 .EN 비트는 거짓으로 해제됩니다.
렁-입력-조건이 참임
.EN 비트가 참으로 설정되고 명령어가 실행됩니다.
사후 스캔
N/A
구조화된 텍스트
조건/상태
수행한 작업
사전 스캔
래더 다이어그램 표의 사전 스캔을 참조하십시오.
정상 실행
래더 다이어그램 표에서 렁-입력-조건이 거짓임을 참조하고 이어서 렁이 참임을 참조하십시오.
사후 스캔
래더 다이어그램 표에서 사후 스캔 섹션을 참조하십시오.
확장 에러 코드
에러 코드가 문제를 파악하기에 충분히 구체적이지 않기 때문에 확장 에러 코드는 에러 코드에 대한 추가 명령어 관련 정보를 제공합니다. MCCP 명령어가 잘못된 캠 길이(26) 에러 메세지를 받아 길이 입력 파라미터가 명령어가 기대한 값에 해당하지 않음을 알게 되면 해당하는 확장 에러 코드가 이 명령어에 대해 제공된 캠 태그에 캠 개수를 제공합니다. MCCP 명령어가 잘못된 캠 프로파일 길이(27) 에러 메세지를 받아 길이 입력 파라미터가 명령어가 기대한 값에 해당하지 않음을 알게 되면 해당하는 확장 에러 코드가 이 명령어가 생성하려고 시도한 캠 포인트 개수를 제공합니다. 모션 명령어는 모션 에러 코드 .ERR 항목을 참조하십시오.
MCCP에 의한 상태 비트 변경
아니요
예
예 1
래더 다이어그램
MCCP_LD_ex1_v31
구조화된 텍스트
MCCP(MCCP_1,Cam_1[0],30,1.0,1.0,Cam_pro1[0]);
예 2
래더 다이어그램
MCCP_LD_ex2_v31
구조화된 텍스트
MCCP(mccp_motion_ctrl,cam[0],2,2,10,cam_profile[0]);
의견을 작성 부탁드립니다.
이 자료에 대한 문의사항이나 요청사항이 있습니까? 여기에 요청사항을 작성 부탁드립니다.
Normal