본문 바로가기

로봇

Base, Tool offset이 있을 때의 SCARA 로봇 기구학 파라미터 오차 보정

이전 글에서는 실제 로봇이 아닌 가상의 로봇을 수학적으로 모델링하여 문제를 풀었습니다. 그러다보니 생략한 부분이 좀 있습니다. 현실세계에서 로봇 말단의 위치를 정밀하게 측정하려면 레이저 트래커 같은 장비를 사용합니다.

레이저 트래커로 로봇 말단 위치를 측정할 때, 레이저 트래커를 정밀하게 특정위치에 위치시키고 반사경도 정밀하게 특정 위치에 붙이고 이렇게 하지 못합니다. 그냥 로봇이 설치된 주변에 레이저 트래커를 두고 실험데이터를 얻게 됩니다. 그러다보니 좌표 원점기준 로봇 베이스가 설치된 위치를 모르고 로봇 말단좌표기준 반사경이 설치된 위치도 모릅니다.

다음 그림과 같이 SCARA 로봇이 원점으로부터 Base offset 만큼 떨어진 위치에 설치되었다고 합시다. 그리고 로봇 말단에 붙인 반사경도 Tool offset 만큼 떨어진 위치에 설치도었다고 합시다.

그러면 원점 O를 기준으로하는 반사경의 최종 위치는 다음과 같이 계산됩니다.

Base offset 과 Tool offset을 고려하지 않았을 때보다 기구학 식이 엄청 복잡해졌습니다. 그래도 식이 있으면 문제를 풀 수 있습니다. 내가 푸는게 아니고 컴퓨터한테 잘 시키기만 하면 됩니다.

Jacobian 행렬부터 만듭니다.

행렬을 구성하는 식이 여러 개로 쪼개져 있기때문에 편미분 하려면 체인룰을 적용해야합니다.

Jacobian 행렬을 완성했다면 이전 글에서의 과정과 동일하게 Levenberg-Marquardt method로 풀어봅니다. Base offset은 0으로 보고 Tool offset만 (0.1, 0.2, 0.3)으로 주었습니다.

오차는 0으로 수렴했습니다. 그런데 변수 V1과 Tool offset z가 간섭을 일으킵니다. 둘다 z축으로 평행하기때문에 어쩔 수 없는 상황입니다.

이번에는 Tool offset과 Base offset 둘 다 적용해 보겠습니다.

이번에도 오차는 0으로 수렴했습니다. 그리고 z축으로 Tool offset과 Base offset이 서로 간섭을 일으킵니다. 하지만 우리의 목적은 로봇의 모델 파라미터를 구하는 것이기때문에 모델 파라미터만 정확하면 이 두 값은 잘못되어도 문제없습니다.

이번에는 Tool offset이 있고 Base offset and rotation 있을 때를 보겠습니다.

오차는 0으로 수렴했니다. 하지만 서로 간섭을 일으킨 로봇 파라미터가 많은데, 이는 Base 에서 z축 rotation이 포함되었기때문입니다.