SLAM은 동시 위치 추정 및 지도 작성(Simultaneous Localization and Mapping)의 약자입니다. 이는 닭과 달걀의 문제와 같은 맥락을 해결합니다. 지도를 만들려면 로봇이 자신의 위치를 알아야 하고, 로봇이 자신의 위치를 알기 위해서는 지도가 필요합니다. SLAM은 이 두 가지를 동시에 수행합니다. 이는 이동 로봇 공학의 기초적인 문제 중 하나입니다.
로봇은 미지의 환경을 이동합니다. 라이다 스캔, 카메라 이미지, 바퀴 주행 거리 측정, IMU 판독값 등 다양한 센서 데이터를 수집합니다. 이를 통해 자신의 위치를 추정하고 점진적으로 지도를 구축합니다. 이미 지나간 지역을 재방문할 때는 지도와 이동 경로의 오류를 수정합니다. 결과적으로 일관성 있는 지도와 정확한 경로를 얻게 됩니다.
SLAM 접근 방식
- EKF SLAM: 확장 칼만 필터, 조기 방식.
- FastSLAM: 파티클 필터, 랜드마크 처리 가능.
- 그래프 SLAM: 포즈와 랜드마크를 그래프의 노드로 표현합니다.
- 비주얼 SLAM: 카메라, ORB-SLAM, LSD-SLAM을 사용합니다.
- Lidar SLAM: 레이저 스캔, Gmapping, Cartographer를 사용합니다.
SLAM은 오류가 누적되기 때문에 어렵습니다. 주행 거리 측정의 작은 오류가 시간이 지남에 따라 커집니다. 루프 클로저는 이러한 오류를 수정합니다. 로봇이 이전에 본 적이 있는 장소를 인식하면 루프를 닫고 전체 궤적을 조정합니다. 따라서 SLAM 시스템은 견고한 장소 인식이 필수적입니다. 조명 변화나 의자 위치 변경과 같은 작은 변화도 인식 오류를 초래할 수 있습니다. 현대 SLAM 시스템은 상용 제품에 적용될 만큼 충분히 성숙했습니다. 로봇 청소기는 시각 SLAM을 사용하고, 자율주행차는 지도 작성을 위해 라이다 SLAM을 사용합니다. SLAM은 아직 완전히 해결된 문제는 아니지만, 많은 응용 분야에서 충분히 잘 작동합니다. 남은 과제는 동적 환경, 장기 지도 작성, 그리고 다중 로봇 SLAM입니다.
Comments
No comments yet. Be the first to share a thought.
Leave a comment