Научная статья на тему 'Разработка программного обеспечения для обработки данных о местоположении мобильного объекта и их визуализации на электронной карте'

Разработка программного обеспечения для обработки данных о местоположении мобильного объекта и их визуализации на электронной карте Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
572
72
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ОБРАБОТКА ДАННЫХ / ВИЗУАЛИЗАЦИЯ / ЭЛЕКТРОННАЯ КАРТА / PROCESSING DATA / VISUALIZATION / ELECTRONIC MAP

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Камалов Ю. Б.

В работе приводится описание разрабатываемого программного комплекса для обработки данных о местоположении мобильного объекта. Представленный комплекс построен по модульному принципу и состоит из нескольких модулей управления, обработки, моделирования, модулей баз данных и модулей экспорта/импорта (для интеграции с известными геоинформационными системами. Модульный принцип обеспечивает независимость и параллельность работы различных модулей и позволяет производить замену/обновление модулей на вновь разработанные или модернизированные без влияния на работоспособность всего комплекса.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

ELABORATION OF THE SOFTWARE FOR PROCESSING DATA ABOUT THE POSITION OF A MOBILE OBJECT AND THEIR VISUALIZATION IN THE ELECTRONIC MAP

The description of the software complex for processing of data on the position of a mobile object in presented. The complex in based on a module principle and consists of several controlling and processing modules, simulation modules, database modules and export (import modules (to integrate certain geoinformation systems). A module principle provides independence and parallelism of various modeles operation and allows to replace/upgrade modules without exerting any influence on the complex as a whole.

Текст научной работы на тему «Разработка программного обеспечения для обработки данных о местоположении мобильного объекта и их визуализации на электронной карте»

ФИЗИКА И ЭЛЕКТРОНИКА

УДК 621.394

РАЗРАБОТКА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ДЛЯ ОБРАБОТКИ ДАННЫХ О МЕСТОПОЛОЖЕНИИ МОБИЛЬНОГО ОБЪЕКТА И ИХ ВИЗУАЛИЗАЦИИ

НА ЭЛЕКТРОННОЙ КАРТЕ

© 2011 Ю.Б. Камалов

«СМАРТС Ульяновском», филиал ОАО «СМАРТС», г. Ульяновск

Поступила в редакцию 12.05.2011

В работе приводится описание разрабатываемого программного комплекса для обработки данных о местоположении мобильного объекта. Представленный комплекс построен по модульному принципу и состоит из нескольких модулей управления, обработки, моделирования, модулей баз данных и модулей экспорта/импорта (для интеграции с известными геоинформационными системами. Модульный принцип обеспечивает независимость и параллельность работы различных модулей и позволяет производить замену/обновление модулей на вновь разработанные или модернизированные без влияния на работоспособность всего комплекса. Ключевые слова: обработка данных, визуализация, электронная карта.

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

Чрезвычайно важной представляется возможность обработки данных, полученных от различных источников - базовых станций (БС), мобильных станций (МС) и др. Для обеспечения совместимости данных разной природы предлагается использовать «объектный» способ описания данных (рис. 1), при котором в каждый момент времени, формируется динамический вектор параметров, который заполняется в соответствии с имеющимися данными. Такой подход позволяет абстрагироваться от свойств и происхождения данных и выполнять максимально эффективные анализ и обработку данных. Это является важным преимуществом предлагаемого комплекса.

В качестве системы управления базой данных в данном проекте был выбран MS SQL Server. Важной особенностью этой СУБД является высокая скорость обработки данных возможность выполнения на стороне сервера баз данных процедур и функций обработки данных. Это, при сбалансированном подходе к созданию программного комплекса, позволяет просто выполнять распараллеливание процедур обработки между клиентским ПО и СУБД. Программная часть комплекса состоит из набора модулей

Камалов Юрий Борисович, начальник технического отдела. Тел. (8422) 79-07-39. !

обработки и анализа, объединенных в едином продукте, где рассматриваются процессы управления сеансами.

Данный модуль содержит в себе инструменты необходимые для создания, удаления и редактирования сеансов наблюдение. Под сеансом, в данном случае, понимается логическая совокупность наблюдений, объединенных некоторыми условиями. Такими условиями могут быть, например, временные диапазоны. Применение сеансов позволяет упростить классификацию и обработку измерений. Данные по одному сеансу могут собирать сразу несколько устройств. При этом каждое устройство работает только в рамках одного сеанса. Связь между измерениями, сеансами и устройствами поясняется рис. 2.

Данный модуль инкапсулирует в себе инструменты управления мобильными измерительными терминалами. Модуль позволяет добавлять в базу/удалять из базы информацию по критериям физических устройств измерения сети, производить локальное удаленное чтение/запись на-

Пр.1

Пр.2 Пр.3

<3>

Параметры из различных источников

Рис. 1. Объектная модель данных

<

Пр.1

Пр.2

G2D

Рис. 2. Связь между измерениями, сеансами и устройствами

МС

БС

Сеанс 1.

Данные по перемещению абонента А с 9.00 до 12.00 01.10.2010

МС

БС

Сеанс 2.

Данные по перемещению абонента А с 13.00 до 18.00 01.10.2010

Все наблюдения

строек терминала (в том числе настройки связанные с изменением режима работы терминала). Здесь же находятся инструменты сохранения/загрузки настроек терминалов в виде файлов шаблонов и кнопки принудительного сброса накопленной информации с терминалов. Пример интерфейса управления терминалами дан на рис. 3.

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

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

гняц^к

Ш Ж В f -га й> 0

Свойство ¡Значение ;

Идентификатор! термине Терминал 001 Номер терминала 1 Режим работы Faöora с ЦТ

В Настройки соединен [] испытаний 1

Бремя ожидания [сек.) 0 Интервал вызовов (се 0 Время удержания (секЭ Пауза между вызовам Телефонный номер Li" В SMS [J

ТелеФониый номер Отправлять SMS Да Интервал отправки 0 1! Интервалы накоплен [] 11 Наш ройки телефоне [] 3 Настройки aiffmcTBei [] Сеанс Сеанс"!

Показывать в окне цпра Да Не активен (

Рис. 3. Управление терминалами

модулей навигатора в виде отдельного окна. Особенно это удобно при работе с картографической информацией. Как и в любой программе, связанной с обработкой картографической информации, в представляемом программном пакете имеются инструменты, облегчающие навигацию по карте (увеличение/уменьшение масштаба, движение, измерение расстояния и т.п.). Выбор параметров либо задается пользователем вручную, либо загружается из файла шаблона, либо рассчитывается автоматически. Результаты доступны пользователю на той же карте, что и основные слои. Для анализа наблюдаемых данных предусмотрена развитая система построения графиков, позволяющая строить произвольные зависимости параметров от времени наблюдений, накладывать на карту передвижение нескольких абонентов, соотносить данные на графиках с данными на карте. Примеры интерфейса приведены на рис. 4.

Эффективная работа с программным обеспечением, направленным на обработку пространственно разнесенных данных, невозможна без удобных инструментов управления этими данными. Понятно, что при решении отдельных специфических задач разрабатываемое ПО не сможет конкурировать со специализированными пакетами. Это связано с тем, что создание эффективных полноценных инструментов обработки ГИС данных, способных конкурировать с решениями ведущих фирм, не является целью настоящей работы. Пользователю удобнее работать в привычных и хорошо известных им программных средах, применяя данное программное обеспечение только для решения узких задач по определению местоположения абонента в сотовых сетей. Исходя из этих предпосылок, в рамках работы были разработан набор модулей экспорта/импорта для интеграции с известными ГИС. Их возможности представлены в табл. 1.

Таким образом, разработанное ПО позволя-

V Редактирование слоя

Свойства :| Стратификация данных | Параметры данных |

Визуальные свойства слоя

Название слоя Слой2

Цвет линий

Цвет заливки

Размер точек И

Маркировка точек| О ptCircle J

Тип слоя Данные объездов

Г" Показывать слой на карте

Рис. 4. Изменение свойств отдельных слоев карты (передвижение абонента А) Таблица 1. Возможности известных ГИС

Название пакета Импорт данных Экспорт данных

ArcView + +

ArcInfo + (только shp формат) + (только shp формат)

MapInfo + (mif формат) -

AutoCAD + (dwg, dxf форматы) + (только dxf формат)

ет осуществлять импорт данных из других программ (например, файлы подложки) и выгрузку накопленных данных передвижения в основные известные пакеты ГИС. Далее осуществляется оптимизация быстродействия ПО системы мониторинга сетей сотовой подвижной связи.

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

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

При этом для лучшего быстродействия данные радиоэлектронной обстановки (параметры

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

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

стемы. Модульный принцип хорошо сочетается c «клиент-серверным» подходом, применяемым при работе с базой данных. При этом каждый модуль самостоятельно обращается к системе управления базой данных для запроса или модификации данных. Необходимо также отметить, что значительная часть алгоритмов статистической обработки данных реализована в виде хранимых процедур, функций и триггеров базы данных. Это, во-первых, уменьшает вычислительную нагрузку на клиентские терминалы, а во-вторых, позволяет удобно управлять, добавлять или модифицировать алгоритмами с помощью стандартных средств SQL сервера. Упрощенная схема модульной конструкции комплекса представлена на рис. 5.

Применяя описанный подход, удалось реализовать целый спектр алгоритмов, связанных с постобработкой данных (интерполяция, экстраполяция данных, расчет параметров и пр.). Особое значение модульный подход имеет при подготовке и формировании отчетов по имеющимся данным. Дело в том, что структура отчетов и входящие в него данные, как правило, заранее неизвестны, поэтому программная оболочка должна позволять пользователю максимально гибко и удобно готовить, изменять и сохранять собственные уникальные отчеты. Данное требование удалось выполнять, комбинируя возможности SQL сервера, офисного пакета MS Excel и специализированного программного обеспечения для подготовки отчетов FastReport.

Еще одним дополнительным преимуществом модульного принципа построения программного комплекса стала возможность распараллели-

Рис. 5. Программные модули обработки и хранения данных

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

Особую роль при создании систем мобильно-измерительных терминалов играет технология передачи данных. Первоначально при выполнении работы предполагалось, что основным каналом передачи данных с мобильного терминала на сервера приложений будет модемный канал (9600 Кб), а вспомогательным - передача коротких сообщений 8М8.

Условно описанный способ передачи данных можно пояснить с помощью рис. 6.

Реализация указанного подхода на базе одного МС показала, что подобная технология имеет ряд существенных недостатков. Среди них можно отметить:

1. Необходимость использования вспомогательного оборудования на стороне клиентского ПО, для организации соединения с каждым МС.

2. Значительные трудности при организации удаленного управления МС (приходится «вызванивать» каждый отдельный МС для передачи ему управляющего слова).

3. Возможный обрыв соединения и связанная с

ним потеря одного или нескольких блоков данных.

Применение в МС модемов нового поколения позволило получить в распоряжение еще один канал передачи данных - GPRS (EDGE). Использование GPRS позволяет преодолеть проблемы, связанные с модемной передачей данных, однако порождает ряд вопросов, среди которых можно выделить следующие:

1. Каким образом выбрать (или создать) протокол передачи данных.

2. Как быстро восстанавливается GPRS канал при обрыве соединения с БС и хэндовере.

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

4. Как организовать оперативное управление МС, если его IP адрес является динамическим в рамках подсети оператора.

Данные вопросы были изучены в рамках серии практических исследований. Были предложены следующие две основные схемы передачи данных. Первая основана на использовании промежуточного сервиса хранения данных, например FTP сервера (рис. 7). В этом случае передающий GSM модем на МС сохраняет данные в виде файлов установленного формата на заданном FTP сервере. Центральный терминал периодически (1 раз в 5-15 сек) опрашивает этот FTP сервер и при обнаружении новых данных скачивает их себе.

Серьезный недостаток этого подхода - необходимость накопления данных на FTP сервере в процессе работы. То есть данные идут с определенной задержкой (3-5 минут). Второй подход

Передача измеренных данных по модемному каналу + SMS

U

Прерывание активного соединения и организация управления

Центральный терминал

с гюоключенныи мооемом

Рис. 6. Система передачи данных с мобильной станции на сервера приложений

по модемному каналу

FTP сервер

г

МС

Центральный терминал

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Рис. 7. Схемы передачи данных, основанная на использовании промежуточного сервиса хранения (FTP сервера)

GPRS+UDP

МИ1 Центральный терминал

Рис. 8. Схемы передачи данных, основанная на использовании сервера прямых UDP соединений

заключается в организации сервера прямых UDP соединений к центральному терминалу, обладающему выделенным статическим IP или DNS адресом (аналог известного сервиса ICQ). В этом случае данные идут напрямую от МС к центральному терминалу и обратно и промежуточные задержки минимальны (5-7 сек).

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

Исследование скорости соединения и передачи данных показало, что с использованием встроенного аппаратного сжатия трафика реальная скорость передачи данных составляет 1200-1800 байт в секунду для ftp соединений и 2400-3600 байт в секунду для udp соединений. Полученные показатели существенно превосходят параметры модемного соединения и являются приемлемыми.

Таким образом, в рамках настоящей работы были разработаны и реализованы три подхода к передаче данных с МС на центральный терминал. При этом существенным преимуществом создаваемой системы является возможность передачи измеряемой и приема конфигурационной информации МС через сеть Интернет. Это позволяет с минимальными затратами решать вопросы расширяемости системы в смысле использования произвольной совокупности МС. В реальности каждый из МС оперирует своей информационной и конфигурационной директорией на выделенном ftp ресурсе или, в случае использования прямого udp соединения, своими выделенными udp портами.

Далее проводилось тестирование аппаратно-программного комплекса в сотовых компаниях, где проведены испытания аппаратно-программного комплекса в сети оператора связи. Для этого в изготовленные экземпляры МС были установлены SIM карты оператора. Для получения экспериментальных данных в течение опреде-

Рис. 9. Интерфейс программы мониторинга положения MС

ленного времени (10 дней) совершались регулярные объезды территории Ульяновска и Ульяновской области. Результаты измерений передавались как через GPRS в режиме «реального времени» (рис. 9,10,11), так и через промежуточный носитель (ММС карту).

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

♦Ё

Рис. 10. Контроль группового местоположения тестовых МС на карте города

/ 1 Рис. 11. Контроль локального положения МС

ELABORATION OF THE SOFTWARE FOR PROCESSING DATA ABOUT THE POSITION OF A MOBILE OBJECT AND THEIR VISUALIZATION IN THE ELECTRONIC MAP

© 2011 Yu. B. Kamalov

"SMARTS Ulyanovsk-GSM" Branch of Open Corporation "SMARTS", Ulyanovsk

The description of the software complex for processing of data on the position of a mobile object in presented. The complex in based on a module principle and consists of several controlling and processing modules, simulation modules, database modules and export (import modules (to integrate certain geoinformation systems). A module principle provides independence and parallelism of various modeles operation and allows to replace/upgrade modules without exerting any influence on the complex as a whole. Key words: processing data, visualization, electronic map.

Jury Kamalov, Chief of a Technical Department. Tel. (8422) 79-07-39.

i Надоели баннеры? Вы всегда можете отключить рекламу.