UR E 시리즈 (Polyscope 5.3 및 이상)

현재 버전 (2.1.2)에 대한 매뉴얼을 보고 계십니다. 다른 버전에 액세스하려면 페이지 오른쪽 상단 모서리에 있는 '버전 전환' 버튼을 클릭하세요.

■ 최신 버전의 소프트웨어를 사용하려면 Mech-Mind 다운로드 센터를 방문하여 다운로드하세요.

■ 현재 사용하고 있는 제품의 버전이 확실하지 않은 경우에는 언제든지 당사 기술 지원팀에 문의하시기 바랍니다.

이 부분은 UR(Universal Robots) E 시리즈 로봇의 표준 인터페이스 통신 구성에 대한 소개입니다.

플러그인 설치 및 배포

이 부분은 UR E 시리즈 로봇용Mech-Mind 3D Vision Interface(URCap 플러그인)의 설치 및 배포에 대한 설명입니다.

전제 조건

Mech-Mind 시리즈 비전 소프트웨어와 Polyscope가 최소 버전 요구사항을 충족하는지 확인하십시오.

Polyscope 버전을 확인하려면 티치 펜던트 우측 상단에 있는 햄버거 버튼을 클릭하고 About를 선택하십시오.

settings e

URCap 플러그인 설치

URCap 플러그인을 설치하려면 다음 스텝을 수행하십시오.

  1. Mech-Vision 및 Mech-Viz소프트웨어 설치 경로 아래의`통신 구성 요소\Robot_Interface\Robot_Plugin\UR_URCAP\Polyscope` 폴더로 이동합니다. 해당 폴더 내에서 확장명이 .urcap 인 파일을 찾아 USB 드라이브에 복사하십시오.

  2. USB를 UR 티치 펜던트에 삽입합니다.

  3. 티치 펜던트 우측 상단에 있는 햄버거 버튼을 누르고 Settings 버튼을 클릭하십시오.

    settings e
  4. Settings인터페이스에서 차례로 System  URCaps버튼을 클릭하십시오.

    system urcaps e
  5. +버튼을 누르고 URCap 플러그인 파일을 찾기 위해 USB로 전환합니다.

  6. Select URCap to install 인터페이스에서 구체한 URCap 플러그인 파일을 선택하고 Open 버튼을 클릭하십시오. URCap 플러그인은 자동으로 설치됩니다.

  7. Restart 버튼을 눌러 수정을 활성화시킵니다.

이로써 URCap 플러그인은 성공적으로 UR 티치 펜던트에 설치됩니다.

설치 완료 후 사용자는 로봇의 IP 주소도 설정해야 합니다(차례로 Setting > System > Network 버튼을 클릭하십시오). 로봇의 IP 조소는 IPC의 IP 조소와 동일한 네트워크 세그먼트에 있어야 합니다.

Mech-Mind 3D Vision Interface 사용하기

사용하기 전에 (필요한 경우)Mech-Vision 와 Mech-Viz프로젝트가 준비되고 Mech-Mind IPC가 로봇의 네트워크에 연결되어 있는지 확인합니다.

또한 Mech-Mind 3D Vision Interface를 사용하기 전에 다음 작업을 완료해야 합니다.

  1. Mech-Vision 소프트웨어를 시작합니다. 표시되는 인터페이스에 따라 다음의 적절한 방법을 선택하여 솔루션을 생성하십시오.

    • 시작 화면이 나타나면 새로운 솔루션 만들기를 클릭하여 새로운 솔루션을 만듭니다.

    create solution 1
    • 메인 인터페이스가 나타나면 메뉴 바에서 파일  새로운 솔루션을 차례로 클릭하여 새로운 솔루션을 만듭니다.

    create solution 2
  2. Mech-Vision 툴 바에서 로봇 통신 구성을 클릭합니다.

  3. 로봇 통신 구성 창에서 다음 구성을 수행합니다.

    1. 로봇 선택 드롭다운 디렉터리를 클릭하고 목록에 있는 로봇을 선택한 다음 로봇 모델 선택을 클릭하여 로봇 모델을 선택합니다. 그 다음에 다음을 클릭합니다.

    2. 통신 방식 화면에서 인터페이스 서비스 유형표준 인터페이스로 선택하고, 프로토콜TCP Server로 선택하며 프로토콜 형식ASCII으로 선택합니다.

    3. *고급 설정*에서 *한 번에 전송할 수 있는 최대 포즈 수*는 *15*로 설정합니다.

    4. 포트 번호는 50000으로 설정합니다(고정값, 변경 불가). 설정된 포트 번호를 다른 프로그램이 사용하고 있지 않은지 확인해야 합니다.

    5. (선택 사항) 솔루션을 열 때 인터페이스 서비스 자동 활성화를 선택합니다.

    6. 응용을 클릭합니다.

tcp ascii urcap
  1. Mech-Vision 메인 화면에서 툴 바에 있는 “인터페이스 서비스” 기능이 활성화되어 있는지 확인하십시오.

    interface service

