2010-06-01 4 views

답변

2

속도와 방향을 결정하기 위해 가속도계와 디지털 나침반을 휴대 전화에 함께 사용할 수 있습니다.

사람이 걷고 있는지 확인하기 만하면 필요한 것은 가속도계뿐입니다. 걸음 걸이를위한 출력물 만 처리하면됩니다.

가속도계로 발 단계를 감지하기위한 웹 튜토리얼이 많이 있습니다.

+1

자습서를 하나 이상 핀 포인트 할 수 있습니까? – Pentium10

+1

여기에 앱 노트가 있습니다. http://www.analog.com/library/analogDialogue/archives/41-03/pedometer.html 괜찮은 수학적 배경과 예제 알고리즘을 제공합니다. 물론 수학을 추출하여 Android 용으로 다시 작성해야합니다 (예제 코드는 C로 작성되었습니다). 나는 발걸음 탐지 알고리즘을 가진 오픈 소스 안드로이드 라이브러리에 대해 현재 알지 못한다. – Mark

+1

사람이 걷는 지 아닌지 알고 싶은 경우, 각 단계를 감지하고 보폭을 결정하는 모든 작업을 수행 할 필요가 없습니다. "걷기"v "걷지 않음"에 대한 기본 메트릭을 만들 수 있습니다. 우리가 걷고 있거나 달리고있는 어떤 시간대 Y에서 총 가속도가 X 이상인 경우와 같은 것입니다. 그 사람이 한 번에 30 초 동안 자신의 휴대 전화를 격렬하게 흔들기를 좋아하지 않는 한 합리적으로 정확해야합니다. – Mark

0

Wi-Networks 및 Cell Towers에서도 위치 정보를 얻을 수 있습니다. Android의 모든 위치 제공 업체는 android.location.LocationProvider의 하위 클래스입니다. 아마 시작하기에 좋은 장소 일 것입니다. "범위"가 수백 피트 너비 일 수 있기 때문에 그 중 하나가 당신에게 가장 좋을지 모르겠습니다.

+1

들이'speed' 어떤 종류의를 제공하고 있는가? 내가 속도를 얻으려고하는 것처럼, 위치 변화가 아닙니다. – Pentium10

+1

흠, 나는 그것으로부터 곧은 속도에 관해 모른다, 나는 그것을 멀리 보았다. 나는 두 번 폴링 한 다음 거리/시간 = 속도를 계산할 수 있다고 생각합니다. –

+0

셀 타워 위치는 날씨 앱과 같은 장소에서만 현지화에 사용되어야하거나 광역/일반 위치가 필요한 곳에서 사용해야하기 때문에이 방법은 매우 나쁩니다. GPS가있는 Google지도를 사용해보고 직접 확인하십시오. – HXCaine

0

Android 가속도계는 SensorEvent 클래스를 사용하여 가속도를 알 수있는 기능을 제공합니다. 따라서 클래스의 객체를 사용하고 onSensorChanged()를 처리하여 장치의 움직임을 확인하십시오.

x = sensorEvent.values ​​[0]; x 방향의 가속도를 나타냅니다.

그렇다면 x, y 및 z 방향의 가속도를 찾고 마지막 10 개의 샘플에 대한 평균 및 표준 편차를 계산하십시오. 표준 편차로 작업하면 반드시 정확한 지점으로 이동합니다! 0이되면 장치가 정지되었음을 의미합니다. 15 초 이상 SD> 0.5 일 경우 장치가 지속적으로 움직이는 것을 의미합니다! 당신이 더 많은 도움이 필요하면 Lemme 알아!

건배, 니씬

+0

약간의 동작과 걷기를 어떻게 구분할 수 있습니까? – Pentium10

+0

@nithinreddy u pls 더 나를 도울 수있는 방법 거리를 계산할 수있는 거리를 사용자가 여행하는 동안 나는 단지 약 20m 또는 30metres의 거리를 계산해야합니다 – Erum

관련 문제