9.79 IMU 좌표계와 로봇 본체 좌표계의 정렬

9.79 IMU 좌표계와 로봇 본체 좌표계의 정렬

1. 정렬의 필요성

관성 측정 장치(Inertial Measurement Unit, IMU)는 로봇의 자세 추정과 운동 분석에 필수적인 센서이다. IMU는 자체 좌표계에서 가속도와 각속도를 측정한다. 이 측정값을 로봇의 본체 좌표계에서 사용하려면, IMU 좌표계와 본체 좌표계 사이의 정렬(alignment)이 필요하다.

이 정렬은 두 좌표계 사이의 강체 변환 {}^B\mathbf{T}_I를 결정하는 과정이다. 회전 부분 {}^B\mathbf{R}_I이 가장 중요하며, 병진 부분(IMU 위치 오프셋)은 일부 응용에서 추가 보정에 사용된다.

2. IMU의 좌표계

2.1 IMU의 측정

IMU는 보통 다음을 측정한다.

  • 선형 가속도: 3축 가속도계가 IMU 좌표계의 x_I, y_I, z_I 방향으로의 선형 가속도와 중력의 합을 측정한다.
  • 각속도: 3축 자이로스코프가 IMU 좌표계 주위의 각속도를 측정한다.
  • 자기장 (선택): 일부 IMU는 3축 자력계도 포함하여 자기장 벡터를 측정한다.

이 측정값들은 모두 IMU의 자체 좌표계에서 표현된다.

2.2 IMU 좌표계의 정의

IMU 제조사마다 좌표계 정의가 다를 수 있다. 일반적인 관례는 다음과 같다.

  • x_I: IMU의 측면 방향
  • y_I: IMU의 전후 방향
  • z_I: IMU의 수직 방향

그러나 제조사 사양서에서 정확한 정의를 확인해야 한다.

3. 본체 좌표계의 정의

로봇의 본체 좌표계는 일반적으로 다음의 관례를 따른다.

3.1 NED (North-East-Down) 관례

  • x_B: 전방 (기수 방향)
  • y_B: 우방 (우익 방향)
  • z_B: 하방 (중력 방향)

항공기와 일부 지상 차량에서 사용된다.

3.2 ENU (East-North-Up) 관례

  • x_B: 우방
  • y_B: 전방
  • z_B: 상방

ROS 등 일부 로봇 공학 프레임워크에서 사용된다.

3.3 자체 정의

특정 로봇은 자체적인 본체 좌표계 정의를 가질 수 있다. 매니퓰레이터, 보행 로봇, 수중 로봇 등에서 다양한 정의가 있다.

4. 정렬의 두 측면

IMU와 본체 좌표계의 정렬은 두 가지 측면을 포함한다.

4.1 회전 정렬

IMU 좌표계의 축들이 본체 좌표계의 축들에 대해 어느 방향으로 향하는지를 나타낸다. 이는 회전 행렬 {}^B\mathbf{R}_I로 표현된다.

이상적인 경우 IMU가 본체에 정확히 정렬되어 {}^B\mathbf{R}_I = \mathbf{I}이지만, 실제로는 제조 오차, 설치 오차 등으로 작은 회전 오차가 존재한다.

4.2 병진 정렬 (위치 오프셋)

IMU의 측정 중심이 본체 좌표계의 원점에서 어느 위치에 있는지를 나타낸다. 이는 위치 벡터 {}^B\mathbf{t}_I로 표현된다.

회전 운동 시 위치 오프셋이 가속도 측정에 영향을 준다(원심 가속도, 코리올리 가속도 등).

5. 가속도와 각속도의 변환

5.1 각속도의 변환

각속도는 강체에 대해 정의되므로, 좌표 변환은 회전만 적용된다.

\boldsymbol{\omega}_B = {}^B\mathbf{R}_I\boldsymbol{\omega}_I

병진은 각속도에 영향을 주지 않는다.

5.2 선형 가속도의 변환

선형 가속도의 변환은 더 복잡하다. 위치 오프셋이 있으면 본체의 회전 운동에 의해 IMU 위치에 추가 가속도가 발생한다.

\mathbf{a}_B = {}^B\mathbf{R}_I\mathbf{a}_I - [\boldsymbol{\omega}_B]_\times[\boldsymbol{\omega}_B]_\times{}^B\mathbf{t}_I - [\dot{\boldsymbol{\omega}}_B]_\times{}^B\mathbf{t}_I

여기서 두 번째 항은 원심 가속도, 세 번째 항은 회전 가속도(각가속도에 의한)이다. 위치 오프셋이 작거나 회전 운동이 느리면 이 보정 항들은 무시할 수 있다.

6. 정렬 결정 방법

6.1 명목 사양으로부터

매니퓰레이터나 차량의 CAD 모델로부터 IMU의 명목적 위치와 방향을 추출한다. 이는 가장 단순한 방법이지만 실제 설치 오차를 반영하지 못한다.

6.2 정적 캘리브레이션

로봇을 정지 상태에서 다양한 알려진 자세로 두고 IMU의 가속도(중력)와 자기장 측정을 비교한다. 중력은 항상 수직 하방을 향하므로, IMU의 가속도 측정이 본체의 자세에 따라 어떻게 변하는지로부터 정렬을 추정할 수 있다.

6.3 동적 캘리브레이션

로봇이 운동하는 동안 IMU 측정과 다른 자세 추정(GPS, 카메라 등)을 비교한다. 운동 패턴에서 정렬 오차가 추출된다.

