고유수용 센서
로봇 센서는 두 가지로 나뉜다. **고유수용 센서(proprioceptive sensor)**는 로봇의 내부 상태, 즉 자신의 운동을 측정하는 반면, 외부수용 센서(exteroceptive sensor)(카메라, LiDAR, RADAR, 소나)는 외부 환경을 측정한다. SLAM에서 끊임없이 접하게 될 두 가지 고유수용 센서는 다음과 같다:
- IMU (관성 측정 장치): 높은 속도(100–1000 Hz)로 선형 가속도 (3축 가속도계)과 각속도 (3축 자이로스코프)을 측정한다. 측정값은 백색 잡음과, 온라인으로 추정해야 하는 천천히 변화하는 바이어스 에 의해 오염된다. 가속도계는 중력도 감지하므로 이를 보상해야 한다.
- 휠 인코더: 차동 구동(differential-drive) 또는 애커먼(Ackermann) 방식 차량의 바퀴 회전수를 세어, 차량의 운동학 모델을 통해 선속도와 각속도를 얻는다. 깨끗한 실내 바닥에서는 정확하지만, 실외에서는 바퀴 슬립, 불균일한 지형, 타이어 변형에 의해 성능이 저하된다.
고유수용 측정값은 SLAM 시스템의 운동 모델에 입력된다,
현재 상태로부터 다음 상태를 예측한다. 이들의 대표적인 강점과 약점:
| 속성 | 결과 |
|---|---|
| 높은 속도, 낮은 지연 | 카메라/LiDAR 프레임 사이의 부드러운 자세 예측; 빠른 운동과 모션 블러 처리 |
| 자체 완결성 | 어둠, 안개, 텍스처 없는 장면에서도 작동 — 환경에 의존하지 않음 |
| 상대적 측정만 가능 | 순수 적분은 드리프트한다: 자이로 오차는 시간에 따라 선형으로 증가하고, 이중 적분된 가속도계 오차는 시간의 제곱에 비례해 증가한다 |
이들은 드리프트하지만 결코 완전히 실패하지 않으며, 외부수용 센서는 정확하지만 (블러, 낮은 텍스처, 가림 등으로) 실패할 수 있다는 점에서, 두 계열은 자연스러운 상호 보완 관계에 있다 — 이것이 시각-관성 오도메트리의 전체 전제이며, 여기서 IMU 사전 적분(pre-integration)은 키프레임 사이의 수백 개의 관성 측정값을 단일 상대 운동 제약 조건으로 축적한다.
측정 모델
표준 IMU 측정 모델은 잡음 구조를 명시적으로 드러낸다. 바디 프레임 , 세계 프레임 , 바디 방향을 나타내는 에 대해:
주목할 세 가지가 있다. 가속도계는 가속도가 아니라 **비력(specific force)**을 측정한다: 중력 가 모델 내부에 나타나므로, 정지해 있는 IMU는 위쪽으로 약 를 읽으며, 방향 오차는 중력을 추정된 가속도로 새어들게 한다 — 의 기울기 오차는 의 가상 수평 가속도를 주입하며, 이는 몇 초 안에 이중 적분되어 미터 단위 오차로 커진다. 잡음 은 백색 가우시안으로 모델링되고, 바이어스 는 느린 랜덤 워크로 모델링된다 — 이것이 추정기가 바이어스 상태를 유지하며 지속적으로 갱신하는 이유다. 그리고 모든 것이 바디 프레임으로 표현되므로, 이를 사용하려면 지금 추정하려는 그 방향 자체가 필요하며, 이 점이 관성 항법을 하나의 결합된 추정 문제로 묶는다.
바퀴 반경 , 바퀴 간 거리 , 측정된 바퀴 속도 을 갖는 차동 구동 베이스의 휠 인코더에 대해:
잡음은 (매우 우수한) 인코더 분해능이 아니라 모델 위반, 즉 슬립, 스키드, 불균일한 지면, 타이어 압축에 의해 좌우된다 — 이는 백색이 아니라 체계적이고 지형에 의존적인 오차다.
얼마나 빨리 드리프트하는가
유용한 대략적 위계: 자이로스코프만의 방향은 시간에 선형으로 드리프트하고, 가속도계로부터의 속도는 선형으로 드리프트하며(방향 오차로 인한 중력 누출 포함), 위치는 가속도계 오차로부터는 시간의 제곱에, 자이로에 의한 기울기 오차로부터는 세제곱에 비례해 드리프트한다. 이 때문에 소비자용 MEMS IMU는 몇 초 이상 단독으로 위치를 제공할 수 없지만, 전술/항법급 장치(광섬유 자이로)는 몇 배 더 큰 비용, 크기, 전력을 대가로 몇 분에서 몇 시간까지 버틴다. 휠 오도메트리는 시간이 아니라 이동 거리에 따라 드리프트하므로, 정지한 휠 로봇은 전혀 드리프트하지 않는다 — 이것이 실내에서 휠+IMU 융합이 그토록 효과적인 이유 중 하나다.
흔한 함정
- 바이어스를 무시하는 것 — 을 바이어스 없는 측정값으로 취급하면 데이터시트상으로는 문제없어 보이지만 실제 로봇에서는 실패한다; 바이어스는 온도에 따라, 그리고 전원을 켤 때마다 달라지므로 상수가 아니라 상태 변수로 다뤄야 한다.
- 잘못된 중력 초기화 — VIO 시스템은 정지 상태에서 가속도계의 중력으로부터 초기 방향을 추정한다; 움직이는 동안(또는 진동하는 플랫폼에서) 초기화하면 기울기 추정과 이후의 모든 것이 오염된다.
- 진동과 앨리어싱 — 모터와 프로펠러는 IMU의 샘플링 가정을 넘어서는 진동을 주입한다; 알고리즘만큼이나 기계적 댐핑과 적절한 저역통과 필터링이 중요하다.
- 운동학 파라미터도 캘리브레이션 대상이다 — 바퀴 반경과 바퀴 간 거리의 오차는 “직선” 궤적에서 체계적인 곡률을 만들어낸다; 이를 캘리브레이션하라(그리고 타이어가 바뀌면 재캘리브레이션하라).
SLAM에서의 의미
배치된 SLAM 시스템의 거의 전부는 고유수용 + 외부수용 융합이다: 휴대폰과 헤드셋의 VIO(카메라 + IMU), 창고 로봇의 휠-관성 오도메트리, 자동차의 LiDAR-관성 오도메트리. 고유수용 센서가 무엇을 측정하고, 얼마나 빨리 드리프트하며, 그 잡음이 어떻게 모델링되는지를 아는 것은 레벨 6에서 칼만 필터와 팩터 그래프 융합을 이해하기 위한 전제 조건이다.