전체 코드!

IMU로 Encoder를 보정할 때 칼만필터를 사용해야하는데, 이때 각속도가 필요하다고 한다!

그래서 IMU에서 받아온 yaw 값으로 각속도를 계산했다.

 

중심 식은 

                                         change_yaw=float((now_yaw-pre_yaw)/(now_sec-pre_sec))

 

간단하게 "yaw값의 변화량/시간의 변화량" 이다ㅋㅋ

 

time 라이브러리를 사용해서 현재 시간을 받아왔다. 

time 라이브러리는 epoch time(Unix time)을 다룰 때 사용한다고 한다. epoch time은 UTC 기준으로 1970년 1월 1일 0시 0분 0초 부터의 경과시간을 나타낸다고 한다! (신기행)

datetime 라이브러리를 사용해서 정규화된 시간을 사용할까도 했지만, 그냥 간단하게 변화량, 즉 빼기만 하면 되기 때문에 그냥 time 라이브러리를 사용했다ㅋㅋ

 

처음 코드가 실행될 때는 pre_sec, pre_yaw 즉 이전의 시간과 yaw 값이 없기 때문에 if 문으로 i=0일 때를 따로 나눠줬다.

간단한 코드지만 은근히 기분이 좋다ㅎㅎ

+ Recent posts