Mech-Vision 에서 인터페이스 서비스를 시작한 후 UR 티치 펜던트에서 다음과 같이 수행하여 인터페이스 서비스를 연결합니다.

  1. UR 티치 펜던트의 상단 메뉴 바에서Installation누른 다음 차례로 URCaps  Network Settings버튼을 클릭하십시오. URCap 플러그인의 Network Settings 화면이 나타냅니다.

    network settings e
  2. *Mech-MindIPC IP Address*와 *Port No.*를 각각 Mech-MindIPC의 IP 주소와 포트 번호(Mech-Vision통신 구성중의 포트 번호와 일치해야 함)를 설정하고 Apply 버튼을 클릭하십시오.

  3. Connection Test 버튼을 클릭하십시오.

    • 연결 성공하면 반환된 상태 메시지는 다음과 같습니다:

      connection pass
    • 연결 실패하면 반환된 상태 메시지는 다음과 같습니다:

      connection failed

    연결 테스트는 테스트 목적으로만 사용됩니다. 일단 설정에 성공하면 자동으로 연결이 끊어집니다. 따라서 Mech-Vision 로그 창의 콘솔 아래에서 클라이언트가 연결되어 있고 클라이언트가 로그가 끊긴 것을 볼 수 있습니다.

플러그인을 통해 캘리브레이션을 진행하기

표준 인터페이스 통신을 설정한 후, 로봇을 연결하여 자동 캘리브레이션을 수행할 수 있습니다. 자동 캘리브레이션의 전체적인 프로세스는 아래 그림과 같습니다.

calibration process

특별 참고사항

캘리브레이션을 실행할 때 "로봇을 연결하기" 스텝에서 Mech-Vision 소프트웨어 화면에서 로봇이 연결되기를 기다리는 중... 버튼이 나타나면 사용자는 아래 스텝에 따라 로봇 측에서 작업을 수행해야 하며, 작업 완료 후 Mech-Vision 소프트웨어에서 나머지 단계를 스텝을 진행하십시오.

캘리브레이션 프로그램을 만들기

  1. UR 티치 펜던트 상단 바에서 New 버튼을 클릭하고 Program버튼을 선택하여 새로운 프로그램을 만듭니다.

  2. 상단 메뉴 바에서 Program버튼을 클릭한 다음 차례로 URCaps  Mech-Mind Calibrate버튼을 클릭하십시오. 좌측 패널의 Robot Program*따라 *Calibrate 프로그램 예시 노드가 자동으로 생성됩니다.

    add calibrate node e

    생성된 프로그램 예시 노드는 모델입니다. 로봇 캘리브레이션을 완료하려면 캘리브레이션 프로그램을 추가로 설정하고 캘리브레이션 시작점을 티칭해야 합니다.

티치 펜던트를 통해 캘리브레이션 시작점 설정

  1. Calibrate 노드를 클릭하여 우측 패널에서 Command 탭을 선택하고 실제 필요에 따라 *Type of point received fromMech-Vision*설정합니다.

    add calibrate node e
  2. MOVEJ 노드를 선택하여 우측측 Move 패널에서 이동 유형을(MoveJ, MoveL 또는 MoveP)설정하고 웨이포인트가 플랜지 포즈로 기록되도록 Set TCPIgnore Active TCP 로 설정해야 합니다.

    set movej e
  3. 수동으로 로봇을 캘리브레이션 시작점 위치로 이동합니다.

    시작점 위치는 캘리브레이션 보드의 포인트 클라우드 품질을 확인할 때 로봇이 있는 위치로 설정할 수 있습니다.

  4. UR 티치 펜던트 화면으로 들어가고 start_pose*노드를 클릭하십시오. 우측 *Waypoint*패널에서 Set Waypoint버튼을 클릭하십시오. 인터페이스는 *Move 탭으로 이동합니다.

    teach startpoint e
  5. Move 탭에서 현재 로봇의 플랜지 포즈가 맞는지 확인하고OK버튼을 누르십시오.

    confirm waypoint e

캘리브레이션 프로그램 실행

  1. 좌측 패널에서 *Robot Program*버튼을 클릭하십시오. 우측 패널에서 프로그램이 한번만 실행되도록 Program Loops Forever 옵션을 언체크해야 합니다.

    run calibrate e
  2. 안전을 위해 하단 바에서 로봇의 속도를 적당한 값(예: 10%)으로 낮추십시오.

  3. 하단 바에서 run e버튼을 눌러 프로그램을 실행하십시오.

  4. Mech-Vision의 캘리브레이션 창을 확인하고 로봇 연결 영역에 "연결됨" 상태 정보가 표시된 후 버튼이 로봇이 연결되기를 기다리는 중...에서 연결 끊기로 변경된 후 하단 바에서다음 버튼을 클릭합니다.

    start calilbration1
  5. 아래 링크를 각각 참고하여 캘리브레이션 시작 중 네 번째 스텝(이동 경로 설정)과 후속 워크플로를 실행하십시오.

    • 카메라 설치 방식이 ETH(Eye to Hand)인 경우 이 문서를 참조하여 관련 작업을 진행하십시오.

    • 카메라 설치 방식이 EIH(Eye in Hand)인 경우 이 문서를 참조하여 관련 작업을 진행하십시오.

후속 작업을 위해 캘리브레이션 프로그램을 저장해야 할 경우 상단 메뉴 바에서 차례로 Save  Save Program As…버튼을 클릭하십시오.

