작업 흐름 구성

이전 두 부분 설명에 따라 구성 준비를 완료한 후 가장 핵심 부분 - [작업 흐름 구성]을 시작할 수 있습니다. 태스크 라이브러리에 있는 태스크를 프로젝트 편집 구역으로 드래그하여 태스크의 다양한 파라미터를 설정하고 태스크를 연결하여 설정된 프로그램 기능을 구현합니다.

이 예시에서 사용자는 간단한 피킹 및 배치 작업만 완료하면 되고 아래 그림과 같이 작업 흐름을 구축할 수 있습니다.

../../../../_images/motion_trajectory_planning_1.png

운동 계획

“Home 포인트”를 정의하기

Home 포인트는 로봇의 움직임의 시작점이며 동시에 Home 포인트는 안전한 위치이며, 이때 로봇은 피킹 대기 물체 및 주변 장비로부터 멀리 떨어져 있어야 하며, 카메라의 시야를 가리지 않아야 합니다.

이동 은 로봇 운동 경로에서 목표 포즈를 설정하고 이 포즈로 이동하는 방법을 설정하는 데 사용할 수 있으므로 이동 을 사용하여 Home 포인트를 설정합니다.

  1. 툴바에서 로봇을 동기화하기 를 클릭하면 로봇 모델이 리얼 로봇 상태와 동기화됩니다.

  2. 티칭 머신을 사용하여 리얼 로봇을 사용자가 정의한 Home 포인트로 이동하고 로봇 모델도 해당 위치로 이동했는지 확인합니다.

  3. 태스크 라이브러리에서 기본 운동 ‣ 이동 을 찾아 프로젝트 편집 영역으로 드래그합니다. 이 이동 태스크는 로봇의 현재 포즈를 기록합니다 .

  4. 이 태스크의 명칭을 Home으로 바꿉니다.

../../../../_images/motion_trajectory_planning_movehome.png

“픽 포인트”를 정의하기

“픽 포인트”는 피킹된 물체의 포즈여야 하므로 비전 인식비전 이동 태스크를 사용합니다.

태스크

비전 인식

설명

Mech-Vision 프로젝트를 시작하여 비전 인식 결과를 획득합니다.

작업

태스크 라이브러리에서 비전 ‣ 비전 인식 을 찾아 프로젝트 편집 구역으로 드래그하며 “Home 포인트”의 아웃포트를 “비전 인식”의 인포트와 연결시킵니다.

파라미터 설정

서비스 명칭 의 드롭다운 리스트에서 이전에 만든 Mech-Vision 프로젝트를 선택합니다.

그림 예시

../../../../_images/motion_trajectory_select_vision.png

태스크

비전 이동

설명

비전 인식 결과에 따라 이동합니다.

작업

태스크 라이브러리에서 비전 ‣ 비전 이동 을 찾아 프로젝트 편집 구역으로 드래그하며 “비전 인식”의 아웃포트를 “비전 이동”의 인포트와 연결시킵니다.

파라미터 설정

서비스 명칭 의 드롭다운 리스트에서 이전에 만든 Mech-Vision 프로젝트를 선택합니다.

그림 예시

../../../../_images/motion_trajectory_select_vision.png

로봇이 픽 포인트에 도달하면 빨판을 열어 물체를 흡착합니다(이 예시에서 엔드 이펙터는 빨판입니다).

DO 설정 태스크를 사용하여 빨판의 상태를 컨트롤합니다.

태스크

DO 설정

설명

지정된 로봇 포트의 신호를 설정하는 데 사용함으로써 로봇 엔드 이펙터의 열기와 닫기를 컨트롤합니다.

작업

태스크 라이브러리에서 DI/DO ‣ DO 설정 을 찾아 프로젝트 편집 구역으로 드래그하며 “비전 이동”의 아웃포트를 “DO 설정”의 인포트와 연결시킵니다.

파라미터 설정

태스크의 명칭은 “DO 설정_열기”로 수정하고 DO값을 선택하세요(선택한 후 소프트웨어가 실행될 때 컨트롤 신호를 보내 빨판은 열려 있는 상태가 되어 물체를 흡착할 수 있게 됩니다).

그림 예시

../../../../_images/motion_trajectory_planning_pick.png

DO 값이 실제 엔드 이펙터의 열기/닫기 상태와의 대응 관계는 아래 그림과 같습니다(모 클램프를 예시로).

../../../../_images/motion_trajectory_uncheckdo.png ../../../../_images/motion_trajectory_checkdo.png
../../../../_images/motion_trajectory_uncheck.png ../../../../_images/motion_trajectory_check.png

“배치 포인트”를 정의하기

