Обсуждая позиционирование, вам нужно сначала более конкретно определить свои потребности.
Специалисты по компьютерам/GPS предположат, что вам нужна точность до миллиметра, если не выше, поэтому они либо предоставят вам больше информации, чем вам нужно, либо скажут, что это невозможно [оба жизнеспособных ответа].
Однако в РЕАЛЬНОМ МИРЕ большинство людей ищут точность не более 3 футов [или 1 метр] — и, скорее всего, готовы принять точность в пределах 10 футов [т.е. визуальное расстояние].
iOS уже предоставляет вам этот уровень точности — их API дает вам расстояние как «близкое, среднее, далекое» — поэтому в пределах 10 футов все, что вам нужно проверить, это то, что расстояние «близкое» или «среднее».
Если ваши потребности выходят за рамки этого, вы можете довольно легко предоставить пользовательскую функциональность. У вас есть 32 бита информации [старший и второстепенный коды]. Этого более чем достаточно для хранения широты и долготы каждого маяка В самом маяке с использованием кодирования Мортона, http://www.spatial.maine.edu/~mark.a.plummer/Morton-GEOG664-Plummer.pdf< /а>
Пока высота [высота] не является фактором и ни один маяк не будет развернут в пределах 1 метра от другого маяка, вы можете закодировать каждую пару широта/долгота в одно 32-битное целое число и сохранить его в основном и второстепенном коде.
Используя только основной код, вы можете определить местоположение маяка [и, следовательно, телефона] с точностью до 100 метров [консервативно]. Это означает, что многие маяки в радиусе 100 метров будут иметь ОДИНАКОВЫЙ основной код.
Используя второстепенный код, вы можете определить местоположение маяка с точностью до 1 метра и местоположение телефона с точностью до 10 футов.
Код для этого уже написан и широко доступен - просто ищите код, который демонстрирует, как это "невозможно" сделать, игнорируйте комментарии о том, что это невозможно, поскольку они сосредоточены на точности в большей степени, чем вы заботитесь.
**Примечание: как упоминалось в более поздних сообщениях, внешние факторы будут влиять на мощность сигнала, но, опять же, это, вероятно, не имеет отношения к вашим потребностям. iPhone sdk предоставляет 3 «расстояния»: «близко, близко, далеко».
Далеко проблемный. Предположим, маяк с дальностью действия 150 футов. Проверьте с помощью iphone, чтобы определить, каковы идеальные два близких расстояния ... предположим, что в пределах 5 футов «близко», а в 15 футах «близко».
Если телефон A находится рядом с маяком B [которое имеет известное местоположение], то вы знаете, что человек находится в пределах 15 футов от точки X. Если есть много помех, он может быть на расстоянии 3 фута или 15 футов, но в любом случае это «в пределах 15 футов». Это все, что вам нужно.
Точно так же, если вам нужно знать, находятся ли они в пределах 5 футов, вы используете «близкое» измерение.
Я твердо верю, что 80% всех потребностей в позиционировании обеспечивается текущей схемой. Если это не так, вы выполняете свою первоначальную реализацию с ограничением в качестве доказательства концепции, а затем связываетесь с одним из многих экспертов ibeacon, чтобы предоставить последнюю часть точность.
person
garyamort
schedule
30.09.2014