2014-10-08 4 views
0

Я хочу знать, знает ли кто-нибудь способ использования данных, которые посылает ibeacon на телефон, вы можете использовать это для вычисления его долготы и широты. Будучи тем, что я знаю Long и Lat телефона, используя базовое расположение (ios, objc), я думал, что должен быть способ, чем принимать данные о расстоянии, чтобы рассчитать длинный и лат маяка. Есть идеи?Получение географического местоположения Long и Lat iBeacon в iOS

Im использование оценки iBeacons и их SDK.

ответ

2

Устройства Bluetooth с низкой энергией (BLE) не сообщают о своем местоположении; все, что они делают, транслируется кортежем: (UUID, Major, Minor). Ранжирование устройств BLE аппроксимируется исходя из принятой мощности сигнала, при этом любая применяемая к нему дистанционная мерка никогда не будет на 100% точнее.

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

Короче говоря, iBeacons не сообщают об их широте/длине и расстоянии от вас до определенного iBeacon пока не представляется возможным с достаточной степенью точности. Лучшее, что вы можете сделать, это сказать: «Я обнаружил iBeacon, и мое текущее местоположение (lat/long). IBeacon, вероятно, находится в пределах х метров». Где x основано на силе сигнала и снабжено оговоркой, что это смутное приближение.


Edit:

В качестве альтернативы можно записать широту/долготу местоположения, где вы ожидаете размещения ваших iBeacons, а затем настроить сервер где-то (или вы можете просто закодировать это правильно в сборку, если вас не волнует необходимость обновить ее на лету), которая переведет пара Major/Minor в lat/long, используя поиск базы данных, который вы создаете.

+0

Привет, Ян, спасибо за ответ. Если это так, то как оценивает внутренний sdk график из комнаты на основе вашего относительного местоположения к маякам http://estimote.com/indoor/? Я бы подумал, что маяки должны знать расстояние и направления, чтобы справиться с этим? – Matt

+0

Чтобы использовать функциональность Estimote Indoor, ваша задача - определить, где маяки находятся в вашем пространстве, используя «ESTLocationBuilder». Используя комбинацию оценки силы сигнала и расстояния и триангуляции, они могут позиционировать вас в пространстве, используя известные физические местоположения маяков. Я не уверен, как они оценивают ориентацию, но это может быть комбинация вышеуказанного позиционирования с акселерометром устройства; сначала вычислите базовый уровень, затем используйте акселерометр оттуда, чтобы синхронизировать ориентацию. –

Смежные вопросы