로봇은 물체를 잡은 후 사용자가 정의한 배치 포인트로 이동하여 물체를 놓습니다.

  1. 티칭 머신을 사용하여 리얼 로봇을 사용자가 정의한 배치 포인트로 이동하고, 로봇 동기화 후 이동 태스크를 프로젝트 편집 구역으로 드래그하여 현재 포즈를 기록하게 합니다. 또한 해당 태스크의 명칭을 “배치 포인트”로 수정하십시오.

  2. 다음으로 “DO 설정_열기”의 아웃포트를 “배치 포인트”의 인포트와 연결시킵니다.

로봇이 배치 포인트에 도달한 후 빨판을 닫아 물체를 놓습니다. DO 설정 태스크를 사용하여 빨판의 상태를 컨트롤합니다.

태스크

DO 설정

설명

지정된 로봇 포트의 신호를 설정하는 데 사용함으로써 로봇 엔드 이펙터의 열기와 닫기를 컨트롤합니다.

작업

태스크 라이브러리에서 DI/DO ‣ DO 설정 을 찾아 프로젝트 편집 구역으로 드래그하며 “배치 포인트”의 아웃포트를 “DO 설정”의 인포트와 연결시킵니다.

파라미터 설정

태스크의 명칭은 “DO 설정_닫기”로 수정하고 DO값을 선택하세요(선택한 후 소프트웨어가 실행될 때 컨트롤 신호를 보내 빨판은 닫혀 있는 상태가 되어 물체를 배치할 수 있게 됩니다).

그림 예시

../../../../_images/motion_trajectory_planning_drop.png

“Home 포인트”로 돌아가기

물체를 배치한 후 로봇이 Home 포인트로 돌아가야 합니다.

For 루프의 방식을 통해 로봇을 Home 포인트 위치로 돌아가 순환적인 태스크를 수행하도록 합니다.

../../../../_images/motion_trajectory_planning_back.png

힌트

프로젝트 편집 영역에서 팝업 메뉴를 우클릭 후 자동으로 배치하기 를 클릭하면 자동으로 정렬이 조정됩니다.

시뮬레이션

시뮬레이션 을 클릭하여 로봇의 운동 경로 시뮬레이션을 시작합니다. 논리에 따라 작업 흐름을 구축했지만 실제 시뮬레이션 과정에서 사용자는 다음과 같은 사항들을 발견할 수 있습니다.

  1. Home 포인트에서 직접 픽 포인트까지 이동하면 로봇이 단번에 이동하는 범위가 매우 큽니다.

  2. 빨판을 열고 닫는 신호를 보낸 직후에 바로 다음 위치로 이동하면 실제 상황에서 엔드 이펙터는 물체를 꽉 움켜잡지 않을 수도 있습니다(즉 물체가 떨어질 위험이 있습니다).

  3. 물체를 피킹한 직후 바로 대각선 위쪽으로 이동하면 대상 물체가 충돌로 인해 떨어질 수도 있습니다.


경로 최적화

경로를 보다 합리적으로 만들기 위해 다음 몇 가지 방법을 통해 이동 경로를 최적화합니다.

“캡처 포인트”를 정의하기

“Home 포인트 - 픽 포인트” 사이에 캡처 포인트 를 추가합니다.

  1. 티칭 머신을 사용하여 리얼 로봇을 사용자가 정의한 배치 포인트로 이동한 후 이동 태스크를 추가하여 현재 로봇의 포즈를 기록합니다.

  2. 로봇의 위치는 카메라의 시야를 가리면 안 됩니다. Mech-Eye Viewer 소프트웨어를 사용하여 이미지를 캡처하여 시야가 가려져있는지 확인할 수 있습니다.

  3. 태스크의 명칭을 “캡처 포인트”로 수정합니다.

  4. “캡처 포인트”의 인포트를 “Home 포인트”와 연결하고 아웃포트를 “비전 인식_1”과 연결합니다.

“피킹의 상대적인 이동 포인트“를 정의하기

합리적인 피킹 동작은 다음과 같습니다. 빨판이 픽 포인트까지 수직으로 아래쪽으로 이동한 다음 물체를 집은 후 수직으로 위쪽으로 이동합니다. 이를 위해 태스크 상대적인 이동 을 사용할 수 있습니다.

  1. 빨판은 픽 포인트에서 Z 방향으로 200mm에서 수직 아래로 이동합니다.

    태스크

    상대적인 이동

    작업

    태스크 라이브러리에서 기본 운동 ‣ 상대적인 이동 을 찾아 프로젝트 편집 구역으로 드래그합니다. (상대적인 이동_1)

    연결선

    “상대적인 이동_1”의 인포트를 “비전 인식_1”과 연결하고 아웃포트를 “비전 이동_1”과 연결합니다.

    파라미터 설정

    기준을 다음 이동 태스크 로 선택하고, 좌표계의 Z 값을 -200으로 설정합니다.

    그림 예시

    ../../../../_images/motion_trajectory_optimization_dropdown.png
  2. 빨판이 물체를 집어 올린 후 수직으로 200mm 위로 이동합니다.

    태스크

    상대적인 이동

    작업

    태스크 라이브러리에서 기본 운동 ‣ 상대적인 이동 을 찾아 프로젝트 편집 구역으로 드래그합니다. (상대적인 이동_2)

    연결선

    “상대적인 이동_2”의 인포트를 “DO 설정_열기”와 연결합니다.

    파라미터 설정

    기준을 현재 이동 태스크 로 선택하고, 좌표계의 Z 값을 -200으로 설정합니다.

    그림 예시

    ../../../../_images/motion_trajectory_optimization_pickup.png

