Определение местоположения по базовым станциям в сетях GSM

№ 3’2010
PDF версия
В настоящее время российскими и зарубежными компаниями разработано и выпускается большое количество приборов, использующих GPS-навигацию для определения местоположения объекта. Существенным минусом таких приборов является невозможность определения координат при отсутствии сигналов от спутников системы GPS. В статье рассматривается альтернатива GPS-навигации - определение местоположения по базовым станциям GSM-сети.

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

Использование команды #MONI

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

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

Альтернативой GPS-навигации вполне может служить определение местоположения по базовым станциям GSM-сети. Каждая базовая станция имеет фиксированные координаты (об этом чуть позже) и передает свои основные параметры (LAC — Local Area Code и BSIC — Base Station Identification Code), которые могут быть считаны с помощью специальных AT-команд. Кроме того, возможно получение параметра TA (Timing Advance), значение которого прямо пропорционально расстоянию до базовой станции, с которой в конкретный момент работает GSM-модуль. Чтобы получить расстояние до базовой станции в метрах, необходимо всего лишь умножить TA на 547. Нетрудно заметить, что максимальная погрешность при таком измерении составит 547/2 = 273,5 м. Дополнительным параметром, позволяющим в некоторых случаях улучшить точность определения местоположения, является уровень принимаемого сигнала RxLev, измеряемый в децибелах на милливатт. Естественно, чем ближе находится базовая станция, тем уровень сигнала должен быть выше, однако в реальных условиях это происходит не всегда, особенно в пересеченной местности или в городских условиях.

Навигационное решениес использованием информацииот 4 базовых станций

В качестве примера рассмотрим определение местоположения по базовым станциям с использованием GSM/GPRS-модулей компании Telit. Поскольку система AT-команд всех GSM/ GPRS-модулей Telit унифицирована, предложенная методика будет работать и для новейших разработок, таких как GL865, и для испытанных моделей серий GE864/865 и GC864, и для давно выпускаемых модулей 862-й и 863-й серий. Основная AT-команда, применяемая для определения местоположения, — это #MONI. Она позволяет получить LAC, BSIC, RxLev и некоторые другие параметры как той базовой станции, с которой идет работа модуля в текущий момент, так и шести соседних. Кроме того, по текущей БС возможно получить параметр TA. Этой информации вполне достаточно для определения местоположения в условиях крупных городов, где плотность базовых станций довольно высока практически у любого оператора связи, а радиус действия БС принудительно уменьшен. На рис. 1 приведен пример использования команды #MONI, а на рис. 2 — пример навигации с использованием LAC и BSIC 4 секторных БС и TA одной БС. В этих условиях точность определения местоположения будет составлять около 50 м, что вполне достаточно в большинстве случаев. Справедливости ради следует отметить, что команда мониторинга сети, аналогичная #MONI, есть и у других крупных производителей GSM-модулей, соответственно в условиях мегаполиса для определения местоположения по БС возможно использовать и другие модули, например SIMCOM. Некоторые же мелкие производители GSM-модулей используют упрощенную версию команды мониторинга сети, с помощью которой возможно определить только LAC, BSIC и уровень сигнала (в относительных единицах, довольно грубо) и только для текущей базовой станции. При этом точность определения местоположения значительно ухудшается — погрешность может составлять 200–500 м, что уже недопустимо в большинстве приложений. На рис. 3 приведен пример неудачной навигации с использованием LAC и BSIC только одной секторной БС.

Рис. 3 Навигационное решение
без использования специализированных
команд мониторинга сети

Теперь рассмотрим случай, если измерения местоположения по БС производятся в сельской местности или в небольших городах. Как правило, здесь в любой точке имеется сигнал от одной, максимум — двух базовых станций одного оператора. Причем зачастую диаграмма направленности базовых станций не секторная, как для местностей с высокой плотностью размещения БС, а круговая, что увеличивает возможную погрешность до 10–15 км, а это уже совершенно неприемлемые значения.

На рис. 4 представлен пример двух БС с круговой диаграммой направленности. Вместе с тем очень часто базовые станции различных операторов находятся в разных местах, поэтому если задействовать в определении местоположения БС операторов-конкурентов, можно значительно улучшить точность измерения. Однако использовать стандартные команды мониторинга сети возможно только с SIM-картой того оператора, сеть которого сканируется. Поэтому вариантом, лежащим на поверхности, является использование двух SIM-карт и переключение между ними при необходимости. При этом на время регистрации модуля в новой сети уходит время, и модуль становится недоступным для приема команд, вызовов или сообщений. Кроме того, две SIMкарты все равно не позволят отсканировать состояние всех сетей в заданном месте, поскольку обычно во всех российских регионах работают 3–4 оператора, а использовать четыре SIM-карты только для определения местоположения непозволительно дорого.

Рис. 4 Навигационное решение
с использованием информации
от 2 базовых станцийВ этой ситуации использование модулей Telit может решить проблему, поскольку в продуктах именно этого производителя есть уникальная AT-команда сканирования всех (или заданных заранее) частотных каналов GSM, вне зависимости от принадлежности к оператору, — #CSURV. Результатом выполнения команды является подробный листинг состояния всех частотных каналов с указанием принадлежности к оператору, LAC, BSIC, RxLev и ряда других параметров. Таким образом, становится возможным определить местоположение с точностью 100–200 м в районах с редким расположением базовых станций. На рис. 5 показан пример работы команды #CSURV (часть выдачи), а на рис. 6 — пример навигации с использованием LAC и BSIC трех базовых станций разных операторов и TA одной БС. Некоторым недостатком команды #CSURV является довольно длительное время ее выполнения — до двух минут, при этом управлять модулем по последовательному порту становится затруднительным. Однако здесь на помощь может прийти другая уникальная функция модулей Telit — в них имеется два последовательных порта, которые могут работать независимо. Соответственно, одновременно один порт может использоваться для выполнения коммуникационных функций модуля, а второй — для мониторинга сети GSM. Более того, если и двух портов недостаточно, возможно использование виртуальных последовательных портов в режиме мультиплексирования (технология CMUX). Это позволяет использовать, например, четыре порта для передачи данных по GPRS (причем возможно создание до 8 сокетов одновременно), один — для SMS-сообщений, один — для управления модуля AT-командами и один — для мониторинга сети. Возможны и любые другие конфигурации, в зависимости от потребностей разработчика.

Рис. 5. Использование команды #CSURV

Рис. 6. Навигационное решение
с использованием информации
от 3 базовых станций различных
операторов

Рассмотрим еще один очень интересный вопрос — как все-таки получить информацию о местоположении базовых станций. С формальной точки зрения, это коммерческая тайна оператора связи. Однако, поскольку базовые станции не являются секретными объектами, мониторинг сетей GSM не может быть запрещен операторами, и этим занятием увлекается множество людей. Наиболее интересный проект, поддерживающийся на некоммерческой основе, — netmonitor.ru, проект поиска базовых станций сетей сотовой связи, в основном в Северо-Западном регионе России. Аналогичные проекты имеются и за рубежом. Другим способом получения координат БС является прямая договоренность с операторами связи, которые могут пойти навстречу крупным клиентам на условиях неразглашения информации. Еще один вариант — использование возможности существующих картографических систем, уже обладающих информацией о местоположении базовых станций. Одной из крупнейших, к тому же с бесплатным доступом, является Yandex Maps. При обращении к этому серверу возможно передать LAC и BSIC интересующей БС и в ответ получить карту местности, в которой она расположена, с указанием радиуса ее действия.

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *