0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Компас дает мне сумасшедшие данные, нужна ли калибровка или это сломался датчик

Компас дает мне сумасшедшие данные, нужна ли калибровка или это сломался датчик?

и он хорошо работал до сегодняшнего утра, когда матрица вращения начала посылать много шумовых данных (изменение N на W за секунду).

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

Я протестировал свое приложение на другом планшете, и оно работает хорошо.

Кто-нибудь знает, почему это происходит? Проблема с датчиком? Нужна ли калибровка?

6 ответов

  • Android точность компаса — когда калибровать?

Я разрабатываю приложение, которое предоставляет некоторые функции дополненной реальности с помощью компаса. Я обнаружил, что иногда мне нужно откалибровать свой компас, чтобы он работал хорошо. Как я узнаю (программно), что калибровка необходима? Я имею в виду, что знаю, как откалибровать компас.

странный эффект для меня: вычисленный текст с @created() дает мне сумасшедшие результаты: например, creation datetime is: 09.02.2015 21:27 xpage показывает: 07.07.2014 20:47 это зависит от открытого документа (это не дата создания элемента дизайна), но я этого не понимаю. Я использую его.

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

Вместо этого это вполне может быть проблемой с вашим окружением. Магнитные поля все время мешают магнитным полям земли. От помех электрооборудования до металлической конструкции, поддерживающей здание. В конце концов, компас-это просто магнит. Если вы встанете рядом с большим куском металла, компас притянется к нему и укажет на него, а не на северный магнитный полюс.

Попробуйте это: Установите состояние GPS, затем отключите всю фильтрацию (настройки. gps & sensors. sensor фильтрация. без фильтрации). Выполните калибровку (рис. 8), а затем переместите телефон вокруг стола рядом с мониторами, кабелями и т. Д. Ты увидишь, как он сойдет с ума. Информация совершенно недостоверна. В прошлом я обнаружил, что перемещение телефона на несколько дюймов вправо полностью изменило его показания. То же самое происходит и с настоящим компасом. Строго говоря, нет «problem». Компас устройства находится в сильнейшем магнитном поле. Даже магнитное содержание близлежащих пород может повлиять на компас.

В качестве дополнительного теста я только что разместил на своем телефоне настоящий компас (ориентирование), на котором установлено приложение для компаса. Настоящий компас теперь указывает куда угодно, только не на магнитный Север. Эти два устройства мешают друг другу.

Поэтому мой совет . идите куда-нибудь на открытое место, например в парк или поле, подальше от любых потенциальных помех и линий электропередач (если у вас есть такой компас, возьмите с собой настоящий компас, чтобы проверить, что приложение GPS status указывает правильный путь), и посмотрите, работает ли ваш компас так, как вы ожидаете.

Дополнительно: Ответ от @resus также важен при калибровке. Поверните телефон несколько раз по каждой оси. Выглядит глупо, но он правильно калибрует его.

Дополнительно 2: Можно ли/практично ли использовать компасный пеленг вашего GPS? Это потребует, чтобы устройство двигалось (скорость ходьбы должна быть в порядке), но вам не нужно будет беспокоиться о каких-либо помехах. Он должен давать точные показания при условии, что ваш сигнал GPS хороший.

Дополнительная 3: Мне только что пришла в голову еще одна мысль.. Вы можете попробовать применить фильтр нижних частот к датчику. Это означает, что внезапные изменения показаний датчика отфильтровываются .. взгляните на этот ответ . И если это не поможет, в Интернете есть много алгоритмов, из которых вы можете выбрать.

Читайте так же:
Чем открыть файл в формате SVG – лучшие программы и онлайн-редакторы

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

Пока ваше приложение работает (т. Е. Компас используется), вы должны иметь возможность помахать им на цифре 8, чтобы автоматически откалибровать компас. Вы также должны убедиться, что вы не стоите рядом с какими-либо большими кусками металла и т. Д., Которые могут помешать показаниям.

Вы можете переопределить метод onAccuracyChanged() от SensorEventListener до flash, отправив сообщение пользователю, когда компас требует повторной калибровки (возможно, когда точность падает до SENSOR_STATUS_ACCURACY_LOW ).

По моему опыту игры с компасом на телефонах android, они могут быть довольно ненадежными.

  • Могу ли я использовать датчик Холла tinkerkit в качестве компаса

Я использую щит Tinkerkit в сочетании со стандартной платой Arduino. Мне нужен простой датчик компаса, чтобы определить направление (мне не нужна большая точность), к сожалению, подобного датчика, который работает out of the box с Tinkerkit, не существует. Могу ли я использовать стандартный датчик.

