Разработка баз данных 'Навигация в здании'

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    485,53 Кб
  • Опубликовано:
    2014-03-11
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Разработка баз данных 'Навигация в здании'

Введение

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

Indoor Positioning System (IPS) - cеть из устройств, используемых для определения местоположения объектов или людей внутри здания. Вместо спутников, IPS использует близкие к нему точки с уже известными координатами. Созданные для IPS устройства используют оптические, радио и акустические технологии.[1]

Local positioning system (LPS) - это навигационная система, которая обеспечивает информацию о местоположении в любую погоду, в любом месте в пределах зоны действия сети, где есть прямой доступ до трех или более сигнальных маяков [2] из которых известно точное местоположение. Особый типом LPS является система определения местоположения в режиме реального времени (Real-time LS [3]), которая и позволяет в режиме реального времени отслеживать объекта или человека в замкнутом пространстве, например в здании.[4]

Hybrid positioning systems - системы для нахождения местоположения мобильного устройства, использующие несколько различных технологий позиционирования. Обычно GPS является одним из основных компонентов таких систем, в сочетании с вышками сотовой связи, беспроводными технологиями, Bluetooth или других локальных систем позиционирования.

Эти системы специально предназначены для преодоления ограничений GPS.[5]

Цифровая карта - цифровая модель местности, созданная путем оцифровки картографических источников, фотограмметрической обработки данных дистанционного зондирования, цифровой регистрации.[6]

Трилатерация - метод определения положения геодезических пунктов путём построения на местности системы смежных треугольников, в которых измеряются длины их сторон. Является одним из методов определения координат на местности наряду с триангуляцией (в которой измеряются углы соответствующих треугольников) и полигонометрией (производится измерение как углов, так и расстояний).[7]

На данный момент практически все у кого есть мобильное устройство с возможностью глобального позиционирования (GPS, ГЛОНАСС) пользуются услугой определения местоположения. Однако, несмотря на существенную помощь в нахождении пользователя на карте, эта услуга не доступна внутри помещений. Непосредственный прием сигналов спутниковых систем возможен только в условиях открытого пространства. Наличие различных перекрытий, а также плотная застройка городов, приводят к ослаблению уровня сигнала, повышению помех и снижению точности определения координат в точке измерения. Это приводит к тому, что в настоящее время популярными оказываются услуги по определению местоположения мобильных абонентов на основе наземных систем, таких как GSM, UMTS (сотовые системы мобильной связи) и Wi-Fi (сети беспроводного доступа).

Мобильные устройства используются повсюду. Согласно данным Strategy Analytics [8], в настоящий момент пользователи мобильных приложений, находящиеся внутри зданий, создают до 80% мобильного трафика. По данным EPA 90% всего времени люди тратят находясь в помещении[9 1:17 минута]. Из-за такого интереса пользователей в данный момент ведется множество разработок приложений для позиционирования человека в здании (Indoor Location).

В 2012 году большими компаниями (Nokia, Samsung и др.) создали альянс "In-location Alliance" для продвижения IPS [10].

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

Приложения использующие навигацию внутри помещения[1]:

1.       Дополненная реальность

.         Кампус школы

.         Навигация внутри музеев, аэропортов, торговых центров и бизнес-центров

.         Навигация в торговом центре

.         Навигация в аэропорту

.         Навигация в магазине

.         Целевая реклама

.         Навигация в больнице, университете, торговом центре

.         Навигация в случае аварийной ситуации

.         Cheсk-in приложение

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

На данный момент не существует общей открытой платформы на основе, которой можно было бы реализовывать проекты по навигации внутри зданий. Разрабатываемые проекты Google Maps[11] или Nokia[12] и др. являются закрытыми и не дают возможности сделать приложение удобное отдельной компании или лично пользователю. К тому же зачастую подобные проекты представляют собой приложения для выполнения одной функции (только навигация в аэропорте, только в ТЦ и т.д.).

Цель работы: разработать проект платформы позволяющей осуществлять навигацию и место-определение пользователя в здании.

Для выполнения поставленной цели необходимо решить следующие задачи:

