핸드-아이 캘리브레이션 결과가 만족스럽지 않음 (암 마운트가 헐거워지거나 처짐)
문제
핸드-아이 캘리브레이션 결과가 만족스럽지 못합니다 (나쁘거나 미흡함). 결과는 다음과 같은 조합들 사이의 어딘가에 있는 것처럼 보입니다.
핸드-아이 캘리브레이션 변환 |
핸드-아이 캘리브레이션 잔차 |
프로젝션 검증 |
터치 테스트 |
|---|---|---|---|
합리적인 |
나쁜 |
나쁜 |
나쁜 |
합리적인 |
보통 |
불량함 |
나쁜 |
핸드-아이 캘리브레이션 결과가 미흡한 예시
핸드-아이 캘리브레이션 행렬은 합리적이며 대략적인 수동 측정에서 예상되는 결과와 일치합니다 (아래 표 및 이미지 참조).
0.999 |
0.004 |
0.047 |
-54.326 |
-0.004 |
1.000 |
-0.008 |
-86.359 |
-0.047 |
0.007 |
0.999 |
125.236 |
0 |
0 |
0 |
1 |
보정 잔차 또한 예상보다 상당히 큰데, 대략 한 자릿수 정도 더 높습니다.
N (포즈) |
회전 평균 (°) |
최대 회전각(°) |
이동 평균(mm) |
최대 이동 거리(mm) |
|---|---|---|---|---|
14 |
0.756 |
1.545 |
3.162 |
5.944 |
소형 로봇의 경우 잔차가 1mm 미만 범위에 있을 것으로 예상되며, 대형 로봇의 경우 잔차가 1mm 범위에 있을 수 있습니다. 잔차의 회전 성분은 1도 미만 범위에 있을 것으로 예상됩니다.
전체 잔차
포즈 |
회전 (°) |
이동 (mm) |
|---|---|---|
1 |
0.449 |
2.486 |
2 |
0.935 |
2.737 |
3 |
0.854 |
4.049 |
4 |
0.753 |
3.035 |
5 |
0.589 |
4.105 |
6 |
0.535 |
2.682 |
7 |
0.593 |
2.973 |
8 |
1.004 |
1.442 |
9 |
0.618 |
3.502 |
10 |
0.614 |
3.648 |
11 |
1.545 |
3.464 |
12 |
0.283 |
1.775 |
13 |
0.773 |
5.944 |
14 |
1.044 |
2.430 |
프로젝션 검증은 기술적으로는 성공적이지만, 결과적인 오차가 여전히 허용 가능한 수준을 넘어섰습니다. 프로젝션 검증은 매우 신중하게 접근해야 하는데, 핸드-아이 캘리브레이션이 잘못되었더라도 프로젝션 오차가 허용 가능한 것처럼 보일 수 있기 때문입니다.
터치 테스트 결과가 만족스럽지 않습니다. 예를 들어, 터치 테스트 도구의 끝부분이 ArUco 마커에 닿지 않습니다.
잠재적 원인
높은 잔차가 발생하는 일반적인 원인 중 하나는 로봇 플랜지와 카메라를 연결하는 온암 마운팅 구조의 굴곡 또는 움직임입니다. 이는 다음과 같은 경우에 발생할 수 있습니다.
해당 브래킷은 3D 프린팅으로 제작되었거나, 얇거나, 또는 강성이 충분하지 않습니다.
나사나 고정 장치가 제대로 조여지지 않았습니다.
로봇의 방향이 바뀌면 마운트가 처지거나 휘어지거나 위치가 어긋납니다.
카메라의 무게 또는 추가 도구로 인해 마운트가 견딜 수 없는 토크가 발생합니다.
데이터셋 캡처 중 발생하는 기계적 움직임은 보정 보드의 자세를 미세하게 다르게 만들어 잔차를 직접적으로 증가시킵니다.
잠재적 해결책
로봇 플랜지와 카메라 사이의 장착 인터페이스가 완전히 견고한지 확인하십시오.
견고한 금속 브래킷이나 강성이 높은 다른 재료를 사용하십시오.
3D 프린팅으로 제작된 얇거나 긴 캔틸레버 구조는 피하십시오.
모든 나사, 어댑터 및 연장판이 완전히 조여졌는지 확인하십시오.
카메라 또는 로봇 팔 끝단 툴링의 무게로 인해 구조물이 휘어지지 않는지 확인하십시오.
필요한 경우 레버 암을 짧게 하거나 마운트를 보강하십시오.
동일한 데이터셋을 사용하여 핸드-아이 캘리브레이션을 반복합니다.
핸드-아이 캘리브레이션 결과(변환, 잔차, 프로젝션)를 확인합니다.
(핸드-아이 캘리브레이션 결과가 양호한 경우) 터치 테스트를 실행합니다.
문제 재현 방법 (암 마운트가 헐거워짐)
좋은 데이터셋
아래 이미지에 표시된 데이터 세트를 사용하여 핸드-아이 캘리브레이션이 성공적으로 수행되었습니다.
보정 결과는 다음과 같습니다.
0.999 |
-0.001 |
0.043 |
-56.355 |
-0.000 |
1.000 |
0.020 |
-89.248 |
-0.043 |
-0.020 |
0.999 |
129.899 |
0 |
0 |
0 |
1 |
N (포즈) |
회전 평균 (°) |
최대 회전각(°) |
이동 평균(mm) |
최대 이동 거리(mm) |
|---|---|---|---|---|
14 |
0.135 |
0.180 |
0.578 |
1.341 |
전체 잔차
포즈 |
회전 (°) |
이동 (mm) |
|---|---|---|
1 |
0.180 |
0.465 |
2 |
0.122 |
0.449 |
3 |
0.100 |
0.545 |
4 |
0.096 |
0.331 |
5 |
0.126 |
0.356 |
6 |
0.180 |
0.179 |
7 |
0.175 |
1.341 |
8 |
0.136 |
0.621 |
9 |
0.102 |
0.996 |
10 |
0.140 |
0.375 |
11 |
0.135 |
0.763 |
12 |
0.104 |
0.636 |
13 |
0.156 |
0.448 |
14 |
0.141 |
0.588 |
프로젝션을 통한 검증이 성공적이었습니다.
이후 터치 테스트를 통해 핸드-아이 캘리브레이션을 검증했습니다.
터치 테스트가 성공적으로 완료되어 핸드-아이 캘리브레이션이 정확하고 정밀하게 조정되었음을 확인했습니다.
데이터셋 불량 (암 마운트가 헐거움)
동일한 데이터 세트를 사용하여 핸드-아이 캘리브레이션을 수행했습니다. 다만, 카메라 암 마운트의 나사를 의도적으로 느슨하게 하여 문제를 시뮬레이션하고 핸드-아이 캘리브레이션 결과에 미치는 영향을 보여주었습니다.
보정 결과는 다음과 같습니다.
0.999 |
0.004 |
0.047 |
-54.326 |
-0.004 |
1.000 |
-0.008 |
-86.359 |
-0.047 |
0.007 |
0.999 |
125.236 |
0 |
0 |
0 |
1 |
N (포즈) |
회전 평균 (°) |
최대 회전각(°) |
이동 평균(mm) |
최대 이동 거리(mm) |
|---|---|---|---|---|
14 |
0.756 |
1.545 |
3.162 |
5.944 |
전체 잔차
포즈 |
회전 (°) |
이동 (mm) |
|---|---|---|
1 |
0.449 |
2.486 |
2 |
0.935 |
2.737 |
3 |
0.854 |
4.049 |
4 |
0.753 |
3.035 |
5 |
0.589 |
4.105 |
6 |
0.535 |
2.682 |
7 |
0.593 |
2.973 |
8 |
1.004 |
1.442 |
9 |
0.618 |
3.502 |
10 |
0.614 |
3.648 |
11 |
1.545 |
3.464 |
12 |
0.283 |
1.775 |
13 |
0.773 |
5.944 |
14 |
1.044 |
2.430 |
프로젝션 검증은 기술적으로는 성공했지만, 결과적인 오차가 허용 가능한 수준을 넘어 너무 컸습니다. 프로젝션 검증은 매우 신중하게 접근해야 하는데, 핸드-아이 캘리브레이션이 잘못되었더라도 프로젝션 오차가 허용 가능한 것처럼 보일 수 있기 때문입니다.
터치 테스트 도구의 끝부분이 ArUco 마커에 닿지 않아 터치 테스트 결과가 만족스럽지 못했습니다.
비교
아래 표에서는 핸드-아이 캘리브레이션 행렬 (변환 값) 과 핸드-아이 캘리브레이션 잔차 간의 결과를 비교합니다.
데이터셋 |
X (mm) |
Y(mm) |
Z(mm) |
|---|---|---|---|
좋음 (조여짐) |
-56.355 |
-89.248 |
129.899 |
나쁜 (느슨한) |
-54.326 |
-86.359 |
125.236 |
Δ (좋음 - 나쁨) |
-2.029 |
-2.890 |
4.663 |
데이터셋 |
N |
회전 평균 (°) |
최대 회전각(°) |
이동 평균(mm) |
최대 이동 거리(mm) |
|---|---|---|---|---|---|
좋음 (조여짐) |
14 |
0.135 |
0.180 |
0.578 |
1.341 |
나쁜 (느슨한) |
14 |
0.756 |
1.545 |
3.162 |
5.944 |