기본 개념 소개

  • 로봇

    특별한 설명이 없으면 여기서 말하는 로봇은 관절을 통해 연결된 강체로 구성되는 시스템을 가리킵니다. 아래의 그림과 같습니다.

    ../../../_images/robot.png

  • TCP[Tool Center Point](툴의 센터 포인트)

    일반적으로 로봇에 주변 다른 물체와 상호작용을 실현하는 도구인 엔드 이펙터가 배치되어 있으며 TCP는 바로 엔드 이펙터의 첨단점입니다. 물체 피킹 등 태스크를 수행하기 위해 로봇이 공간에 있는 어떤 포인트로 이동하도록 하는 것은 본격적으로 TCP를 이 포인트로 이동하게끔 하는 것입니다.


  • 포즈

    물체가 공간에 있는 위치 및 자세를 일괄적으로 포즈라고 합니다.
    포즈는 평행 이동+회전(사원수 혹은 오일러 각)으로 표시됩니다. Mech-Viz에서 말하는 포즈는 TCP 포즈 및 물체 포즈로 나눠집니다.
    • TCP 포즈

      로봇 베이스를 기준으로 한 TCP의 포즈를 가리킵니다.

    • 물체 포즈

      로봇 베이스를 기준으로 한 물체 중심점의 포즈를 가리킵니다.
      물체가 로봇의 말단에 붙어 있는 경우 물체의 초기 포즈가 툴 포즈와 일치하며 포즈는 반대로 여깁니다.
    ../../../_images/pose-tcp-obj.png

참고

기본으로 TCP 포즈의 Z축과 세계 좌표계의 Z축 간의 각도는 둔각입니다. 물체를 피킹할 때 물체 포즈의 Z축은 TCP 포즈의 Z축의 방향과 반대가 되어야 합니다.


로봇 운동학은 정방향 운동학과 역운동학 두 가지 기본적인 문제로 나눠질 수 있습니다.

  • 정방향 운동학

    로봇의 각 관절 변수가 주어지고 로봇 말단의 위치와 자세를 계산합니다.
    로봇 관절 변수 그룹이 주어지면 TCP 포즈는 유일하게 정해집니다.
  • 역방향 운동학

    로봇 말단의 포즈가 주어지고 모든 대응한 관절의 변수를 계산합니다.
    정해진 TCP 포즈가 대응하는 관절의 변수는 여러 개 존재할 수도 있으며 존재하지 않을 수도 있습니다.

자유도

간단하게 말하자면 자유도는 물체 움직임의 유연성을 설명하는 것입니다. 구속되지 않은 모든 물체는 공간에서 6 가지 방식대로 움직일 수 있습니다.

예를 들어 아래 그림에 있는 점선 상자가 직각 좌표계 OXYZ에서 3 가지 평행이동(X/Y/Z축에 따른 이동) 및 3가지 회전(X/Y/Z축을 중심으로 회전)을 진행할 수 있습니다.

../../../_images/degrees_of_freedom1.png

일반적인 6축 로봇은 6개 자유도를 가집니다. 아래 그림과 같습니다.