Мое приложение использует датчик ориентации, как вы можете видеть здесь: SensorManager sensorMgr = (SensorManager) getSystemService(Context.SENSOR_SERVICE); Sensor sensor = sensorMgr.getDefaultSensor(Sensor.TYPE_ORIENTATION); Я хочу определить < uses-feature> в моем файле манифеста, чтобы.

Если ваше приложение работает на другом планшете, а другое приложение компаса не работает на вашем устройстве, это, вероятно, связано с плохой калибровкой.

Как было сказано в посте выше, чтобы выполнить калибровку, помашите устройством цифрой 8. Я просто хочу добавить, что вы должны сделать это для EACH axis. Это должно решить вашу проблему.

Если это не ошибка калибровки, как уже ответили некоторые люди, вполне возможно, что компас прошел через магнитное поле и теперь он размагничен, поэтому он не работает должным образом.

Где вы обычно храните планшет? Может быть, это было рядом с большими серверами или магнитами? Вы должны проверить компас на всякий случай, обратитесь в техническую поддержку to android.

Надеюсь, это поможет.

В любом случае, я думаю, что хорошо дать несколько секунд приложению, прежде чем начать принимать данные, потому что оно дает некоторые нестабильные значения (слишком высокие и низкие за короткое время без движения) в момент загрузки приложения. Просто дайте обработчику onSensorChanged() кодироваться условным и запустите поток на обработчике onCreate() , который через несколько секунд установит значение boolean в true. Затем вы начинаете захватывать данные в обработчике onSensorChanged() .

Также этот поток может помочь определить точность датчика, и тогда вы можете всплывающее окно: В Android могу ли я программно определить, что компас еще не откалиброван?

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

В настоящее время мне посчастливилось разработать робота с HMC-5983 и MPU-6050 , который можно откалибровать, используя его библиотеки с Arduino.

Этот код совместим/переносим с другими uController, но не так прост для смартфонов, я думаю, что смещения, необходимые для калибровки компаса, гироскопа и акселерометра, находятся внутри некоторых внутренних компонентов Android, недоступных в SDK.

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

Читайте так же:
Как замедлить видео

Итак, удачи ! Что также верно, так это то, что в обоих устройствах (смартфоне и моем роботе) их нужно перемещать, чтобы они хорошо работали, как я показал вам в видео последнего ответа, также полезном для роботов.

Удачи и много веселья с этими вещами, очень мощными.

Похожие вопросы:

Поэтому я строил движок AR, который использует магнитный компас и телефонную ориентацию ECT.. В процессе работы я построил бесплатный глупый AR-компас и в тестировании понял, что 90% времени он.

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

Что мне делать, если компас на двух или более разных устройствах дает мне разные заголовки? Я пытался откалибровать компас на приборах, но все равно иногда они показывают мне разные заголовки.

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

странный эффект для меня: вычисленный текст с @created() дает мне сумасшедшие результаты: например, creation datetime is: 09.02.2015 21:27 xpage показывает: 07.07.2014 20:47 это зависит от открытого.

Я использую щит Tinkerkit в сочетании со стандартной платой Arduino. Мне нужен простой датчик компаса, чтобы определить направление (мне не нужна большая точность), к сожалению, подобного датчика.

Мое приложение использует датчик ориентации, как вы можете видеть здесь: SensorManager sensorMgr = (SensorManager) getSystemService(Context.SENSOR_SERVICE); Sensor sensor =.

Может ли кто-нибудь сказать мне, использует ли “getBearing” телефонный компас (магнитный север) или просто вычисляет пеленг, хранящий одну координату, где пользователь прошел, и вычисляет пеленг.

Я интересуюсь AR приложениями мобильных устройств и, естественно, хотел бы лучше использовать компас. Единственная проблема, с которой мне приходилось работать, — это не то, насколько дерганый.

До сих пор я использовал датчик TYPE_ORIENTATION на Android, хотя он устарел и очень неточен, поэтому я решил, что мне нужно что-то получше. То, что мне нужно получить, — это ориентация на магнитный.

Как работает калибровка компаса?

Мне интересно, как работает калибровка компаса / почему, например, рисование 8 или вращение телефона по всем 3 осям работает (или, по крайней мере, должно работать) — я имею в виду, я бы понял процесс калибровки, если приложение скажет мне: Укажите на север, затем нажмите эту кнопку там, но вы можете начать с нуля приложения, просто вращая телефон! Как это сделать? Кроме того, мне нужно войти в специальный режим калибровки или я могу нарисовать эти цифры (например, 8) непосредственно в Google Maps? Как Google Maps узнает, что я не просто перемещаю телефон, но хочу откалибровать компас? Спасибо за любую подсказку!