. провести анализ предметной области;

. разработать требования к платформе;

. разработать интерфейс пользователя;

. разработать схему базы данных;

. разработать запросы к базе данных.

Объектом исследования является база данных.

Предмет исследования - проектирование базы данных для платформы навигации внутри зданий.

Структура данной работы такова:

В первом разделе проводится анализ предметной области, на котором в дальнейшем будет основана разработка требований к разрабатываемой платформе. Анализ проводится на примере сервисов:

) Google Maps

) MazeMap

) GateGuru

Во втором разделе, на базе проведенного анализа, разрабатывается список основных требований к платформе.

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

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

В заключительном разделе делаются выводы из проделанной работы.

сервис навигация реляционный запрос

1. Анализ предметной области

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

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

Источники, использованные для исследования предметной области:

. Википедия (свободная энциклопедия) дала описание терминов и позволила быстро найти необходимую связанную с данными терминами информацию.

. Google I/O 2013 - The Next Frontier: Indoor Maps данная конференция довольно точно и кратко описывает важность indoor-навигации в помещениях, а также позволяет осознать насколько разнообразны применения данного вида навигации.

3. Книга "An evaluation of indoor location determination technologies" Kevin Curran, Eoghan Furey

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

. Книга "Основы геоинформатики" Тикунов В.С. дала представление о том, что такое ГИС, позиционные и непозиционные пространственные данные, а также в ней описаны требования к БД карт, что карта является результатом обработки и визуализации данных, организованных и структурированных в виде базы географических данных.

В процессе исследования темы не было найдено полной удовлетворяющей статьи необходимости данной платформы и системы IPS, однако количество находящихся в разработке (по данным Indoor LBS [13]) проектов у таких корпораций как Apple, Nokia, Google, Microsoft, уже реализованных проектов (см. Введение) и др., позволяет оценить масштабы интереса проявляемого к данной проблеме.

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

Рассмотрим существующие решения:

Google Maps


https://maps.google.ru/

Данный сервис:

●       позволяет определить свое местоположение;

●       осуществляет навигацию в здании (аэропорт, музей, торговый центр) данные которого предоставлены в пользование сервиса;

●       показывает расположенные по близости кафе\точки досмотра\медпункты и пр.;

●       позволяет делится адресом;

●       поддерживает различные языки интерфейса.

Пользователями являются:

●       Туристы, которым необходимо сориентироваться в аэропорту, найти кафе или терминал;

●       Покупатели в торговых центрах, которые ищут нужный магазин;

●       Туристы в музее получают информацию об экспонатах и могут ориентироваться в залах;

●       Иностранцы не знающие язык, могут с помощью этой программы найти необходимое им место.

MazeMap


#"723752.files/image003.gif">

#"723752.files/image004.gif">

Добавление комментария позволит пользователю помочь разработчикам карты актуализировать данные.


Пользователь имеет возможность при нажатии на объект получить информацию о нем, такую как: изображение объекта, его название (например Терминал D, магазин "Все для дома", аудитория A-311 и пр.), описание и отзывы.

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


Вариант отображения информации об объекте на карте, например для музеев.




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

4. Разработка схемы базы данных

Разработка схемы базы данных важная составляющая в процессе создания проекта данной платформы. Схема базы данных позволяет выполнять системе выполнять все ключевые требования, которые к ней предъявляются.

В этом разделе приведен SQL-скрипт, который создает схему БД:

Create table node (int unique not null primary key,float not null,float not null,int not null,bool not null,

);table tag (int not nullvarchar (30),varchar (4095),

);table relations (int not nullbool not null,int not null

);table node_relation (key (id_relat) references relations(guid), foreign key (id_node) references node(guid)

);table user (int not null unique,

password int not null,

);

 

Рассмотрим значение каждого атрибута: guid - ключевой атрибут имеющий уникальное значение. Каждый объект на карте обязан иметь уникальное имя, для идентификации его в базе данных. Этот атрибут является первичным ключом в таблицах node, relations, tag. Является внешним ключом.

lot - координаты долготы на карте.