save program e

핸드-아이 캘리브레이션을 완료한 후,픽 앤 플레이스 프로그램을 만들기하여 UR 로봇이 비전 가이드를 받아 픽 앤 플레이스 작업을 수행하도록 제어할 수 있습니다.

픽 앤 플레이스 프로그램을 만들기

URCap 플러그인은 최소한의 프로그래밍 노력으로 픽 앤 플레이스 프로그램을 생성할 수 있는 픽 앤 플레이스 예시 프로그램 노드를 제공합니다.

픽 앤 플레이스 예시 프로그램 노드는 셋 가지 옵션을 제공합니다:

  • Mech-Vision사용하기기(피킹 포즈): "경로 계획" 스텝을 포함하지 않은 Mech-Vision 프로젝트만 사용하는 경우로, 로봇이 Mech-Viz를 통한 경로 계획을 필요로 하지 않는 시나리오에 적용됩니다.

  • Mech-Vision사용하기기(피킹 경로): "경로 계획" 스텝을 포함하는 Mech-Vision 프로젝트만 사용하는 경우로, 로봇이 Mech-Viz를 통한 경로 계획을 필요로 하지 않는 시나리오에 적용됩니다.

  • Mech-Viz사용하기: Mech-Viz 프로젝트와 Mech-Vision 프로젝트 함께 사용되어 로봇에게 충돌이 없는 이동 경로를 제공하는 시나리오에 적응됩니다.

  • 다음 예시에서는 현재 사용하는 그리퍼와 TCP가 이미 올바르게 설정되었다고 가정합니다.

  • 사용자는 실제 상황에 맞춰 이 내용을 바탕으로 수정해야 하며, 해당 프로그램을 그대로 사용하지 않도록 하십시오.

Mech-Vision 사용하기 (피킹 포즈)