Калибровка компаса работает путем определения напряженности магнитного поля Земли. Но иногда из-за сильных помех от других электронных устройств, таких как трансформаторы, датчик компаса может неправильно понять магнитные полюса Земли и может указывать в неправильном направлении.

Чтобы убедиться в этом, он просит пользователей откалибровать компас, вращая его в направлении, указанном на рисунке 8, чтобы он мог судить об интенсивности магнитного поля во всех направлениях. Из этих данных он выводит фактические полюса Земли.

Читайте так же:
Не работает флешка в linux помогите.

Цель калибровки — выяснить, как компенсировать влияние компонентов вашего телефона (винты, магниты динамиков и т. Д.) На измеренное магнитное поле.

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

Когда вы поворачиваете телефон, магнитометр записывает, как изменяется величина измеренного поля, и использует его для калибровки датчиков магнитного поля x, y и z. Смотрите геометрикал ответ на аналогичный вопрос для более подробной информации об этом процессе. Обратите внимание, что эта калибровка не позволяет компенсировать влияние других внешних объектов (например, вашего холодильника) на магнитное поле.

Что касается реализации в Google Maps: я считаю, что Google Maps не контролирует калибровку компаса, потому что в Android API такой функциональности нет. Магнитометр, вероятно, постоянно калибруется, и Google Maps просто просит вас повернуть телефон, чтобы магнитометр мог собирать данные, необходимые для точной калибровки.

Другими словами, вы можете откалибровать ваш компас в любое время, когда датчик магнитного поля используется, просто взмахнув телефоном — нет «режима калибровки».

В любой точке пространства напряженность и направление магнитного поля является суммарным эффектом всех источников магнитного поля, влияющих на эту точку. Магнитное поле Земли является одним из них. Намагниченные отвертки, машины, магниты на холодильник и т. Д. — все это создает поля. Поля также создаются током, протекающим через провода. Это как наливать воду в стакан из нескольких источников. Как только он в стекле, вы не можете сказать, откуда он.

Не существует инструмента, который мог бы определять «фактические полюса» Земли путем измерения магнитного поля в точке. Однако телефон может определить точку, в которой ось телефона параллельна силовой линии N / S, и определить, какой конец телефона направлен на север. Если вы танцуете вдали от объектов, которые могут намагничиваться, таких как автомобили и стальные заборы, поле, которое измеряет телефон, может быть в первую очередь полем земли, и, следовательно, компас телефона будет правильно откалиброван. Однако если вы поместите телефон в намагниченную машину, он укажет неправильное направление на север. Сталь в каждой машине намагничена в той или иной степени.

Высокоточные компасы такого типа используются на самолетах, а серьезные морские суда на самом деле имеют крошечные корректирующие магниты, которые регулируются винтами для ошибок N / S и E / W. Они калибруются после установки путем поворота транспортного средства по известным направлениям (например, роза компаса, нарисованная геодезистом на рулежной дорожке вдали от металлических зданий) и возни с магнитами, пока ошибка компаса не будет минимизирована. Затем остаточные ошибки записываются на «карту коррекции компаса» для использования при коррекции указанных показаний. Поиск «карта коррекции компаса», чтобы увидеть изображения.

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

Читайте так же:
Зеленый экран

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

Если вы не компенсируете это и просто используете чтение как есть и пытаетесь рассчитать направление на север, вы обнаружите, что они неверны: вращение телефона на 90 градусов вокруг вертикальной оси не приводит к вращению измеренного магнитного поля на тот же угол (это справедливо для любого угла, просто проверить его с углом 90 градусов).

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

Как правильно откалибровать компас на Android-устройстве

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

Компас в телефоне

Одним из встраиваемых в мобильные девайсы датчиков является компас, он выручает даже в тех случаях, когда GPS не отображает реальные данные, и просто незаменим, если нужно определить стороны света или выбраться из незнакомых мест за чертой населённых пунктов.

В приложении навигации могут сбиться настройки, в результате чего определить верное направление становится проблематично. Стрелка компаса при этом может показывать не в ту сторону, вращаться или просто стоять на месте. Исправить проблему несложно путём перенастройки и справиться с задачей, следуя инструкции, способен даже неопытный пользователь. Расскажем, как откалибровать компас на Android, если вы заметили, что он стал некорректно работать.

Калибровка с помощью Google Maps

Избавиться от неудобств, связанных с неправильным определением направления можно средствами стандартного картографического сервиса Карты Google, используемого для определения координат.

Калибровка компаса на устройствах под управлением Android с помощью Google Maps выполняется следующим образом:

  • Открываем Google Maps на устройстве.
  • Жмём синюю точку на карте, указывающую текущее местоположение (геолокация должна быть включена).
  • Выбираем «Откалибровать компас».
  • Очерчиваем смартфоном в воздухе восьмёрку.
  • Компас будет откалиброван и луч укажет верное направление.