lat - координаты широты на карте.

lay - слой, который показывается в настоящий момент пользователю, в данном проекте реализует этаж здания.

visibility - это атрибут видимости объекта. Необходим, чтобы обычный пользователь не видел технические данные на карте и, например, маяки. Маяк (точка, определяющая местоположение), вентиляция, служебные коридоры и пр. не должны быть видимы пользователю на карте.

name - столбец имен различных тэгов.

content - в таблице tag обозначает различную информацию об объекте, в зависимости от имени тэга (tag.name), которую видит пользователь. Например tag.type может быть как кафе, так и кабинет, терминал, и пр.

Например:

GUID

tag.name

tag.content

77

"type"

"Кафе"

77

"name"

"Карамелькин двор"

77

"work-time"

"пн-пт: 9:00-21:00"


type - в таблице relation позволяет задать различные виды отношений ГИС: линия, полилиния, полигон.

login и password в таблице user содержат информацию о логинах и паролях пользователелей взаимодействующих с разработкой объекта на карте, информация о котором содержится в базе. Атрибут login является вторичным ключом, все логины должны быть различны.

Кортежи некоторых таблиц обязательно должны иметь какие-либо значение, поэтому для каждого атрибута этих таблиц уточняется условие not null.

5. Разработка запросов к базе данных

Номер требования

Описание входных и выходных данных запроса

Запросы на языке sql и реляционной алгебры [16]

1

На входе: вычисленные minLat, minLot, maxLat, maxLot - координаты отображаемые на устройстве На выходе: отображение карты

SELECT name, content, guid, visibility, type FROM tag, relations WHERE guid IN ( SELECT id_relat FROM node_relation WHERE id_node IN ( SELECT guid FROM node WHERE (lat>minLat) AND (lat<maxLat) AND (lot>minLot) AND (lot<maxLot) AND (layer = ‘lay’))) SORT BY guid

5

На входе: полученная из предыдущего запроса данные На выходе: данные об объекте (фото, описание и пр.)

SELECT guid, visibility, name, content FROM tag WHERE guid IN ( SELECT guid FROM node WHERE (lat>minLat) AND (lat<maxLat) AND (lot>minLot) AND (lot<maxLot) AND (layer = ‘lay’)) SORT BY guid

2

На входе: добавить новый объект (для примера возьмем кафе в ТЦ) На выходе: добавленный объект появился на карте

INSERT INTO node Values ($new_guid, $new_lat, $new_lot, $new_lay, $visibility) INSERT INTO relations Values ($new_guid5, $visibility, polygone) INSERT INTO node_relation Values ($new_guid5, $new_guid1) INSERT INTO node_relation Values ($new_guid5, $new_guid2) INSERT INTO tag Values ($new_guid5, "type", "Кафе") INSERT INTO tag Values ($new_guid5, "name", "Шоколадница")

5

На входе: поиск объекта на карте по названию На выходе: на карте отображаются все объекты имеющие такое название

σname="Карамелькин двор"(NODE ⋈ TAG)


На входе: полученные координаты пользователя userLot и userLat На выходе: показывает на карте 5 ближайших к пользователю (менее 30 метров) объектов по формуле гиперсинуса[17]

SELECT name FROM tag WHERE guid IN ( SELECT guid ( acos(cos(radians(userLat)) * cos(radians(lat)) * cos(radians(lot) - radians(userLot)) + sin(radians(userLat)) * sin(radians(lat)))) AS distance FROM node HAVING distance < 0.30 ORDER BY distance LIMIT 0 , 5;)

6

На входе: подаётся логин и пароль пользователя: log, pass На выходе: если логин и пароль верны, то пользователь успешно прошел операцию входа в систему.

σ(login=log and password=pass)(user)



Заключение

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

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

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

Список использованных источников

[1] Википедия Свободная энциклопедия[Электронный ресурс] = Wikipedia, the free encyclopedia - Интернет энциклопедия - Режим доступа : http://en.wikipedia.org/wiki/Indoor_positioning_system, свободный. - Загл. с экрана. - Яз. англ.