Mech-Vision(피킹 포즈) 사용하는 프로그램을 만들기 위해 다음과 같은 스텝을 수행하십시오:

  1. Mech-Vision(피킹 포즈) 옵션 사용을 선택하십시오.

    1. UR 티치 펜던트 상단 바에서 New 버튼을 클릭하고 Program버튼을 선택하여 새로운 프로그램을 만듭니다.

    2. 상단 메뉴 바에서 Program버튼을 클릭한 다음 차례로 URCaps  Mech-Mind Pick and Place버튼을 클릭하십시오. 좌측 패널의 Robot Program*따라 *Pick and Place 예시 노드가 자동으로 생성됩니다.

      add pick place node e
    3. 우측 패널의Command 탭에서 WithMech-Vision (picking points)버튼을 클릭하십시오. 프로그램 트리의 *Pick and Place*노드 하위에 프로그램 템플릿이 자동으로 추가됩니다.

      select with vision option e
  2. Mech-Mind Connect 노드를 클릭하여 우축의*Mech-MindConnect*패널에서 *Host IP*의 값은 Mech-Mind IPC의 IP 주소로 설정되어 있는지 확인하십시오.

    verify host ip vision e
  3. 이미지 획득 포즈를 설정하십시오.

    1. 로봇을 수동으로 제어하여 적절한 위치로 이동합니다. 여기에서 Mech-Vision이 이미지 캡처를 트리거 할 것입니다.

      • Eye-In-Hand인 경우에 로봇은 작업물 위에 있어야 합니다.

      • Eye-To-Hand인 경우에 로봇은 카메라 시야를 가리면 안 됩니다.

    2. UR 티치 펜던트 화면으로 들어가고 프로그램 트리에서 MoveJ 노드를 클릭하십시오. 우측 *Move*패널에서 이동 유형(MoveJ、MoveL 또는 MoveP)을 설정합니다. *Set TCP*을 *Use active TCP*으로 설정하십시오.

      set movej capture e
    3. 프로그램 트리에서 Capture_image 노드를 클릭하십시오. 우측 Waypoint*패널에서 Set Waypoint버튼을 클릭하십시오. 인터페이스는 *Move 탭으로 이동합니다.

      set waypoint capture e
    4. Move 화면에서 현재 로봇의 TCP 포즈가 맞는지 확인하고 OK버튼을 누르십시오.

    confirm waypoint e
  4. Mech-Vision 프로젝트 실행을 트리거합니다.

    1. 프로그램 트리에서 Trigger Mech-Vision 노드를 클릭하십시오. 우측*Trigger Mech-Vision*패널에서 Type of robot pose to send*와Mech-Vision Project ID* 및 *Num of expected poses*파라미터를 설정합니다. 자세한 설명은 다음 표와 같습니다.

      trigger vision e
      파라미터 설명

      로봇 포즈 전송 유형

      Mech-Vision프로젝트에 보낼 로봇의 포즈 유형을 지정합니다. 본 예시에서는 Current position 파라미터 값을 선택합니다.

      • Current position: 로봇의 현재 관절 각도와 플랜지 포즈를 Mech-Vision프로젝트로 전송합니다. 카메라는 Eye In Hand 방식으로 장착되는 경우 이 파라미터를 사용해야 합니다.

      • Predefined JPs: 사용자 사전 정의한 관절 각도를 Mech-Vision 프로젝트로 전송합니다. 이 관절 각도 데이트는 Mech-Vision 프로젝트의 "경로 계획" 스텝에게 시작점으로 전송되며, 즉 로봇은 이 시작점에서 계획된 경로의 첫 번째 웨이포인트로 이동합니다. 카메라의 설치 방법은 Eye To Hand이며 프로젝트에 "경로 계획" 스텝이 있고 사전 사진 촬영이 필요한 경우 이 파라미터를 사용합니다.

      Mech-Vision 프로젝트 번호

      Mech-Vision 프로젝트 번호(프로젝트 이름 앞의 숫자)는 Mech-Vision 프로젝트 리스트 창에서 확인할 수 있습니다.

      반환된 포즈 수량

      Mech-Vision가 출력할 기대하는 포즈 수입니다.

      • 0으로 설정하면Mech-Vision가 인식된 모든 포즈를 반환됩니다.

      • 1에서 20사이의 정수로 설정한다면, 인식된 총 포즈 수가 원하는 값보다 클 것입니다.Mech-Vision설정된 수만큼의 포즈를 반환합니다. 단, 시스템이 인식한 포즈의 총 개수가 사용자가 설정한 기대값보다 적을 경우 Mech-Vision가 인식된 모든 포즈를 반환합니다.

    2. (선택 사항) Set the Recipe ID버튼을 클릭하면 프로그램 트리의*Trigger Mech-Vision*노드 하위에*Set Recipe ID*노드가 자동으로 추가됩니다.

      Set Recipe ID*노드를 클릭한 후, 우측의 *Set Recipe ID 패널에서* Project Parameter Recipe ID*값을 설정합니다. *Mech-Vision Project ID*값은 이전 노드에서 설정한 값과 반드시 동일해야 합니다.

      set receipe id e
  5. Mech-Vision 결과 수신 설정합니다.

    프로그램 트리에서 *Receive Mech-Vision Result*노드를 클릭하여 *Result type *와 *Return pose type*을 설정한 후*variables for saving returned data*명칭을 설정합니다.

    본 예시는 Mech-Vision 으로부터 피킹 포즈를 직접 수신하는 기능을 사용하므로, 여기서 *Result type*는 *Basic*또는 *Custom*으로만 설정할 수 있으며, *Planned path*로는 설정할 수 없습니다.
    receive vision result e
    • *Result type*이 *Basic*인 경우 *Return pose type*는 *Pose*로만 설정할 수 있으며 이는 수신된 포즈가 TCP 포즈임을 의미합니다. 기타 파라미터의 설명은 아래 표와 같습니다.

      파라미터 설명

      포즈

      해당 포즈는 로봇의 말단장치 포즈를 의미합니다. Mech-Vision에서 출력된 물체 포즈("Output" 스텝의 poses 포트 데이터)는 비전 시스템에 의해 자동으로 로봇의 말단장치 포즈로 변환됩니다. 활성화된 TCP를 사용하는 로봇은 해당 포즈 위치로 직접 이동할 수 있습니다. 기본적으로 포즈는 배열 변수 pose[]에 저장되며, 배열 시작 인덱스는 1입니다.

      레이블

      포즈에 대응하는 라벨로, 정수값입니다. 기본적으로 배열 변수 label[]에 저장되며, 배열 시작 인덱스는 1입니다.

      수신 포즈 개수

      Mech-Vision으로부터 수신한 포즈의 개수입니다. 기본적으로 포즈 수량은 total_recv 변수에 저장됩니다.

      상태 코드

      Mech-Vision에서 반환된 상태 코드입니다. 11xx는 정상적인 상태 코드, 10xx는 오류 코드를 의미하며, 자세한 내용은표준 인터페이스 상태 코드 및 오류 처리 문서를 참고하십시오. 기본적으로 상태 코드는 status_code 변수에 저장됩니다.

      모든 포인트 수신 여부

      Mech-Vision 으로부터 인식된 모든 포즈를 수신했는지를 나타냅니다. 값은 0 또는 1입니다. 0은 모든 포즈를 획득하지 않았음을 나타냅니다. 1은 모든 포즈를 획득함을 나타냅니다. 기본적으로 모든 포인트 수신 여부를 last_data 변수에 저장됩니다.

    • *Result type*이 *Custom*인 경우 *Return pose type*는 *Pose*로만 설정할 수 있으며 이는 수신된 포즈가 TCP 포즈임을 의미합니다. 기타 파라미터의 설명은 아래 표와 같습니다. 또한,Mech-Vision "출력"스텝의 포트 유형파라미터는 "사용자 정의" 설정해야 하며 poses 포트가 존재해야 합니다.

      파라미터 설명

      포즈

      해당 포즈는 로봇의 말단장치 포즈를 의미합니다. Mech-Vision에서 출력된 물체 포즈("Output" 스텝의 poses 포트 데이터)는 비전 시스템에 의해 자동으로 로봇의 말단장치 포즈로 변환됩니다. 활성화된 TCP를 사용하는 로봇은 해당 포즈 위치로 직접 이동할 수 있습니다. 기본적으로 포즈는 배열 변수 pose[]에 저장되며, 배열 시작 인덱스는 1입니다.

      레이블

      포즈에 대응하는 라벨로, 정수값입니다. 기본적으로 배열 변수 label[]에 저장되며, 배열 시작 인덱스는 1입니다.

      사용자 정의 데이터

      포즈에 대응하는 사용자 정의 데이터입니다. 기본적으로 사용자 정의 데이터는 custom_data[]배열 변수에 저장되며, 배열 시작 인덱스는 1입니다.

      수신 포즈 개수

      Mech-Vision으로부터 수신한 포즈의 개수입니다. 기본적으로 포즈 수량은 total_recv 변수에 저장됩니다.

      상태 코드

      Mech-Vision에서 반환된 상태 코드입니다. 11xx는 정상적인 상태 코드, 10xx는 오류 코드를 의미하며, 자세한 내용은표준 인터페이스 상태 코드 및 오류 처리 문서를 참고하십시오. 기본적으로 상태 코드는 status_code 변수에 저장됩니다.

      모든 포인트 수신 여부

      Mech-Vision 으로부터 인식된 모든 포즈를 수신했는지를 나타냅니다. 값은 0 또는 1입니다. 0은 모든 포즈를 획득하지 않았음을 나타냅니다. 1은 모든 포즈를 획득함을 나타냅니다. 기본적으로 모든 포인트 수신 여부를 last_data 변수에 저장됩니다.

  6. 첫 번째 피킹 포즈을 설정합니다.

    *pick_index:=…​*노드를 클릭하여 우측 패널에서 *Expression*의 값을 *1*로 설정합니다.

    set pick index e
    pick_index는 후속 pick 변수에 값을 할당하도록 설정합니다. 값 1은 수신된 첫 번째 캡처 포인트의 포즈를 픽 변수에 할당하고 값 2는 수신된 두 번째 피킹 포즈의 포즈 픽 변수에 할당함을 나타냅니다.이러한 규칙으로 나머지 숫자도 동일하게 적용됩니다. 이 설정은 예제 프로그램을 루프를 통해 한 사이클에 여러 물체를 파지하는 기능으로 확장하는 데 사용됩니다.
  7. pick 작업을 설정합니다.

    하나의 Pick 작업은 다음과 같은 세 가지 운동을 포함합니다. Pick_above(픽 포인트 위치에 직선 운동으로 이동함), Pick(피킹 포즈까지 운동을 하여 물체를 피킹함), Pick_depart(물체를 피킹한 후 직선 운동으로 이동함).

    1. pick*노드를 클릭하여 우측 패널에서 *Pick_abovePick_depart*에 대한 *Dist 와 *Coordinates*를 각각 설정합니다.

      set distance coordinates e
    2. pick 노드의 MoveJ 노드를 선택하고 우측 Move 패널에서 기본 설정을 유지하십시오.

    3. pick_above 노드를 선택하고 우측 Waypoint 패널에서 기본 설정을 유지하십시오.

    4. 프로그램 트리에서 MoveL 노드를 선택하고 우측 Move 패널에서 기본 설정을 유지하십시오.

    5. 프로그램 트리에서 pick 노드를 선택하고 우측 Waypoint 패널에서 기본 설정을 유지하십시오.

    6. 실제 수요에 따라 pick 노드 뒤에 클램프 컨트롤 논리를 추가합니다.

    7. 프로그램 트리에서 MoveJ 노드를 선택하고 우측 Move 패널에서 기본 설정을 유지하십시오.

    8. pick_depart 노드를 선택하고 우측 Waypoint 패널에서 기본 설정을 유지하십시오.

  8. place 작업을 설정합니다.

    1. place 노드의 MoveJ 노드를 선택하고 우측 Move 패널에서 기본 설정을 유지하십시오.

    2. 대상 물체를 배치하는 정확한 위치로 이동하도록 로봇을 제어하십시오.

    3. UR 티치 펜던트 화면으로 들어가고 MoveJ*노드의 *place 노드를 클릭하고 우측에*Waypoint*패널에서 Set Waypoint버튼을 클릭하십시오. 인터페이스는 Move 탭으로 이동합니다.

      set waypoint place e
    4. Move 탭에서 현재 로봇의 플랜지 포즈가 맞는지 확인하고OK버튼을 누르십시오.

      confirm waypoint e
    5. 배치 포즈를 설정한 다음에 실제 수요에 따라 place 노드 뒤에 클램프 컨트롤 논리를 추가합니다.

