본문 바로가기

엔지니어

[칼만필터] 1. 칼만필터란 무엇인가?

<이 포스팅은 Matlab이 제공하는 Understanding Kalman Filter을 번역 및 요약한 자료입니다. 출처는 https://www.youtube.com/watch?v=mwn8xhgNpFY&list=PLn8PRpmsu08pzi6EMiYnR-076Mh-q3tWr 입니다.>

Understanding Kalman Filters, Part 1: Why Use Kalman Filters?

칼만필터

  • 칼만필터는 최적 추정 알고리즘이다


###예시1

  • 지구에서 달으로 가기 위해 로켓 엔진의 내부 온도를 실시간으로 추정하고자 한다.
  • 문제는 엔진 내부에 센서를 부착하면 높은 온도로 인해 녹는다는 것이다.
  • 따라서, 센서는 엔진 표면에만 부착 가능하다.
  • 우리는 칼만필터를 통해 우리가 측정 가능한 데이터로부터 측정 불가능한 데이터을 추정할 수 있다.


###예시2

  • 차량의 실시간 위치를 알기 위해 사용되는 내장(on-board) 센서로는 대표적인 3가지가 있다.
  • IMU는 관성 센서를 이용하여 차량의 가속도와 각속도를 측정한다.
  • Odometer은 차량의 상대적 위치를 제공한다.
  • GPS 수신기는 차량의 절대적 위치를 제공한다.

  • 터널 내부에서는 GPS 신호의 약화로 인해 GPS를 통한 위치 추정이 불가능해진다.

  • 이 경우에는 IMU에서 나오는 가속도를 두번 적분함으로서 차량의 위치를 구할 수 있다.
  • 그러나 이 수식은 작은 오차가 시간에 따라 누적되어 drift가 생기기 쉽다.
  • 더 정확한 위치 추정을 위해, 우리는 IMU 측정값과 odometer 측정값을 함께 사용할 수 있다.
  • odometer 측정값은 타이어 공기압과 도로 상태에 의해 달라질 수 있다는 점을 유의해야 한다.

  • 정리하면, IMU/Odometer은 차량의 상대적 위치를 얻을 수 있고, 빠른 업데이트가 가능하며, drift에 취약하다.
  • GPS는 차량의 절대적 위치를 얻을 수 있고, 업데이트 주기가 느린 편이며, 노이즈가 있어 정확도가 떨어진다.

  • 이러한 상황에서 칼만필터를 사용, 세가지 센서를 융합해서 정확한 위치를 추정할 수 있다.

칼만필터는 이럴 때 사용된다...

  • 우리가 알고자 하는 데이터가 직접적으로 측정이 불가능하나, 간접적인 측정은 가능할 때, 최적 추정을 위해 사용
  • 노이즈가 있는 다양한 센서로부터의 측정값을 융합하고자 할 때 사용