6.4 외부 측정 시스템 활용

레이저 트래커, 비전 시스템 등의 외부 측정으로 IMU의 절대 자세를 측정하고, IMU의 자체 추정과 비교한다.

7. 정적 캘리브레이션의 절차

가장 일반적인 정적 캘리브레이션 절차는 다음과 같다.

7.1 단계: 기준 자세에서의 측정

로봇을 본체 좌표계가 명확히 알려진 자세(예: 수평)로 두고 IMU의 측정값을 기록한다. 이때 IMU는 중력만을 측정한다.

7.2 단계: 회전 자세에서의 측정

로봇을 90°, 180° 등 다른 자세로 회전시키고 측정한다.

7.3 단계: 정렬 행렬의 추정

각 자세에서의 측정 차이로부터 {}^B\mathbf{R}_I를 추정한다. 본체의 알려진 회전과 IMU 측정의 회전이 일치해야 한다.

{}^B\mathbf{R}_I^{(i+1)} = {}^B\mathbf{R}_I^{(i)} \cdot \Delta\mathbf{R}

이러한 반복 추정으로 정렬을 개선한다.

7.4 단계: 검증

추정된 정렬을 사용하여 다른 자세에서 IMU 측정을 변환하고, 본체의 알려진 자세와 일치하는지 확인한다.

8. IMU의 추가 캘리브레이션

IMU의 정확한 사용을 위해서는 정렬 외에도 다음의 캘리브레이션이 필요하다.

8.1 편향(Bias) 캘리브레이션

가속도계와 자이로스코프는 측정값에 일정한 편향을 가진다. 정지 상태에서 측정값의 평균이 편향이며, 이를 측정값에서 빼야 한다.

8.2 스케일 팩터 캘리브레이션

각 축의 측정 감도가 다를 수 있다. 이를 보정하는 스케일 팩터가 필요하다.

8.3 비직교성 캘리브레이션

세 축이 정확히 직교하지 않을 수 있다. 이를 보정하는 비직교성 행렬이 필요하다.

이러한 캘리브레이션은 제조사가 공장에서 수행하지만, 정밀한 응용에서는 사용자 캘리브레이션이 필요할 수 있다.

9. 시간 동기화

IMU와 다른 센서의 시간 동기화도 중요하다. IMU는 일반적으로 100Hz에서 1kHz의 높은 주기로 작동하므로, 다른 센서(카메라 등)와의 시간 차이가 자세 추정에 영향을 준다.

9.1 하드웨어 동기화

IMU와 다른 센서를 동일한 하드웨어 클록으로 동기화한다. 가장 정확한 방법이다.

9.2 소프트웨어 동기화

각 측정에 시각 정보를 부여하고 후처리에서 동기화한다. 정확도가 다소 떨어진다.

10. 정렬의 활용

정렬이 결정된 후 IMU 데이터는 다음과 같이 활용된다.

10.1 자세 추정

가속도(중력)와 자이로스코프(각속도) 측정을 결합하여 로봇의 자세를 추정한다. 정렬 정확도가 자세 추정 정확도를 결정한다.

10.2 위치 추정

가속도를 두 번 적분하여 위치 변화를 추정한다(데드 레코닝). 정렬 오차가 누적되면 위치 추정이 빠르게 발산한다.

10.3 센서 융합

IMU와 GPS, 카메라, 휠 인코더 등의 센서 융합에서 정렬이 핵심이다. 각 센서가 본체 좌표계에서 일관되게 표현되어야 한다.

10.4 진동 분석

로봇의 진동 패턴을 분석할 때 IMU가 측정한 가속도를 본체 좌표계에서 해석한다.

11. 정렬 오차의 영향

정렬 오차가 작아도 누적 효과로 큰 영향을 줄 수 있다.

11.1 자세 추정의 드리프트

정렬 오차가 자이로스코프 적분에 영향을 주어 자세 추정이 시간에 따라 드리프트한다.

11.2 위치 추정의 발산

정렬 오차가 가속도 적분에 영향을 주어 위치 추정이 발산한다. 데드 레코닝 시간이 길어질수록 영향이 커진다.

11.3 제어 안정성

정렬 오차가 자세 제어 피드백에 영향을 주어 제어 시스템의 안정성을 저하시킬 수 있다.

12. 정렬 정확도의 요구

응용에 따른 정렬 정확도 요구는 다음과 같다.

응용요구 정확도
일반 로봇 자세 추정0.1° - 1°
정밀 자세 추정 (드론 등)0.01° - 0.1°
항공 우주 (관성 항법)0.001° - 0.01°

응용의 요구에 따라 적절한 캘리브레이션 절차와 IMU 등급을 선택해야 한다.

13. 참고 문헌

  • Titterton, D. H., & Weston, J. L. (2004). Strapdown Inertial Navigation Technology (2nd ed.). IET.
  • Groves, P. D. (2013). Principles of GNSS, Inertial, and Multisensor Integrated Navigation Systems (2nd ed.). Artech House.
  • Farrell, J. A. (2008). Aided Navigation: GPS with High Rate Sensors. McGraw-Hill.
  • Crassidis, J. L., & Junkins, J. L. (2011). Optimal Estimation of Dynamic Systems (2nd ed.). CRC Press.
  • Tedaldi, D., Pretto, A., & Menegatti, E. (2014). “A Robust and Easy to Implement Method for IMU Calibration without External Equipments.” IEEE ICRA, 3042–3049.

version: 1.0