[2] Википедия Свободная энциклопедия[Электронный ресурс] = Wikipedia, the free encyclopedia - Интернет энциклопедия - Режим доступа : http://en.wikipedia.org/wiki/Electric_beacon, свободный. - Загл. с экрана. - Яз. англ.

[3] Википедия Свободная энциклопедия[Электронный ресурс] = Wikipedia, the free encyclopedia - Интернет энциклопедия - Режим доступа : http://en.wikipedia.org/wiki/Real-time_locating_system, свободный. - Загл. с экрана. - Яз. англ.

[4] Википедия Свободная энциклопедия[Электронный ресурс] = Wikipedia, the free encyclopedia - Интернет энциклопедия - Режим доступа : http://en.wikipedia.org/wiki/Local_Positioning_Systems , свободный. - Загл. с экрана. - Яз. англ.

[5] Википедия Свободная энциклопедия[Электронный ресурс] = Wikipedia, the free encyclopedia - Интернет энциклопедия - Режим доступа : http://en.wikipedia.org/wiki/Hybrid_positioning_system , свободный. - Загл. с экрана. - Яз. англ.

[6] Википедия Свободная энциклопедия[Электронный ресурс] = Wikipedia, the free encyclopedia - Интернет энциклопедия - Режим доступа : http://ru.wikipedia.org/wiki/%D0%A6%D0%B8%D1%84%D1%80%D0%BE%D0%B2%D0%B0%D1%8F_%D0%BA%D0%B0%D1%80%D1%82%D0%B0 , свободный. - Загл. с экрана.

[7] Википедия Свободная энциклопедия[Электронный ресурс] = Wikipedia, the free encyclopedia - Интернет энциклопедия - Режим доступа : http://ru.wikipedia.org/wiki/Трилатерация , свободный. - Загл. с экрана.

[8] Strategy Analytics [Электронный ресурс] - Электрон.данные - Режим доступа : http://www.strategyanalytics.com/, свободный. - Загл. с экрана. - Яз. англ.

[9] YouTube [Электронный ресурс] - Видеохостинг - Режим доступа : https://www.youtube.com/watch?v=oLOUXNEcAJk, свободный. - Загл. с экрана.

[10] DirectionsMag.com [Электронный ресурс] - Электрон. данные - Режим доступа :

http://www.directionsmag.com/pressreleases/accurate-mobile-indoor-positioning-industry-alliance-called-in-locatio/274251, свободный. - Загл. с экрана. - Яз. англ.

[11] Google Maps [Электронный ресурс] - Электр.данные - Режим доступа : https://support.google.com/gmm/answer/1685827?hl=ru&topic=1685871&ctx=topic, свободный. - Загл. с экрана.

[12] Сonversations Nokia [Электронный ресурс] - Электр.данные - Режим доступа :

http://conversations.nokia.com/2013/06/25/find-your-way-indoors-with-here/, свободный. - Загл. с экрана. - Яз. англ.

[13] IndoorLBS [Электронный ресурс] - Электр.данные - Режим доступа : http://www.indoorlbs.com/p/market-report.html, свободный. - Загл. с экрана. - Яз. англ.

[14] Открытые системы [Электронный ресурс] - Электр.данные - Режим доступа : http://www.osp.ru/news/2013/1112/13021877/, свободный. - Загл. с экрана.

[15] Cacoo.com [Электронный ресурс] - Веб-интерфейс - Режим доступа : https://cacoo.com/, свободный. - Загл. с экрана.

[16] Гарсиа-Молина, Ульман, Уидом. "Системы баз данных. Полный курс".: Пер.с англ.,под ред.А.С.Варакина.(с.206-214, 250-260). - М.:Издательский дом "Вильямс", 2003.

[17] Википедия Свободная энциклопедия[Электронный ресурс] = Wikipedia, the free encyclopedia - Интернет энциклопедия - Режим доступа : http://en.wikipedia.org/wiki/Haversine_formula, свободный. - Загл. с экрана. - Яз. англ.

Похожие работы на - Разработка баз данных 'Навигация в здании'

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!