이전학기 사용하였던 센서퓨전에서는 gps rate와 같은 rate로 필터된 값을 송출하였다.

imu의 rate 값이 gps보다 높으므로 gps정보 사이에 imu값이 최신화 되도록 비동기식 방법이 필요해 보여 imu값과 gps값들이 갱신되는대로 z 값에 들어가 필터를 진행하였다.

z값은 x,y축 방향으로 위치,속도,가속도 성분으로 만들어 필터를 돌렸으며,

위치는 gps, 속도는 gps 위치변화량/시간, 가속도는 imu값을 가지고 칼만필터를 적용해보았다.

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/90cfb1b4-5a39-4033-a1a6-5a69c6582c93/Screenshot_from_2021-02-11_11-44-26.png

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/da5fb759-7b86-4fc1-a8b4-7765d1fac143/Screenshot_from_2021-02-11_11-44-33.png

첫번째 사진은 시작 직전인 정지상태이고 2번째 사진은 조금 시간이 지나고 차량이 거동중인 그래프이다.

문제점

  1. gps값에 의존.

z값은 위치 속도 가속도가 모두 들어가 필터링 값에 영향을 준다.

imu와 encoder, gps센서퓨전의 의의는 gps송출값 사이에 정확한 위치값을 높은 rate로 주는데에 있다고 본다. 현재는 encoder값을 사용하지 않고 gps의 위치변화량을 통해 속도를 구하여 칼만필터를 구현하였다.

2번째 그림을 보면 파란색(gps값)이 빨간색(필터링값)보다 앞서있는것을 알 수 있다. gps값이 찍힐때 그 부근에 필터링값이 미리 가있어햐 하지만 gps값이들어올때마다 급격하게 갱신되어 불안정한 개형을 보여주었다.

위치에 비교적 크게 영향을 주는 gps에서 나오는 위치, 속도를 사용해서 gps값에 따라 급격한 갱신이 이루어진것으로 보인다.