여기까지 Mech-Vision(피킹 포즈)을 사용하는 간단한 피킹 프로그램이 완료되었습니다. 하단 바에서 run e버튼을 눌러 프로그램을 실행하실 수 있습니다.

Mech-Vision 사용하기 (피킹 경로)

Mech-Vision(피킹 경로) 사용하는 프로그램을 만들기 위해 다음과 같은 스텝을 수행하십시오:

  1. Mech-Vision(피킹 경로) 옵션 사용을 선택하십시오.

    1. UR 티치 펜던트 상단 바에서 New 버튼을 클릭하고 Program버튼을 선택하여 새로운 프로그램을 만듭니다.

    2. 상단 메뉴 바에서 Program버튼을 클릭한 다음 차례로 URCaps  Mech-Mind Pick and Place버튼을 클릭하십시오. 좌측 패널의 Robot Program*따라 *Pick and Place 예시 노드가 자동으로 생성됩니다.

      add pick place node e
    3. 우측 패널의Command 탭에서 WithMech-Vision (picking path)버튼을 클릭하십시오. 프로그램 트리의 *Pick and Place*노드 하위에 프로그램 템플릿이 자동으로 추가됩니다.

      select with vision path option e
  2. Mech-Vision사용하기(피킹 포인트) 항목의 스텝 2를 참조하여*Host IP*값이 Mech-Mind Mech-Mind IPC의 실제 IP 주소와 일치하는지 확인하십시오.

  3. Mech-Vision사용하기(피킹 포인트) 항목의 스텝 3를 참조하여 이미지 획득 포인트를 설정하십시오.

  4. Mech-Vision사용하기(피킹 포인트) 항목의 스텝 4를 참조하여 Mech-Vision 프로젝트 실행을 트리거하십시오.

  5. Mech-Vision 결과 수신 설정합니다.

    *Receive Mech-Vision Result*노드를 클릭하여 *Result type *와 *Return pose type*을 설정한 후*variables for saving returned data*명칭을 설정합니다.

    본 예시는 Mech-Vision 으로부터 계획된 경로를 가져오는 것이므로, 여기서 *Result type*는 반드시 *Planned path*로 설정해야 합니다.
    receive vision path result e
    • *Result type*이 *Planned path*인 경우, *Return pose type*는*Pose*인 경우 획득한 포즈 유형은 말단장치 포즈입니다. 기타 파라미터의 설명은 아래 표와 같습니다.

      파라미터 설명

      포즈

      여기서 포즈는 로봇의 말단장치 포즈입니다. 기본적으로 포즈는 배열 변수 pose[]에 저장되며, 배열 시작 인덱스는 1입니다.

      레이블

      포즈에 대응하는 라벨로, 정수값입니다. 기본적으로 배열 변수 label[]에 저장되며, 배열 시작 인덱스는 1입니다.

      포즈에 해당하는 말단장치 번호의 값은 정수입니다. 기본적으로 말단장치 번호는 tool_id[] 변수에 저장되며, 배열 시작 인덱스는 1입니다.

      수신 포즈 개수

      Mech-Vision으로부터 수신한 포즈의 개수입니다. 기본적으로 포즈 수량은 total_recv 변수에 저장됩니다.

      상태 코드

      Mech-Vision에서 반환된 상태 코드입니다. 11xx는 정상적인 상태 코드, 10xx는 오류 코드를 의미하며, 자세한 내용은표준 인터페이스 상태 코드 및 오류 처리 문서를 참고하십시오. 기본적으로 상태 코드는 status_code 변수에 저장됩니다.

      픽 포인트 인덱스

      전체 경로에서 경로 계획 도구의 "비전 이동" 스텝에 해당하는 웨이포인트(비전 이동 웨이포인트)의 위치를 ​​나타냅니다. 경로에 비전 이동 웨이포인트가 없는 경우 이 파라미터의 값은 0입니다. 기본적으로 픽 포인트 인덱스는 vision_point 변수에 저장됩니다.

      예를 들어, 계획된 경로가 "고정점 이동_1", "고정점 이동_2", "비전 이동", "고정점 이동_3" 스텝으로 구성된 경우 비전 이동 웨이포인트의 위치 번호는 3입니다.

      모든 포인트 수신 여부

      Mech-Vision으로부터 모든 계획 경로의 포즈를 수신했는지를 나타냅니다. 값은 0 또는 1입니다. 0은 모든 포즈를 획득하지 않았음을 나타냅니다. 1은 모든 포즈를 획득함을 나타냅니다. 기본적으로 모든 포인트 수신 여부를 last_data 변수에 저장됩니다.

    • *Result type*이 *Planned path*인 경우, *Return pose type*는*Jps*인 경우 획득한 포즈 유형은 관절 각도입니다. 레이블, 툴등 파라미터의 설명은 위 표와 같습니다. 기본적으로 관절 각도 데이터는 jps[] 배열 변수에 저장됩니다. jps[] 배열 변수 직접 사용하지 마십시오. 사용자는 해당 배열 변수를 추출한 후에야 그 안에 포함된 관절 각도을 사용할 수 있습니다. 이 예시의 경우 사용자는 다음 작업에 따라 관절 각도을 추출할 수 있습니다.

      • Receive Mech-Vision Result*노드를 클릭하여 *Return pose type *Jps*선택합니다.

      • target:=pose[j]*노드를 클릭하여 우측 패널에서 차례로 URCaps  MM Extract JPs버튼을 클릭하면 *Extract Jps 노드가 나타날 것입니다.

        get vis jps 1
      • Extract Jps*노드를 클릭하여 *Variable Input*체크하고 *Extracted index number*에서 *j*선택한 다음 *Save to variable name*에 *target1 입력합니다.

        get vis jps 2
      • *target:=pose[j]*노드를 클릭하여 하단 툴 바의 *Delete*버튼을 클릭하면 해당 노드는 삭제됩니다.

        get vis jps 3
      • 후속 노드의 target 변수를 target1 변수로 단체합니다.

  6. 동작 루프를 구성하여 로봇이 "경로 계획" 스텝에서 출력된 경로대로 움직이도록 하십시오. 즉, 물체에 접근, 물체 피킹, 피킹 포즈에서 이탈하는 동작을 수행합니다 (이때 물체 배치는 포함되지 않음). MoveL 및 MoveJ 노드를 설정하는 방법에 대해서는Mech-Vision(피킹 포즈)사용하기항목의 스텝 7을 참조하십시오.

    • 실제 응용에서 모션 루프에 여러 개의 pick_above MoveJ 노드, 하나의 pick MoveL 노드와 여러 개의 pick_depart MoveJ 노드가 포함될 수 있습니다.

    • Receive Mech-Vision Result 노드에서 포즈, 레이블 등 파라미터의 기본 변수 이름을 수정한다면 해당 스텝의 변수 이름도 함께 수정해야 합니다.

  7. Mech-Vision사용하기(피킹 포인트) 항목의 스텝 8를 참조하여 배치 작업을 설정하십시오.

