Как измерить расстояние между двумя устройствами iPhone с помощью Bluetooth? - PullRequest
35 голосов
/ 02 сентября 2010

Я хотел бы сделать что-то в следующем, используя Bluetooth.

  1. Измерьте и покажите, как далеко мой iPhone от другого iPhone.
  2. Отображение направления моего iPhone.

Например,

Я бы хотел отобразить что-то в своем приложении для iPhone следующим образом.

Мой iPhone подключен к другому iPhone: iPhone Гарри.

В этом случае

  • Расстояние: 3 м, 45,3 см (точность: миллиметр)
  • Направление: северо-восток (одно из 8 доступных направлений)

Кто-нибудь знает, как это сделать? Если я получу ответ, это будет очень благодарно.

Ожидайте хороших новостей.

Спасибо.

Ответы [ 7 ]

34 голосов
/ 02 сентября 2010

Использование bluetooth для локализации - очень известная область исследований ( ref. ). Короткий ответ: вы не можете. Уровень сигнала не является хорошим показателем расстояния между двумя подключенными устройствами Bluetooth, потому что он слишком сильно зависит от состояния окружающей среды (есть ли человек между устройствами? Как владелец держит его / ее устройство? Есть ли стена? Есть ли радиочастотные отражающие поверхности?). Используя Bluetooth, вы в лучшем случае можете получить разрешение на расстоянии в несколько метров, но вы не можете рассчитать направление, даже приблизительно.

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

8 голосов
/ 29 августа 2011

Вы можете использовать звук и знание скоростного звука для расчета расстояния между iPhone.

7 голосов
/ 24 сентября 2013

В iOS7 Apple представила iBeacons. Это даст вам расстояние между 1 телефоном и другим. Это просто для установки, посмотрите пример AirLocate WWDC.

4 голосов
/ 02 сентября 2010

Вы не можете сделать это с Bluetooth. Вы можете измерить расстояние между двумя устройствами BT, проанализировав качество приема BT, но оно будет сильно различаться в каждой новой среде (например, просто в новой комнате или на открытом воздухе). Для направления: здесь точно такая же проблема, особенно внутри зданий. Большое количество эхо-сигналов BT делает практически невозможным получение полезных данных о направлении. Существуют способы определения расстояния и направлений с помощью беспроводных соединений (неважно, BT, WLAN или ZigBee или что-то еще) - не с помощью стандартных пользовательских устройств, а с помощью лабораторного оборудования реального времени.

2 голосов
/ 03 января 2014

нашел это проницательным и полезным:

http://www.youtube.com/watch?v=dMWEl6GBGqk

0 голосов
/ 05 июня 2012

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

0 голосов
/ 02 сентября 2010

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...