2014-07-15 5 views
0

오일러의 나침반과 비슷한 것을 만들고 싶습니다. 약간의 안내가 필요합니다. Accelerometer와 Magnetic 센서를 사용하여 요, 피치 및 롤 각도 (라디안)를 계산했습니다. 이제 다음 단계는 무엇입니까? 몇 시간 동안 인터넷을 검색했는데 관련있는 것을 찾을 수 없습니다. 기준 축에 따라 각도를 구성해야합니까?오일러 나침반을 만드는 방법은 무엇입니까?

+2

아주 좋은 물리학에 유래 –

답변

3

Android Play 스토어의 Euler Compass를 언급한다고 가정합니다.
가속도계 및 자기 나침반 측정 값이 매우 시끄 럽습니다. 자이로 스코프를 고려한다면 더 나은 결과를 얻을 수있을 것입니다. 아마도 칼만 필터 또는 유사한 것일 수도 있습니다. Windows 태블릿에서는 복잡한 수학의 대부분이 이미 완료되었지만 Android 및 iPhone에서는 직접 처리해야합니다.

장치 방향을 나타내는 변환 매트릭스로 시작하는 것이 좋습니다. 오리엔테이션에만 관심이있는 경우 다음과 같이 3x3 매트릭스가 수행됩니다.
1 0 0 (첫 번째 행은 X 축을 따라 가리키는 벡터입니다)
0 1 (두 번째 행은 함께 가리키는 벡터입니다
0 0 1 (세 번째 행은 Z 축을 따라 가리키는 벡터입니다.)

먼저 행렬에 자이로 스코프 회전을 적용합니다.
자이로 스코프는 각 축을 가속시킵니다.
시간에 곱하여 각속도를 얻습니다. (속도)
각도 거리를 얻기 위해 시간을 다시 곱하십시오. (도)
단기간에 자이로 스코프는 다른 두 센서에 비해 매우 정확하고 안정적입니다. 그러나 고정 된 참조 점이 없습니다 다른 두 사람. 즉 이전 읽기 이후로 이동 한 각도 거리 만 제공하므로 시간이 지남에 따라 반올림 오류로 인해 천천히 이탈 할 수 있습니다. 다른 두 개의 센서가 들어있는 곳입니다 ... (자이로 스코프의 드리프트를 방해하기 위해이 센서를 사용하십시오.)
가속도계와 자력계는 정렬 용어에서 매우 시끄럽지 만 평균을 취하면 더 정확한 결과를 얻을 수 있습니다 여러 번의 연속 판독 값 중 (로우 패스 필터) 이것은 게이 스코프의 반대되는 약점 인 장기간에 느려지지만 정확합니다. 그래서 트릭은 두 가지를 결합하여 최상의 결과를 얻는 것입니다. ;)

가속도계는 다운 벡터를 나타내고 자력계는 북쪽 벡터를 나타냅니다. 그래서 매트릭스 아래쪽 벡터와 가속도계의 차이점을 확인한 다음 매트릭스를 가속도계 방향으로 회전 시키십시오. 모든 단계가 아니라 ... 소음을 피하기위한 작은 단계지만, 자이로 스코프의 표류에 충분히 대처할 수 있습니다. (연속 재 교정.) 그런 다음 자기 나침반을 사용하여 동일하게하십시오.

이제 기기 방향을 정확히 나타내는 회전 매트릭스가 있어야합니다. 다음으로 행렬에 빈 행과 열을 추가하고 OpenGL에 전달하면 그래픽을 렌더링 할 수 있습니다.

이 정보가 도움이되기를 바랍니다.

르네

+0

체크 아웃 시도하고 대답을 정교. 고맙습니다! :) –