여기까지 Mech-Vision(피킹 경로)을 사용하는 간단한 피킹 프로그램이 완료되었습니다. 하단 바에서 run e버튼을 눌러 프로그램을 실행하실 수 있습니다.

Mech-Viz 사용

Mech-Viz사용하는 픽 앤 플레이스 프로그램을 만들기 위해 다음과 같은 스텝을 수행하십시오:

  1. Mech-Viz옵션 사용을 선택하십시오.

    1. UR 티치 펜던트 상단 바에서 New 버튼을 클릭하고 Program버튼을 선택하여 새로운 프로그램을 만듭니다.

    2. 상단 메뉴 바에서 Program버튼을 클릭한 다음 차례로 URCaps  Mech-Mind Pick and Place버튼을 클릭하십시오. 좌측 패널의 Robot Program*따라 *Pick and Place 예시 노드가 자동으로 생성됩니다.

      add pick place node e
    3. 우측 패널의Command 탭에서 WithMech-Viz버튼을 클릭하십시오. 프로그램 트리의 *Pick and Place*노드 하위에 프로그램 템플릿이 자동으로 추가됩니다.

      select with viz option e
  2. Mech-Mind Connect 노드를 클릭하여 우축의*Mech-MindConnect*패널에서 *Host IP*의 값은 Mech-Mind IPC의 IP 주소로 설정되어 있는지 확인하십시오.

    verify host ip viz e
  3. Mech-Vision사용하기(피킹 포인트) 항목의 스텝 3를 참조하여 이미지 획득 포인트를 설정하십시오.

  4. Mech-Viz 프로젝트 실행을 트리거합니다.

    1. Trigger Mech-Viz*노드를 클릭하여 우측 *Trigger Mech-Viz 패널에서 *Type of robot pose to send*파라미터를 설정하십시오. 자세한 설명은 다음 표와 같습니다.

      trigger viz e
      파라미터 설명

      로봇 포즈 전송 유형

      Mech-Viz프로젝트에 보낼 로봇의 포즈 유형을 지정합니다.

      • Current Position: 로봇의 현재 관절 각도와 플랜지 포즈를 Mech-Viz프로젝트로 전송합니다. 카메라는 Eye In Hand 방식으로 장착되는 경우 이 파라미터를 사용해야 합니다.

      • Predefined JPs: 사용자 사전 정의한 관절 각도를 Mech-Viz 프로젝트로 전송합니다. 로봇이 이미지 캡처 영역 밖에 있는 경우 Mech-Viz프로젝트를 미리 트리거하여 다음 라운드의 경로를 계획할 수 있습니다. 카메라는 Eye To Hand 방식으로 장착되는 경우 이 파라미터를 사용해야 합니다. 프로젝트는 사전에 이미지를 캡처할 필요가 있습니다.

      • Mech-Viz 프로젝트에서 "메시지 분기" 스텝 있다면 Set branch exit port버튼을 누르고 스텝 b로 건너뛰어 분기 출구를 설정합니다.

      • Mech-Viz프로젝트에 인덱스 스텝이 있는 경우 Set Index Value 버튼을 누르고 스텝 c로 건너뛰어 인덱스 값을 설정합니다.

    2. (선택 사항) Set Branch Value 노드를 선택하고 우측 패널에서 Branch Step ID 와 *Exit port number*를 설정합니다.

      set brach value e
    3. (선택 사항) 프로젝트 트리에서서*Set Index Value* 선택하고 우측 패널에서 Move Step ID 와*Index value*를 설정합니다.

      set index value e
  5. Mech-Viz 결과 수신 설정합니다.

    Receive Mech-Viz Result 노드를 클릭하여 Mech-Viz결과를 저장하는 변수 이름을 설정합니다.

    receive viz result e
    • *Return pose type*이 *Pose*인 경우 수신된 포즈 유형은 말단장치 포즈로 표시됩니다. 기타 파라미터의 설명은 아래 표와 같습니다.

      파라미터 설명

      포즈

      여기서 포즈는 로봇의 말단장치 포즈입니다. 기본적으로 포즈는 배열 변수 pose[]에 저장되며, 배열 시작 인덱스는 1입니다.

      레이블

      포즈에 대응하는 라벨로, 정수값입니다. 기본적으로 배열 변수 label[]에 저장되며, 배열 시작 인덱스는 1입니다.

      포즈에 해당하는 말단장치 번호의 값은 정수입니다. 기본적으로 말단장치 번호는 tool_id[] 변수에 저장되며, 배열 시작 인덱스는 1입니다.

      수신 포즈 개수

      Mech-Viz으로부터 수신한 포즈의 개수입니다. 기본적으로 포즈 수량은 total_recv 변수에 저장됩니다.

      상태 코드

      Mech-Vision에서 반환된 상태 코드입니다. 21xx는 정상적인 상태 코드, 20xx는 오류 코드를 의미하며, 자세한 내용은표준 인터페이스 상태 코드 및 오류 처리 문서를 참고하십시오. 기본적으로 상태 코드는 status_code 변수에 저장됩니다.

      픽 포인트 인덱스

      전체 경로에서 프로젝트의 "비전 이동" 스텝에 해당하는 웨이포인트(비전 이동 웨이포인트)의 위치를 ​​나타냅니다. 경로에 비전 이동 웨이포인트가 없는 경우 이 파라미터의 값은 0입니다. 기본적으로 픽 포인트 인덱스는 vision_point 변수에 저장됩니다.

      예를 들어, 계획된 경로가 "고정점 이동_1", "고정점 이동_2", "비전 이동", "고정점 이동_3" 스텝으로 구성된 경우 비전 이동 웨이포인트의 위치 번호는 3입니다.

      모든 포인트 수신 여부

      Mech-Viz으로부터 모든 계획 경로의 포즈를 수신했는지를 나타냅니다. 값은 0 또는 1입니다. 0은 모든 포즈를 획득하지 않았음을 나타냅니다. 1은 모든 포즈를 획득함을 나타냅니다. 기본적으로 모든 포인트 수신 여부를 last_data 변수에 저장됩니다.

    • *Return pose type*이 *Jps*인 경우 수신된 포즈 유형은 관절 각도로 표시됩니다. 레이블, 툴등 파라미터의 설명은 위 표와 같습니다. 기본적으로 관절 각도 데이터는 jps[] 배열 변수에 저장됩니다. jps[] 배열 변수 직접 사용하지 마십시오. 사용자는 해당 배열 변수를 추출한 후에야 그 안에 포함된 관절 각도을 사용할 수 있습니다. 이 예시의 경우 사용자는 다음 작업에 따라 관절 각도을 추출할 수 있습니다.

      • Receive Mech-Viz Result*노드를 클릭하여 *Return pose type *Jps*선택합니다.

      • target:=pose[j]*노드를 클릭하여 우측 패널에서 차례로 URCaps  MM Extract JPs버튼을 클릭하면 *Extract Jps 노드가 나타날 것입니다.

        get viz jps 1
      • Extract Jps*노드를 클릭하여 *Variable Input*체크하고 *Extracted index number*에서 *j*선택한 다음 *Save to variable name*에 *target1 입력합니다.

        get viz jps 2
      • *target:=pose[j]*노드를 클릭하여 하단 툴 바의 *Delete*버튼을 클릭하면 해당 노드는 삭제됩니다.

        get viz jps 3
      • 후속 노드의 target 변수를 target1 변수로 단체합니다.

  6. 동작 루프를 구성하여 로봇이 Mech-Viz 계획된 경로대로 움직이도록 하십시오. 즉, 물체에 접근, 물체 피킹, 피킹 포즈에서 이탈하는 동작을 수행합니다 (이때 물체 배치는 포함되지 않음). MoveL 및 MoveJ 노드를 설정하는 방법에 대해서는Mech-Vision(피킹 포즈)사용하기항목의 스텝 7을 참조하십시오.

    • 실제 응용에서 모션 루프에 여러 개의 pick_above MoveJ 노드, 하나의 pick MoveL 노드와 여러 개의 pick_depart MoveJ 노드가 포함될 수 있습니다.

    • Receive Mech-Viz Result 노드에서 포즈, 레이블 등 파라미터의 기본 변수 이름을 수정한다면 해당 스텝의 변수 이름도 함께 수정해야 합니다.

  7. Mech-Vision사용하기(피킹 포인트) 항목의 스텝 8를 참조하여 배치 작업을 설정하십시오.

여기까지 Mech-Viz사용하는 간단한 피킹 프로그램이 완료되었습니다. 하단 바에서 run e버튼을 눌러 프로그램을 실행하실 수 있습니다.

이 페이지가 도움이 되었습니까?

다음 방법을 통해 피드백을 보내주실 수 있습니다:

저희는 귀하의 개인정보를 소중히 다룹니다.

당사 웹사이트는 최상의 사용자 경험을 제공하기 위해 쿠키를 사용하고 있습니다. "모두 수락"을 클릭하시면 쿠키 사용에 동의하시는 것이며, "모두 거부"를 클릭하시면 이 웹사이트 방문 시 귀하의 정보가 추적되거나 기억되지 않도록 단일 쿠키만 사용됩니다.