2010-02-16 5 views

답변

16

단순한 단일 극, 로우 패스, 재귀 IIR 필터는 빠르고 쉽게 구현할 수 있습니다. 여기서 x, y는 원 (필터링되지 않은) X/Y 가속도계 신호 XF있다

xf = k * xf + (1.0 - k) * x; 
yf = k * yf + (1.0 - k) * y; 

는 YF 필터링 된 출력 신호이고, k는 필터 시간 상수 (0.9 0.9999 사이 통상 값을 결정한다. .., 여기서 더 큰 k는 더 긴 시간 상수를 의미 함).

당신은 경험적으로 k를 결정할 수있다, 또는 당신이 당신의 요구 차단 주파수, Fc을 알고 있다면, 다음 수식을 사용할 수 있습니다 Fs는 샘플 속도입니다

k = 1 - exp(-2.0 * PI * Fc/Fs) 

.

xf, yf는 RHS의 출력 신호의 이전 값이고 위의 식의 LHS의 새로운 출력 값입니다.

가속도계 신호를 일정한 시간 간격으로 샘플링한다고 가정합니다. 10ms마다. 시간 상수는 k와이 샘플링 간격의 함수가됩니다.

+0

그래서 x와 y는 가속도계 x와 가속도계입니다. 저는 혼란 스럽습니다. '원시 입력 신호'가 무엇인지 모르겠습니다. :/ – DotSlashSlash

+1

아니요, y는 필터링 된 신호이고, x는 가속도계가 준 것입니다. xf = k * xf + (1.0-k) * x' 여기서 xf는 x의 필터링 된 버전이고, y 축은 비슷한 방정식입니다. –

+0

@Andrew - 제안 해 주셔서 감사합니다. 이제 선명도가 향상되도록 편집되었습니다 (희망 사항입니다.). –

관련 문제