Калибровка компаса с помощью Google Maps

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

Калибровка с помощью специального кода

Проверка функционирования датчика возможна с использованием сервисного меню и ввода USSD-команды *#0*#.

На некоторых моделях смартфонов способ срабатывает только при наличии root-прав.

Для диагностики выполняем следующие действия:

  • Активируем на телефоне панель набора номера.
  • Вводим с виртуальной клавиатуры запрос, состоящий из комбинации символов *#0*#, жмём клавишу вызова, что позволит войти в сервисное меню.
  • Выбираем раздел «Датчик» или «Сенсор».
  • Здесь можно просматривать показания датчиков смартфона. О том, что калибровка компаса была выполнена правильно, свидетельствует изображение чёрного круга с синей линией и цифрой 3.

Калибровка компаса с помощью USSD-команды

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

Калибровка с помощью сторонних приложений

Ещё один вариант перенастройки компаса подразумевает использование специального софта, который можно бесплатно скачать в официальном магазине Google Play Market. Работать с программным обеспечением данной категории просто. Одним популярных приложений, позволяющих откалибровать компас на телефоне, является GPS Essentials. Рассмотрим, как выполняется настройка компаса на устройстве Android на его примере:

  • Устанавливаем софт из Play Market стандартным образом.
  • Запускаем на смартфоне приложение и переходим в режим «Compass».
  • При нестабильном функционировании компаса выбираем в настройках «Calibrate».
  • Начинаем процесс калибровки, для чего ставим смартфон экраном вверх и вращаем вокруг своей оси.
  • Переворачиваем устройство экраном вниз и опять вращаем, после чего выполняем то же действие, установив девайс боком.
  • На этом настройка завершена.
Читайте так же:
Как сделать кроссворд в Excel

Чтобы откалибровать компас на телефоне, можно использовать и другие утилиты, ассортимент ПО в Play Market позволяет выбрать программу на свой вкус, функционалом некоторых из них предусматривается настройка и прочих датчиков смартфона. Например, стоит попробовать хорошее приложение GPS Status & Toolbox.

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

Если ни один из способов калибровки не оказался эффективным, возможно, неправильная работа компаса обусловлена выходом из строя датчика, в таком случае решить проблему помогут в сервисе.

Как откалибровать компас телефона Android — когда навигация сходит с ума

Как откалибровать компас вашего телефона Android

Как откалибровать компас вашего телефона Android

Об этом уроке Как откалибровать компас вашего телефона на Android?

В этом видеоуроке вам будет показано, как откалибровать компас или компас вашего телефона Android, когда телефон неправильно указывает направление в программном обеспечении для навигации или ориентации туриста.

Как проявляется нарушение компаса телефона?

Иногда при использовании приложения для навигации или гидов мы замечаем, что телефон указывает нам в неправильном направлении. То есть направление стрелки на экране не является правильным. Это означает, что у телефона сломан компас, и мы должны его отрегулировать.

Что такое компас телефона?

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

С помощью компаса или компаса, как его называют по-английски, телефон знает свое положение в пространстве.

Как и аналоговые компасы, компас (магнитометр) также время от времени ломается. На самом деле это не мешает и это становится запутанным в вычислениях, когда появляется новое магнитное поле.

Как настроить компас телефона?

Магнитометр в телефоне постоянно измеряет магнитное поле Земли и регулирует его изменения положения при перемещении телефона, движение которого он рассчитывает с помощью гироскопа.

Когда появляется новое магнитное поле, такое как магнит на холодильник рядом с телефоном, магнитометр начинает сбиваться с толку и приводит в неправильном направлении.

Именно у людей кружится голова от алкоголя или спинов, поэтому у компаса кружится голова от магнитов.

Как откалибровать компас вашего телефона на Android?

  1. На Android мы открываем приложение Google Maps.
  2. Нажмите на курсор, который указывает на местоположение
  3. Внизу слева у вас есть кнопка Калибровка Busola
  4. Нажмите кнопку и следуйте инструкциям на экране
  5. Во время движений вы заметите, как изменится его точность.
  6. В конце на экране напишет Калиброванный компас

Остерегайтесь магнитного телефона!

Старайтесь не ставить телефон рядом с магнитами. И даже если вы пройдете, сделайте еще одну калибровку компаса перед важным маршрутом.

Калибровка выполняется с помощью приложения Google Maps, и калибровка будет действительна во всех приложениях, играх и т. Д.

Навигация, ориентация, учебные пособия по путешествиям:

Видеоурок — Как откалибровать компас вашего телефона на Android

голоса
Рейтинг статьи
Ссылка на основную публикацию
ВсеИнструменты
Adblock
detector