Objective
로봇 팔이 단단한 금속 대신 휘어지는 TPU 기반 플렉시블 링크로 만들어져 있어서, 목표 자세로 이동해도 팔이 조금씩 처지거나 흔들리며 실제 손 끝 위치가 명령한 위치와 달라집니다. 이 프로젝트의 목표는 그 위치 오차를 보상하기 전에, 실제로 로봇 끝단이 어디에 멈추는지 먼저 정확히 측정하고 예측할 수 있는 기반을 만드는 것이었습니다. Vive Tracker로 측정한 실제 위치를 로봇의 목표 좌표계와 맞추고, 명령 각도·엔코더 각도·목표 위치와 함께 학습 데이터로 구성한 뒤, 모델이 어느 관절공간까지 믿을 만한지 확인하는 데 집중했습니다.
What I built
TPU 플렉시블 링크가 들어간 로봇은 목표 자세로 이동한 뒤에도 강체 로봇처럼 항상 같은 위치에 멈추지 않았습니다. 그래서 처짐량 하나를 계산하는 방식보다, 명령 각도·엔코더 각도·목표 위치와 Vive Tracker로 측정한 안정화 위치를 동기화하고 정제해 하나의 지도학습 문제로 구성했습니다.
My role
저는 머신러닝 실험 설계와 모델 비교·평가를 주로 맡았습니다. 원본 하드웨어 데이터 600개 가운데 결측, Tracker 유효성 저하, 안정화 조건 미달 데이터를 제외한 584개를 사용했습니다. 같은 조건에서 GPR, RBF-KRR, density-aware local KRR을 비교했고, 반복 random split뿐 아니라 학습하지 않은 관절공간을 분리한 q-space block holdout도 확인했습니다.
Process and model selection
입력은 명령 관절각, 엔코더 관절각, 3차원 목표 위치이고 출력은 Vive Tracker 기준 안정화 위치입니다. 처음에는 선형 모델과 트리 모델로 데이터 흐름을 확인한 뒤, 비선형 기준선인 GPR과 전체 데이터에 하나의 RBF 커널을 적용하는 RBF-KRR을 비교했습니다. GPR은 평균 오차가 5.97 mm였고 RBF-KRR은 약 2.14 mm까지 줄었습니다. 최종적으로는 query 주변의 nearest-neighbor 거리로 local density를 추정하고 가까운 데이터만 골라 정규화된 KRR을 학습하는 density-aware local KRR을 선택했습니다. 관절공간의 가까운 자세끼리는 비슷한 변형 경향을 가진다는 점을 활용할 수 있었고, 반복 분할 평균 오차가 가장 낮으면서 이후 optimizer와 연결하기에도 충분히 단순했기 때문입니다.
Result
아래 영상은 실제 하드웨어에서 데이터를 수집하는 실험 과정을 담은 기록입니다. 플렉시블 링크가 목표 동작 후 흔들리다 실제 위치에 안정화되는 모습이 보이며, 이 과정에서 수집한 Vive Tracker 기반 안정화 위치가 모델 학습의 라벨로 사용되었습니다.
Measured results
50회 반복 random split에서 density-aware local KRR의 평균 3D 위치 예측 오차는 2.0135 mm, 중앙값은 1.5656 mm, p95는 5.0003 mm였습니다. 2 mm 이내 통과율은 62.68%, 2.5 mm 이내 통과율은 73.80%였습니다. 같은 데이터의 GPR 기준선 5.97 mm와 비교하면 평균 오차가 약 66.3% 줄었지만, 이 결과는 수집한 단일 플렉시블 링크 데이터 분포 안에서의 예측 성능입니다.
- 600 samples
- hardware samples raw
- 584 samples
- hardware samples accepted after quality screening
- 50 splits
- evaluation repeated random splits
- 2.0135 mm
- position prediction error mean across 50 repeated splits
- 1.5656 mm
- position prediction error median across 50 repeated splits
- 5.0003 mm
- position prediction error p95 across 50 repeated splits
- 62.68%
- threshold pass rate at 2mm mean across 50 repeated splits
- 73.8%
- threshold pass rate at 2 5mm mean across 50 repeated splits
- 66.3%
- mean error reduction vs gpr same dataset
Reflection
이 프로젝트를 하면서 모델 자체보다 데이터가 어떻게 만들어졌는지를 이해하는 일이 먼저라는 걸 배웠습니다. 좌표 정렬, Tracker 유효성, 안정화 조건, 세션 간 차이, train-test split 방식이 모두 결과에 직접 영향을 줬습니다. 또 평균 점수가 가장 좋은 모델을 고르는 것만으로는 부족했고, q-space holdout을 통해 모델이 모르는 자세에서는 오차가 커진다는 걸 확인해야 했습니다. 이번 결과는 안정화 위치를 예측한 것이지 제어까지 끝낸 것이 아니라는 경계를 명확히 말하는 법도 배웠습니다. 다음에는 더 넓은 관절공간에서 반복 가능한 하드웨어 데이터를 수집하고 세션 간 변화를 정량화한 뒤, 예측값을 실제 보상 명령과 폐루프 제어로 연결해 보고 싶습니다.
Graduation Thesis
PDF / DOCUMENT
Final Thesis PDF
Settled-position prediction performance and joint-space applicability analysis for a TPU flexible-link manipulator measured with an external Vive Tracker.









If your browser cannot display the PDF here, open it in a new tab or download it.
