어떤 시스템을 구성하든 데이터를 평균하는 일이 생긴다.

 

평균이라는말을 키보드로 치는건 처음인것 같은데 어색하네.

 

예를 들어 IMU 센서의 데이터를 받을때 SPI나 I2C통신으로 받을 데이터들이

 

다 필요 할까?

 

실제로 IMU데이터를 받아 보면 가속도 센서는 정지상태에서 일정한 값을 출력한다.

 

하지만 자이로센서의 경우 플러스 값이 나오기도 하고 마이너스 값이 나오기도 하고

 

이상한 값이 나온다.  아무튼 결론은 정지상태에서 흔들거리는 값들은 다 쓸필요가 없다는 것이다.

 

평균에는 두가지를 말할수 있는데.  한가지는 Batch(배치식)과 recursive(재귀식)이다.

 

배치식은 익히 알고있는 평균방식이다.  50개의 데이터를 평균한다면 50개의 데이터를 

 

모두 저장한다음 계산을 해야한다.

 

 

그리고 다른 한가지는 재귀식

 

재귀식의 경우 새로운데이터를 추가 될때 마다 각각의 평균을 구할필요 없이 기존에 평균으로 구해진

 

값에다가  새로운 데이터를 추가하여 평균을 계산하는 방식이다.

 

 

다른 점이 무엇인가를 본다면 배치식의 경우 시스템상에서 잡아 먹는 메모리가 상당하다는 점이다.

 

50개의 데이터를 평균을 아웃풋한다면 50개의 데이터를 저장하고 1개의 데이터를 출력한다.

 

그러면 재귀식의 경우 계속 데이터를 추가하는 방식으로  += 방식으로 업데이트를 하다보면 변수를 적게 사용하고 같은

 

출력 결과를 낼수있다. 물론  배치식도 좋은 방식이다. 쓰이는 곳이 다르다는 이야기 이다.

 

'지식 > 칼만필터' 카테고리의 다른 글

칼만필터 Kalman Filter 시작  (0) 2020.03.29

작년 말부터  올해 2월까지 나를 괴롭혔고

 

지금은 끝났지만 정리를 해볼 Kalman Filter에 대해서 써봐야 겠다.

 

 

만들면서도 이게 뭔가 ?? 하는 의문도 많았는데

 

결과물이 좋게 나와서 한번 정리를

 

해봐야 겠다.

 

지금부터 다뤄볼 칼만 필터는 UKF까지는 다루지 않고

 

EKF(Extended Kalman Filter) 까지 다뤄볼 예정이다.

 

이론만이 아닌 실제 MICOM과 IMU를 사용하여 C코드와 함께.

 

그리고 MICOM 은 STM32F3 시리즈 센서는 Bosch의  6축센서

 

IDE는 STM32cube 를 사용할 예정.

 

 

'지식 > 칼만필터' 카테고리의 다른 글

Kalman Filter 01. Raw데이터의 평균  (0) 2020.03.30

아두이노에서도 당연하게  다양한 변수를 사용하여 값을 표현이 가능하다.

 

다양한 변수 와 값이 잘 이해가 안된다면 아래를 확인하기 바람.

 

아마 처음 아두이노를 접하거나 책을 처음 봤다면 int가 무엇을 의미하는지 모르고 썻을 것 같다.

 

int ledpin 은 뭐지? 이런 식으로, 

 

아두이노 어플리케이션에서 int 라는 것은 integer의 약어 이다.  integer는 정수를 의미하고

 

16비트값을 나타낸다. 16비트라는것은 2진수로 숫자를 표시할때 나타낼수 있는 숫자의

 

크기를 의미한다.

 

사용하고자 하는 어플리케이션 종류에 따라서 int 말고 다른 유형을 사용하니

 

한번 설명 하고 넘어가고자 한다.

 

숫자 유형 바이트 범위
void 0 null
boll / boolean 1 True / False
char 1 -128 ~ 127
unsigned char 1 0 ~ 255
byte 1 0 ~ 255
int 2 (16bit) -32768 ~32767
unsigned int 2 (16bit) 0~65535
word 2 0 ~ 65535
long 4 (32bit) -2147483648 ~ 2147483647
unsigned long 4(32bit) 0 ~ 4294967295
flaot 4(32bit) -3.4028235E+38 ~ 3.4028235E+38 
double 4(32bit) 3.4028235E+38 ~ 3.4028235E+38

 

C언어를 조금 다루어 봤던 사람들은 flaot과 double 유형이 같다는것에 의아해 할것이지만

 

아두이노에서는 같은 유형으로 취급된다.

 

 

'프로젝트 > 아두이노' 카테고리의 다른 글

6.아두이노의 배열  (0) 2020.04.05
5.아두이노 숫자 유형에 관하여.  (0) 2020.04.01
3.자주 사용하는 아두이노 함수  (0) 2020.03.24
2. 아두이노 프로그램의 구조  (0) 2019.01.03
1. Blink 예제  (0) 2018.10.28

+ Recent posts