../../../_images/degrees_of_freedom2.png

  • 피킹-배치

    피킹-배치는 로봇과 물체 간의 상호작용의 방식입니다.

    • 피킹

      로봇이 물체 포즈로 이동하고 외부 인터페이스 신호를 변화시킴으로써 엔드 이펙터를 제어하여 물체를 피킹하는 과정을 피킹이라고 합니다. “피킹” 이 성공되면 물체와 로봇 TCP의 상대적인 위치가 바인딩됩니다.

    • 잡고 있음

      로봇이 물체를 피킹하는 순간부터 배치할 때까지의 상태를 “잡고 있음” 이라고 합니다. 이 상태에서 물체와 로봇 간의 바인딩 관계는 여전히 존재합니다. 이 상태는 물체 피킹 후 자동으로 적용되고 소프트웨어에서 선택할 수 없습니다.

    • 배치

      로봇이 배치점 포즈로 이동하고 외부 인터페이스 신호를 변화시킴으로써 엔드 이펙터를 제어하여 물체를 놓아두는 과정을 배치라고 합니다. “배치” 상태가 성공되면 물체와 로봇 TCP 간 상대적인 위치의 바인딩 관계가 없어질 것입니다.


  • 대칭성

    모든 대상 물체가 대응하는 물체 포즈를 갖고 있습니다. 실제 상황에서 흔히 보는 대칭성을 갖는 물체에 대해 로봇은 대칭성 각도 에 따라 다양한 피킹 혹은 배치 방식을 활용하더라도 결과는 똑같습니다.

    • 대칭성 각도

      물체 혹은 픽 포인트가 X/Y/Z축을 중심으로 α° 를 한번 회전하면 이전과 같은 것으로 간주할 수 있습니다.
      예를 들어: 정사각형의 α°는 90°, 직사각형은 180°, 정육각형은 60°, 원 또는 링은 0°, 회전 없는 대칭은 360°입니다. 아래의 그림과 같습니다.
      ../../../_images/objSymmetry-angle.png
      그 중에 Z축을 중심으로 하는 대칭성을 강한 축 대칭성이라고 하며 X/Y축을 중심으로 하는 대칭성을 약한 축 대칭성 이라고 합니다.
    • 약한 축 대칭성

      일반적으로 대칭성이 더 강한 축을 실제 계산에 쓰이는 약한 축 대칭성으로 여기며 다른 축의 대칭성은 고려하지 않습니다.
      예를 들어 X축은 90°의 대칭성을 갖고 있고 Y축은 0°의 대칭성을 갖고 있으면 Y축은 약한 축으로 간주하고 약한 축의 대칭성은 0°입니다.
      사용자들이 물체의 대칭성을 설정하면 소프트웨어가 최적의 피킹&배치 경로를 선택하여 접근성을 향상시키고 말단의 회전을 줄입니다.
    • 물체 대칭성

      물체 대칭성은 물체 포즈와 관련이 있습니다. 예를 들어 물체의 대칭성이 180°라면 로봇이 물체를 피킹/배치할 때 “정” 혹은 “반” 둘 중의 하나를 선택하여 말단 축의 회전을 줄일 수 있습니다. 아래의 그림과 같습니다.
      ../../../_images/objSymmetry.png
      물체의 정&반 방향은 같은 상태로 간주할 수 있으니 로봇은 정방향 피킹 또한 반방향 배치 식으로 할 수 있습니다.
    • 픽 포인트 대칭성

      픽 포인트의 대칭성은 피킹 툴이 물체를 피킹하는 방법과 관련이 있으며 최적의 피킹 포즈를 선택하는 데에 사용됩니다.
      예를 들어 물체의 사이즈가 빨판보다 작은 경우에는 피킹 과정 속에서 주변에 있는 다른 물체와의 충돌을 방지하기 위해 빨판 옵셋의 방식으로 피킹하는 것입니다. 이 때 물체의 대칭성은 사용되지 않으며 픽 포인트의 대칭성은 180°입니다. 최초 피킹 포즈에 피킹 툴을 회전시키고 “정방향 피킹” 혹은 “반방향 피킹“ 을 선택할 수 있습니다. 아래의 그림과 같습니다.
      ../../../_images/grabber-symmetry-180.png
      최적의 이동 경로를 계획하기 위해 피킹 시 소프트웨어는 피킹 포즈의 대칭성 및 물체 대칭성을 동시에 계산합니다. “잡고 있음” 및 “배치” 단계에서 물체의 대칭성에 의해 물체 포즈를 선택할 것입니다.
      예를 들어 대상 물체가 연결봉인 경우에 그리퍼를 사용하여 링을 밖으로 피킹할 수 있습니다. 아래의 그림과 같습니다.
      ../../../_images/grabber-symmetry-0.png
      이때 피킹 포즈의 대칭성은 0°이고 피킹 시 임의의 각도를 선택할 수 있습니다. 또한 피킹 포즈 대칭성은 구체적인 계산에 따라 적당한 스텝 간격 포인트 수(예를 들어 1°, 10° 등)를 설정해야 합니다. 하지만 물체 대칭성이 없어서 설정한 물체 포즈대로 배치하려면 스프트웨어가 피킹 시 피킹 툴 및 물체 간의 상대 변환을 복구할 것입니다.

  • 피킹 공구 옵셋

    로봇이 비전 결과의 가이드에 따라 피킹할 때 사이즈가 매우 작거나 모양이 복잡한 경우에 다른 대상 물체와의 충돌을 피하기 위해 피킹 툴의 중심점을 물체의 특정한 점으로 옵셋하여 피킹할 수 있습니다. 피킹 툴의 유형 및 옵셋 전략을 확인한 다음에 Mech-Viz를 통해 옵셋 값을 계산하고 포인트 클라우드 충돌을 결합하여 피킹 가능 여부를 판단합니다. 아래의 그림과 같습니다.

    ../../../_images/grabber-pickOffset.png

    혼합 팔레타이징 경우에 로봇은 물체를 배치할 때 이미 옆에 배치된 물체와의 충돌을 피해야 하며 피킹 공구 옵셋으로 이 문제를 해결할 수 있습니다.

    ../../../_images/grabber-setOffset.png