마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

가속도센서를 이용하여 거리측정

0 추천

가속도센서를 이용하여 거리를 측정하려합니다.

StackOverflow에서 정보를 얻어서 코드를 짜기는짯는데 생각보다 원하는 거리의값이 안나옵니다.

            time_elapsed = (long) ((Endtime-startTime)/1000.0);
            currentAcc = (float) Math.sqrt(Math.pow(accelXValue,2)+Math.pow(accelZValue,2)+Math.pow(accelYValue,2));
//          effectiveAcc = lastAcc + currentAcc * time_elapsed;
            distance = lastAcc*time_elapsed+currentAcc*time_elapsed*time_elapsed/2;
            effectiveAcc = currentAcc - lastAcc;
//          distance = Math.abs(effectiveAcc) * 0.5f * time_elapsed * time_elapsed ;
            lastAcc = currentAcc;
            totalDistance += distance;

이 수식에서 누락된점이나 제가 잘못이해한부분이있는건가요?

구리시인 (250 포인트) 님이 2018년 8월 29일 질문

2개의 답변

0 추천
이론적인 공식은 맞는데요.

 

누적 오차 때문에 문제가 있긴 할 것 같아요.

소수점 자리수가 무한대가 아니라 자리수가 있기때문에

누적 오차가 생기죠.

 

FFT 푸리에 변환이나 역변환 그런 계열로

시도해보시면 어떨지 궁금하네요.
임베디드 왕초보 님이 2018년 8월 31일 답변
0 추천
그리고 공식도 좀 틀렸네요.

vt + (at*t)/2

인데 at + (at*t)/2 로 하셨습니다.
임베디드 왕초보 님이 2018년 9월 3일 답변
...