Встроенная функция калибровки датчика в Android

Я работаю над приложением, которое использует данные акселерометра и магнитометра и их объединенные данные для работы. Теперь, когда дело доходит до магнитометра, необходимо регулярно его калибровать. Датчик не калибруется из-за явления, называемого эффектом твердого железа. Моему приложению требуются очень точные данные датчика (которые аппаратное обеспечение способно доставить, но шум и некалиброванные значения создают препятствие). Я также знаю, что есть встроенные функции калибровки, работающие в фоновом режиме на Android, потому что много раз (не всегда), когда магнитометр показывает неправильные значения, он исправляется сам без ввода от пользователя (например, 8-образное движение). Я хотел бы знать, как часто Android выполняет эту калибровку и есть ли необходимость в написании собственного кода автоматической калибровки. Другая возможность, если это возможно, вызывать эту встроенную функцию калибровки на некоторой частоте в моем приложении. Документация по Android, которую я просмотрел, содержит очень мало информации об этом.

1 ответ

SensorEvents имеет поле под названием accuracy что меняется для магнитометров на устройствах, которые я тестировал. Это может быть хорошим показателем того, следует ли использовать полученное вами событие или сейчас.

Другие вопросы по тегам