Магнитные датчики Android дают разные значения для разных устройств

StackOverflow https://stackoverflow.com/questions/8401817

  •  28-10-2019
  •  | 
  •  

Вопрос

Я пытаюсь провести анализ, который включает интерпретацию результатов, полученных с различных датчиков устройства Android. Прямо сейчас я анализирую датчик магнитного поля , который должен сказать мне (согласно этой странице документации ) значения внешнего магнитного поля в мкТл (микротесла). Пока все ясно, но на 2 устройствах, которые я тестировал (Galaxy S, Galaxy Gio), результаты разные. Под разными я подразумеваю очень разные.

Например, при одинаковой ориентации на столе, вот что показывают эти устройства (только один пример):

родовое слово

Даже если я поменяю положение, результаты будут такими же. Я также читал на эту страницу об интенсивности магнитного поля и считаю, что Учитывая географическую широту, у меня должно быть около 50 мкТл.

Кто-нибудь может объяснить, что означают эти датчики?

Кто-нибудь знает, как объяснить такое поведение?

Спасибо,

Юлиан

Это было полезно?

Решение

Я просто могу подтвердить проблему.

Как автор приложения устойчивый компас , я провели множество испытаний датчиков магнитного поля с различными устройствами. Я обнаружил, что одно из устройств сообщило абсолютное значение mf, примерно в 2 раза превышающее значение, сообщаемое другим другим устройством при тех же условиях.

Я провел много тестов после калибровки телефона и даже перевел устройства в "режим полета", пытаясь минимизировать электромагнитные помехи, исходящие от собственного устройства. Еще один комментарий заключается в том, что подключение USB-кабеля к некоторым устройствам может создавать значительные колебания магнитного поля.

Наихудшие результаты, которые я видел на данном устройстве (после калибровки, режима полета и отключения USB), заключаются в следующем: с помощью приложения компаса, когда устройство находится в горизонтальной плоскости, я снимаю показания, поворачиваю телефон на 90 градусов по горизонтали. самолет и взять новое показание компаса. Оба показания различаются более чем на 15 градусов!

К счастью, не все устройства оснащены такими плохими датчиками. У лучших устройств погрешность составляет около 2-3 градусов после поворота на 90 градусов.

Вывод: если вы не очень уверены в своем датчике магнитного поля, потому что вы проверили и подтвердили его хорошее поведение, вы должны давать ограниченную надежность показаниям, сообщаемым таким датчиком.

Другие советы

У меня тоже были проблемы с датчиками.Я считаю, что телефоны будут давать разные показания датчиков в зависимости от оборудования, используемого производителем. Попробуйте считать точность датчика для SENSOR_STATUS_UNRELIABLE.Возможно, вам придется заново откалибровать магнитометр.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top