Калибровка датчика магнитного поля на ANDROID!

Привет, ребята, я делаю приложение, которое работает как компас.

Я использую акселерометр и датчики магнитного поля для вычисления азимутального угла через sensor.getOrientation ().

Я ищу что-то, что может улучшить точность датчика магнитного поля, так как я получаю это состояние точности, как НЕПОСРЕДСТВЕННО!

Кто-нибудь знает что-нибудь об этом? Я ищу что-то, что может быть жестко запрограммировано или, например, просто физически перемещать телефон, пока он не будет откалиброван!

с наилучшими пожеланиями,

Solutions Collecting From Web of "Калибровка датчика магнитного поля на ANDROID!"

Это не окончательный ответ (я точно ничего не знаю), но мое понимание из онлайн-сообщений заключается в том, что размахивая телефоном примерно на 8 раз несколько раз, в то время как компас используется, он должен запускать автоматическую повторную калибровку. Например, это приложение Google Maps предлагает. Я не знаю, зависит ли это от функциональности приложения (что-то на картах, которые обнаруживают размахивание акселерометром и запускает повторную калибровку), или что-то в стеке Android, или что-то особенное для реализации на телефоне. Попробуй и посмотри!

Например, обсуждение: http://androidforums.com/epic-4g-support-troubleshooting/217317-cant-get-compass-calibrate.html

Эта ссылка, по-видимому, предполагает, что этот процесс вращения по оси / фигуре-8 имеет встроенную функциональность: http://m.eclipsim.com/gpsstatus/

И вот еще одна статья, в которой утверждается, что это встроенная функциональность, и что вам даже не нужно запускать компас-приложение для повторной калибровки для работы: http://www.ichimusai.org/2009/06/20 / как к откалибровать-HTC-магический компас /

Всего несколько баллов

Движение фигуры 8 работает иногда, а не другие, я понятия не имею, почему им действительно нужен какой-то код, основанный на проверке, работает ли движение 8 (предполагая, что физическое движение действительно требуется)

Они также нуждаются в способе обнаружить, что требуется калибровка, я просмотрел код для вывода точности (ненадежная константа), и как только они отправят его вам, они не отправят его снова, так, например, если вы откалибруете, а затем заходите Сильное магнитное поле не будет повторно отправлено (не уверен, почему они это сделали)

Не полностью надежный способ обнаружения текущих проблем заключается в том, что вы также можете использовать выход магнитного датчика и делать что-то вроде поля = sqrt (x * x + y * y + z * z) и проверять, что поле находится между 25 и 65 Затем попросите пользователя выполнить калибровку, если это не так.

Нижняя строка после тестирования 18 телефонов заключается в том, что я никогда не буду зависеть от компаса на базе Android с текущим посещением телефонов, точность всегда будет под вопросом.

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

ПРИМЕЧАНИЕ. На многих неправильных телефонах мы обнаружили, что датчик пишет файл калибровки и файл tmp с тем же именем. Если вы удалите эти файлы и перезагрузите телефоны, файл калибровки воссоздается с нулевыми значениями, а проблемы с холодным запуском и общей калибровкой решаются сами.

Плохая новость заключается в том, что они хранятся в / data / misc и требуют привилегий root (спасибо Google & Sensor mfg!), Поэтому, хотя я подозреваю, что это решит множество проблем для многих разработчиков, это просто небезопасно С точки зрения приложения на рынке.

Я разрабатываю для Android. Я использую Titanium Alloy в качестве инструмента разработки с титановым геолокационным модулем.

Я тестировал только 2 устройства [Galaxy Note и S4] против коммерческого магнитного компаса. После процесса калибровки [наклона вдоль оси 3] и использования двух разных приложений компаса и приложения, над которым я работаю, компас Android кажется достаточно точным для базового использования … корреляция была достаточно хороша для моей цели. Я также обнаружил, что показания компаса прибора очень чувствительны к другим магнитным и электрическим полям … Первоначальная ошибка, которую я сделала, заключалась в использовании функции компаса, в то время как устройство находилось в защитнике устройства с магнитным закрывающим устройством [довольно распространенным на вкладках]. .. Это вмешательство особенно сильное. Поэтому я должен предлагать пользователям моего приложения удалять устройства, защищать устройства от других электроники, а затем выполнять стандартную калибровку перед инициализацией приложения.

Другой вариант:

Перейти к меню датчиков: #*0#*

Затем, если вы видите красную линию в разделе « Magnetic Sensor » и « Need for Calibration вы должны перекалибровать свой компас.

Как;

По словам этих парней ;

Поверните Samsung Galaxy Mini S5 вокруг всех его осей, пока красная линия в черном круге не изменит цвет с красного на синий. Вы также можете запустить движение, которое следует за формой 8. Возможно, для калибровки компаса требуется несколько попыток …