“배치의 상대적인 이동 포인트“를 정의하기

이전 스텝의 설정을 참조하여 “배치 포인트” 전/후에 각각 하나의 [상대적인 이동] 태스크를 추가합니다.

  1. 빨판은 배치 포인트에서 Z 방향으로 200mm에서 수직 아래로 이동합니다.

    작업

    태스크 라이브러리에서 기본 운동 ‣ 상대적인 이동 을 찾아 프로젝트 편집 구역으로 드래그합니다. (상대적인 이동_3)

    연결선

    “상대적인 이동_3”의 인포트를 “상대적인 이동_2”와 연결하고 아웃포트를 “배치 포인트”와 연결합니다.

    파라미터 설정

    기준을 다음 이동 태스크 로 선택하고, 좌표계의 Z 값을 -200으로 설정합니다.

  2. 빨판이 물체를 놓아둔 후 수직으로 200mm 위로 이동합니다.

    작업

    태스크 라이브러리에서 기본 운동 ‣ 상대적인 이동 을 찾아 프로젝트 편집 구역으로 드래그합니다. (상대적인 이동_4)

    연결선

    “상대적인 이동_4”의 인포트를 “DO 설정_닫기”와 연결하고 아웃포트를 “Home 포인트”와 연결합니다.

    파라미터 설정

    기준을 현재 이동 태스크 로 선택하고, 좌표계의 Z 값을 -200으로 설정합니다.

“피킹,배치 기다리기”를 정의하기

  1. 빨판이 물체를 놓은 후 빨판이 물체를 완전히 분리할 때까지 잠시 기다리십시오.

    태스크

    기다리기

    목적

    기다리기 태스크를 사용하면 로봇이 이 기능을 실행할때 밀리초(ms) 단위로 지정된 시간 동안 기다립니다.

    작업

    태스크 라이브러리에서 공구 ‣ 기다리기 를 찾아 프로젝트 편집 영역으로 드래그합니다. 파라미터는 기본값을 사용할 수 있습니다.

    연결선

    “기다리기_1”의 인포트를 “DO 설정_닫기”와 연결하고 아웃포트를 “상대적인 이동_2”와 연결합니다.

  2. 빨판이 물체를 놓은 후 빨판이 물체를 완전히 분리할 때까지 잠시 기다리십시오.

    위 설명을 참조하여 “기다리기_2”의 인포트를 “DO 설정_닫기”와 연결하고 아웃포트를 “상대적인 이동_4”와 연결합니다.

시뮬레이션

시뮬레이션 을 클릭하여 로봇의 운동 경로 시뮬레이션을 시작합니다. 이 시뮬레이션에서 사용자는 경로가 더 합리적임을 알 수 있습니다.

전체적인 작업 흐름은 다음과 같습니다.

../../../../_images/motion_trajectory_optimization_all.png

같은 기능을 실현할 수 있는 다양한 태스크들을 하나의 프로시저 에 놓아 다른 “작업 흐름”을 정리하고 프로젝트의 후속 유지 관리에 편리를 주며 인터페이스를 보다 간결하게 만들 수도 있습니다.

위 그림과 같이 프로젝트를 전체적으로 ① 피킹② 배치 단계로 나눌 수 있습니다.

  1. 태스크 라이브러리에서 논리적 토폴로지 ‣ 프로시저 를 찾아 프로젝트 편집 구역으로 드래그합니다.

  2. 이 프로시저의 명칭을 피킹 으로 수정합니다.

  3. Ctrl 버튼을 길게 눌러 위 그림 속의 ①점선박스에 있는 태스크를 선택하고 단축키 Ctrl + X 를 통해 선택한 태스크를 잘라냅니다.

  4. 피킹 을 더블클릭하여 프로시저에 들어가 단축키 Ctrl + V 를 통해 아까 잘라낸 태스크를 붙여넣습니다.

  5. 태스크 사이의 연결선을 추가합니다.

  6. 위 작업 설명에 따라 배치 프로시저를 추가합니다.

  7. 마지막으로 프로시저 사이의 연결선을 추가합니다.

    ../../../../_images/motion_trajectory_finall.png

작업 흐름의 구성이 완료되면 다음 부분 내용을 통해 충돌 감지에 대한 구성을 시작하십시오.