FANUC CRX 샘플 프로그램
CRX 플러그인은 피킹 프로그램의 예시를 제공합니다. 예시를 참고하여 비교적 적은 프로그래밍 작업으로 피킹 프로그램을 만들 수 있습니다.
이 섹션에서는 두 가지 간단한 피킹 프로그램을 만드는 과정을 소개합니다:
-
Mech-Vision와 함께 피킹하기: 이는 Mech-Vision 프로젝트만 사용되고 로봇이 Mech-Viz를 통해 경로를 계획할 필요가 없는 시나리오에 적응됩니다.
-
Mech-Viz와 함께 피킹하기: Mech-Viz 프로젝트와 Mech-Vision 프로젝트 함께 사용되어 로봇에게 충돌이 없는 이동 경로를 제공하는 시나리오에 적응됩니다.
다음 예시에서는 현재 사용하는 그리퍼와 TCP가 이미 올바르게 설정되었다고 가정합니다. |
Mech-Vision와 함께 피킹하기
아래 샘플 프로그램은 Mech-Vision 이미지 캡처를 트리거하고 로봇을 픽 포인트로 이동시킵니다.
-
로봇 프로그램을 새롭게 만들어(이 샘플의 이름은 MM_SAMPLE_VISION) Programming를 선택하고 왼쪽 ALL 명령어 텝에서 예시 그림에 따라 명령어를 프로그램에 드래그합니다.
워크플로 중에 Comment를 클릭하여 Details 패널에서 주석(예:디버깅)을 입력할 수 있습니다. 워크플로의 댓글 아이콘에 주석 내용이 표시됩니다.
프로그램 워크플로 소개:
-
로봇은 현재 위치에서 Mech-Vision트리거하기 명령어를 수행하여 Mech-Vision 프로젝트 실행을 트리거합니다.
-
로봇은 Mech-Vision데이터 획득하기 명령어를 수행하여 Mech-Vision 프로젝트의 실행 결과를 수신합니다.
-
If 명령어를 사용하여 계획 경로가 성공적으로 수신되었는지 판단합니다.
-
Mech-Vision 프로젝트가 정상적으로 실행되면 Mech-System포즈 획득하기 명령어를 통해 Mech-Vision 프로젝트가 전송한 첫 번째 픽 포인트를 사용자가 지정한 레지스터에 저장할 겁니다. 그 후, 로봇은 관절 각도를 첫 번째 픽 포인트로 이동시킵니다.
-
계획된 경로가 성공적으로 수신되지 않으면 디버깅이 수행됩니다. 이 샘플에서는 디버깅 프로세스의 자세한 프로그래밍이 생략됩니다.
-
-
-
If 를 클릭하고 예시 그림에 따라 파라미터를 설정합니다.
If 명령어 전의 워크플로는 첫 번째 등록된 Mech-Vision 프로젝트를 트리거하고 상태 코드를 R[52]에 저장합니다. If 명령어에서 설정된 파라미터는 R[52]의 값이 1100인지 판단합니다. 1100인 경우 성공적으로 비전 포인트를 획득함을 의미합니다. 그렇지 않으면 디버깅이 수행됩니다.(여기서 자세한 프로그래밍이 생략됩니다)
-
J를 클릭하고 예시 그림에 따라 위치 레지스터를 구성합니다.
Mech-Vision 프로젝트가 출력한 첫 번째 픽 포인트는 TCP로 PR[60]에 저장될 겁니다. 픽 포인트를 성공적으로 획득한 후 moveJ를 사용하여 PR[60]로 이동합니다.
여기까지 Mech-Vision 프로젝트와 함께 사용된 간단한 워크플로는 만들었습니다. 오른쪽 상단에서 자동 모드로 전환한 후 왼쪽 하단의 Play 옵션을 클릭하여 속도를 낮추어 Run를 단번 클릭하면 프로그램을 실행할 수 있습니다.
Mech-Viz와 함께 피킹하기
Mech-Viz가 계획한 경로 중 모든 웨이포인트는 Mech-Interface를 통해 로봇에 전송될 수 있습니다. 아래 샘플 프로그램은 Mech-Viz를 트리거하여 경로를 계획하고 로봇을 웨이포인트로 이동시킵니다.
-
로봇 프로그램을 새롭게 만들어(이 샘플의 이름은 MM_SAMPLE_VIZ) Programming를 선택하고 왼쪽 ALL 명령어 텝에서 예시 그림에 따라 명령어를 프로그램에 드래그합니다.
프로그램 워크플로 소개:
-
로봇은 현재 위치에서 Mech-Viz트리거하기 명령어를 수행하여 Mech-Viz 프로젝트 실행을 트리거합니다.
-
로봇은 Mech-Viz데이터 획득하기 명령어를 수행하여 Mech-Viz 프로젝트의 계획 경로를 수신합니다.
-
If 명령어를 사용하여 계획 경로가 성공적으로 수신되었는지 판단합니다.
-
Mech-Viz 프로젝트가 정상적으로 실행되면 Mech-System관절 각도 획득하기 명령어를 통해 Mech-Viz 프로젝트가 전송한 첫 번째 이동 포인트의 관절 각도 값을 사용자가 지정한 레지스터에 저장할 겁니다. 그 후, 로봇은 관절 각도를 첫 번째 웨이포인트로 이동시킵니다.
-
계획된 경로가 성공적으로 수신되지 않으면 디버깅이 수행됩니다. 이 샘플에서는 디버깅 프로세스의 자세한 프로그래밍이 생략됩니다.
-
-
-
If 를 클릭하고 예시 그림에 따라 파라미터를 설정합니다.
If 명령어 전의 워크플로는 등록된 Mech-Viz 프로젝트를 트리거하고 상태 코드를 R[53]에 저장합니다. If 명령어에서 설정된 파라미터는 R[53]의 값이 2100인지 판단합니다. 2100인 경우 성공적으로 Mech-Viz를 실행함을 의미합니다. 그렇지 않으면 디버깅이 수행됩니다.(여기서 자세한 프로그래밍이 생략됩니다)
-
J를 클릭하고 예시 그림에 따라 위치 레지스터를 구성합니다.
Mech-Viz 프로젝트가 출력한 첫 번째 이동 포인트는 관절 각도 형식으로 PR[60]에 저장될 겁니다. Mech-Viz 프로젝트를 성공적으로 실행한 후 moveJ를 사용하여 PR[60]로 이동합니다.
TCP 데이터를 전송시키려면, "Mech-Viz 테이터 획득하기" 명령어 반환한 값의 유형은 TCP로 변경합니다. 그 후 "Mech-System 관절 각도 획득하기" 명령어는 포즈를 TCP 형식으로 PR[60]에 저장할 겁니다.
여기까지 Mech-Viz 프로젝트와 함께 사용된 간단한 워크플로는 만들었습니다. 오른쪽 상단에서 자동 모드로 전환한 후 왼쪽 하단의 Play 옵션을 클릭하여 속도를 낮추어 Run를 단번 클릭하면 프로그램을 실행할 수 있습니다.