Научная статья на тему 'Мобільна кіберфізична система для динамічного відображення інформації про об'єкти на цифровій карті місцевості'

Мобільна кіберфізична система для динамічного відображення інформації про об'єкти на цифровій карті місцевості Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
268
21
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
доповнена реальність / картографічна система / персональний мобільний пристрій / Google Maps API / Android / augmented reality / mapping system / personal mobile device / Google Maps API / Android

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Шевчук Руслан Петрович, Мельник Андрій Миколайович

З кожним роком реальний і віртуальний світи стають все ближчі один до одного, утворюючи технічну базу кіберфізичних систем. Кіберфізична система об'єднує кібернетичний та фізичний простори, інтегруючи обчислювальні та фізичні процеси за допомогою давачів і виконавчих пристроїв. Одним із видів кіберфізичних систем, у яких компоненти системи здатні динамічно змінювати своє місцезнаходження, є мобільні кіберфізичні системи, а обчислювальною платформою для їх реалізації слугують персональні мобільні пристрої. Розв'язано науково-практичну задачу щодо розроблення математичного та програмного забезпечення для динамічного відображення інформації про об'єкти на цифровій карті місцевості; проаналізовано підходи до візуалізації об'єктів на цифровій карті місцевості та подано принципи візуалізації даних із використанням технології доповненої реальності; запропоновано метод для динамічного відображення інформації про об'єкти реального світу на цифровій карті місцевості, через призму камери персонального мобільного пристрою (ПМП), що використовує дані із картографічних сервісів та давачів ПМП, відображаючи інформацію із використанням технології доповненої реальності; розроблено архітектуру та реалізовано мобільну кіберфізичну систему (МКФС) для динамічного відображення інформації про об'єкти на цифровій карті місцевості для ПМП на базі операційної системи Android із використанням мови програмування Java, Android API та Google Maps API.

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

MOBILE CYBER-PHYSICAL SYSTEM FOR DYNAMIC REPRESENTATION OF INFORMATION ABOUT OBJECTS ON DIGITAL MAPS

Cyber-physical systems (CPS) refer to a promising class of systems featuring intimate coupling between the "cyber" intelligence and the "physical" world. Cyber-physical systems are advanced engineering systems where computing and communication are carefully designed to achieve intimate integration with the physical dynamics. One of the types of cyber-physical systems where system components are able to dynamically change your location is a mobile CPS. Computing platforms for implementing mobile CPS are personal mobile devices. Mobile CPS integrates distributed sensing with computing and ubiquitous connectivity of the Internet. Mobile CPS also coordinates computational, virtual, and physical resources and facilitates the interaction of digital world with physical world, potentially driving the pervasive effect in the citizens' everyday life anytime and anywhere. Thus, mobile CPS could provide a convenient and economical platform that facilitates sophisticated and ubiquitous intelligent applications between humans and the surrounding physical world. The paper solved a scientific and practical task to develop mathematical and software for dynamic representation of information about objects on digital maps; analysis approaches for visualization objects on a digital map and presented principles of data visualization using augmented reality technology. The authors proposed the method for dynamic representation of information about objects in the real world on digital map, through the prism of a personal mobile device (PMD) camera, which uses information from the sensors PMP and mapping services and representation of information using augmented reality technology. We also proposed the architecture and implemented a mobile cyber-physical system for dynamic representation of information about objects on the digital map areas for PMD an Android-based operating system, programming language Java, Android API and Google Maps API.

Текст научной работы на тему «Мобільна кіберфізична система для динамічного відображення інформації про об'єкти на цифровій карті місцевості»

НЛТУ

ы КРАЖИ

»mutet*

Науковий в!сн и к Н/1ТУ УкраТни Scientific Bulletin of UNFU

http://nv.nltu.edu.ua https://doi.org/10.15421/40270436 Article received 20.05.2017 р. Article accepted 24.05.2017 р. УДК 004.[451.83+85+428.4]

ISSN 1994-7836 (print) ISSN 2519-2477 (online)

1 EE3 Correspondence author R. P. Shevchuk rulezz.sh@gmail.com

Р. П. Шевчук, А. М. Мельник

Тернопыьський нащональний економ1чний ушверситет, м. Тернопыь, Украша.

МОБ1ЛЬНА К1БЕРФ1ЗИЧНА СИСТЕМА ДЛЯ ДИНАМ1ЧНОГО В1ДОБРАЖЕННЯ ШФОРМАЦП ПРО ОБ'ЕКТИ НА ЦИФРОВ1Й КАРТ1 М1СЦЕВОСТ1

З кожним роком реальний i вiртуальний свiти стають все ближчi один до одного, утворюючи техшчну базу кiберфiзич-них систем. Кiберфiзична система об'еднуе юбернетичний та фiзичний простори, iнтегруючи обчислювальш та фiзичнi про-цеси за допомогою давачiв i виконавчих пристроТв. Одним i3 вищв кiберфiзичних систем, у яких компоненти системи здатш динамiчно змiнювати свое мюцезнаходження, е мобiльнi кiберфiзичнi системи, а обчислювальною платформою для Тх реаль зацй слугують персональнi мобiльнi пристроТ. Розв'язано науково-практичну задачу щодо розроблення математичного та програмного забезпечення для динашчного ввдображення iнформацiТ про об'екти на цифровш картi мiсцевостi; проаналiзо-вано шдходи до вiзуалiзацiТ об'ектiв на цифровш карп мюцевоси та подано принципи вiзуалiзацiТ даних iз використанням технологи доповненоТ реальностi; запропоновано метод для динашчного ввдображення iнформацiТ про об'екти реального свиу на цифровш карп мюцевосп, через призму камери персонального мобiльного пристрою (ПМП), що використовуе данi iз картографiчних сервiсiв та давачiв ПМП, вiдображаючи шформащю iз використанням технологи доповненоТ реальности розроблено архiтектуру та реалiзовано мобшьну кiберфiзичну систему (МКФС) для динашчного ввдображення iнформацiТ про об'екти на цифровш карп мюцевосп для ПМП на базi операцiйноТ системи Android iз використанням мови програму-вання Java, Android API та Google Maps API.

Kni040ei слова: доповнена реальшсть; картографiчна система; персональний мобшьний пристрiй; Google Maps API; Android.

Вступ. Мобшьш кiберфiзичнi системи (англ. mobile cyber-physical system, MCPS) e одним i3 видiв юберфь зичних систем, у яких компоненти системи здатш дина-Mi4Ho змiнювати свое мкцезнаходження (White, et al., 2011). Стрiмкий розвиток ринку ПМП, що характеризуемся зростанням потужностей процесоргв, збиьшен-ням часу автономно! роботи, широкою комушкацшною периферieю, набором вбудованих давачiв i тiсною ш-тегращею з iнтернет-сервiсами дае змогу використову-вати !х у ролi обчислювальних платформ для реалiзацil МКФС. Перелiченi переваги ПМП дають змогу вико-ристовувати !х для монiторингу та контролю роботи фь зичних об'екпв.

До основних чинникiв, що вплинули на розвиток МКФС, вiдносять (Bales, et al., 2012):

• зростання кшькосл та зниження вартост ПМП;

• покращення техтчних характеристик та функцюналу ПМП, як1 шчим не поступаються персональним комп'ю-терам за ктотно менших розм1р1в та ваги;

• упровадження нових технологш безпровщного зв'язку (3G, Mobile WiMAX, EDGE, Bluetooth);

• розвиток мобшьних операцшних систем та платформ для ПМП (Android, iPhone OS, Windows Mobile, BlackBerry);

• розвиток високор1вневих мов та технологш програму-вання ПМП (Java, Qt, Windows Phone SDK, Objective-C, Android SDK);

• можливкть розповсюдження власних мобiльних додатюв через App Store постачальниюв ПМП та проведення експе-рименлв з великою юльюстю учасниюв по всьому свт;

• комплектация ПМП потужними вбудованими давачами;

• розвиток мобшьних хмарних технологш та обчислень.

Постановка завдання дослвдження. Сьогоднi ввд-

буваеться стрiмкий розвиток reocepBiciB, якi надають змогу користувачу 3opieHTyBaracb у незнайомому тсщ, вiдшyкaти потpiбний об'ект, прокласти маршрут, ввдоб-разити координати мiсцезнaходження користувача ПМП на цифровш карп мкцевосп. Особливо популяр-ними щ сервки е серед турист1в, бiльшiсть з яких подо-рожуючи по свиу використовують пеpсонaльнi мобшь-нi помiчники, як1 в pежимi реального часу надають всю необхвдну туристу шформацго.

За результатами проведеного aнaлiзy програмних пpодyктiв для динaмiчного вiдобpaження шформацп про об'екти на цифpовiй карп мкцевосп з'ясовано, що всi вони працюють iз 2D картами, як е аналогами папе-рових карт мкцевосп (Shevchuk, Kohut & Boiko, 2014). Одним iз недолiкiв такого типу карт е неможливкть ви-piшення проблеми "топогpaфiчного кретишзму". Шд " топогpaфiчним кретишзмом" pозyмiють абсолютне невмшня людини оpiентyвaтися на мiсцевостi, навиъ iз нaявнiстю карти, що часто супроводжуеться вщчуттям страху заблукати у незнайомш мiсцевостi (White, et al., 2011). Величезш мегaполiси з розгалуженими вулиця-ми, складними доpожнiми розв'язками й архиектурно однаковими будинками ускладнюють ш життя.

Тому постае задача створення МКФС для динaмiч-ного вщображення шформацп про об'екти на цифровш карп мкцевосп, в основу яко! буде закладено принци-

Цитування за ДСТУ: Шевчук Р. П., Мельник А. М. Мобтьна кiберфiзична система для динамiчного вiдображення шформацп про

об'екти на цифровш карп мюцевосп. Науковий вкник НЛТУ Укра'ши. 2017. Вип. 27(4). С. 170-176. Citation APA: Shevchuk, R. P., & Melnyk, A. M. (2017). Mobile Cyber-Physical System for Dynamic Representation of Information About Objects on Digital Maps. Scientific Bulletin of UNFU, 27(4), 170-176. https://doi.org/10.15421/40270436

пи поеднання технологш доповнено1 реальностi i3 ш-формацieю картографiчних cepBiciB та давачiв ПМП.

Аналiз лiтератури. У роботах (Melnyk, 2014; 2016) розглянуто проблеми створення та напрями розвитку кiбеpфiзичних систем вiдповiдно до досягнень та сучас-них концепцiй застосування комп'ютерних, шформа-цiйних та телекомушкацшних технологiй. У pоботi (Shevchuk, 2015) дослвджено особливостi побудови та функщоиування МКФС.

Прикладами МКФС, як1 на сьогодш активно розви-ваються, е системи оцшювання забруднення навко-лишнього середовища (Bales, et al., 2012; Froehlich, et al., 2009), системи дiагностики та монiтоpингу стану люди-ни (Saponas, et al., 2008; Gay & Leijdekkers, 2007), системи вщслщковування, класифшаци та контролю до-рожньо! ситуаци (Thompson, et al., 2009; Thiagarajan, et al., 2009, November; Mobile Millennium, n.d.), системи для ввдслщковувания та класифжаци дiй людини (Miluz-zo, Wang & Campbell, 2010; Miluzzo, et al., 2008; Choud-hury, et al., 2008), системи для прикордонного контролю (Marino, et al., 2009, June; Marino, et al., 2009) та ш.

Мета дослщження - розроблення МКФС для дина-мiчного вiдобpаження шформацп про об'екти на цифро-вiй каpтi мiсцевостi. Особливктю МКФС буде викорис-тання технологш доповнювально! pеальностi, що дасть змогу в реальному час через призму камери ПМП вь дображати шформащю про об'екти на цифpовiй карп мкцевосп.

Розроблення структури МКФС та и базових фун-кцп. Одним iз пiдходiв щодо вiзуалiзацil шформацп про об'екти е використання технологи доповнено! реальности Доповнена реальшсть (англ. Augmented reality, AR) е piзновидом вipтуальноl pеальностi (англ. virtual reality, VE) (Azuma, 2004). Технологи вipтуальноl pеальностi повнiстю занурюють людину в штучно ство-рене середовище (вipтуальний свiт), iз якого вона не здатна бачити та впливати на об'екти навколишнього реального свиу. На вiдмiну вiд вipтуальноl pеальностi, доповнена реальшсть дае змогу людиш вщчувати ре-альний свiт разом з вipтуальними об'ектами, накладени-ми на навколишне оточення (Azuma, 2004). Отже, доповнена реальшсть штегруеться i доповнюе спpавжнiй свiт замiсть того, щоб повнiстю його замiнити. Особли-вiстю технологи доповнено1 pеальностi е отримання статичних та динамiчних даних у реальному чаи за до-помогою вiзуалiзацil даних про конкретний об'ект.

1дея пiдходу, що знаходиться в основi розроблено1 МКФС, полягае в тому, що маючи ПМП та вщповвдне програмне забезпечення, користувач зможе отримувати вiзуальну iнфоpмацiю про ri чи iншi об'екти реального свгту, pозмiщенi на цифpовiй карп мкцевосп, простим наведенням камери пристрою на об'ект реального свиу (рис. 1).

Рис. 1. Приклад, що шюструе щею пропонованого пiдходу

МКФС складаеться i3 трьох модул1в: нав^ацшного, геоiнформацiйного монiторингу територп та фшьтрацп даних. Цi модулi обмiнюються мiж собою даними, а та-кож взаемодiють i3 користувацьким iнтерфейсом для вь дображення шформаци про об'екти на екраш ПМП. Складовою частиною системи можна також вважати сервки GoogleMaps, якi через навiгацiйний модуль на-дають данi для роботи системи. Структурну схему системи зображено на рис. 2.

Рис. 2. Структурна схема системи

Аналiз та оброблення шформацп щодо вибору ко-ристувачем об'екта на карп здшснюе модуль геошфор-мацiйного мошторингу, який надсилае запити до навь гацшного модуля для отримання списку доступних нав-колишнiх об'ект1в i3 сервiсiв Google. Модуль фшьтрацп даних е допомiжним засобом для модуля геошформа-цiйного монiторингу. Вiн отримуе на вхiд значения по-каз1в геомагнiтного давача ПМП, та повертае його фшьтроване значення.

Опишемо основш функци розроблено! системи. Функци', як входять до бiзнес-процесу оброблення да-них GoogleMaps:

• nepeBipKa пiд'eднання до мереж 1нтернет;

• автентифiкацiя API Key;

• завантаження GoogleMaps.

Функцп, яю входять до бiзнес-процесу отримання списку мкць на картi:

• звернення до навiгацiйного модуля;

• отримання поточних координат перебування пристрою вщ навiгацiйного модуля;

• отримання списку об'екпв реального свiту вiдносно координат розмщення пристрою.

Функцп, що входять до бiзнес-процесу формування списку об'екпв:

• звернення до навк-ацшного модуля;

• отримання поточних координат перебування пристрою вщ навiгацiйного модуля;

• отримання списку об'екпв реального св^ вiдносно координат розмщення пристрою.

Функцп, як1 входять до бiзнес-процесу орiентацil у просторi:

• визначення магттного азимуту пристрою;

• побудова векторiв вiд точки розмщення пристрою до точок розмiщення мкць;

• знаходження кута м1ж векторами напрямку пристрою та напрямюв до мкць на картi;

• вивщ результатiв на екран.

Метод динамiчного вщображення об'екпв на цифровiй карт мiсцевостi. Для спрощення обчислень та зменшення об'ему використано! пам'ятi шд час дина-мiчноl вiзуалiзацil шформацп про об'екти на цифровш карп мкцевосп, у роботi запропоновано метод для ди-намiчного вiдображения шформаци про об'екти реаль-

ного свггу на цифровш картi мшцевосп, в основi якого лежить процедура знаходження кутових вiдстаней до об'ектГв з використанням цилшдрично!' системи координат. Цей метод охоплюе таю етапи:

• знаходження об'екпв на цифровш карт1 м1сцевост1;

• визначення магн1тного азимуту;

• побудова вектор1в в1д ПМП до об'ект1в на цифровш карт1;

• обчислення кута м1ж вектором напряму ПМП та вектором об'екта на карт1;

• побудова п1ктограми об'екта на екраш ПМП 1з використанням технологш доповнено'1 реальност1 та виведення шформацй про нього на екран ПМП.

На рис. 3-6 наведено шюстрацгю еташв роботи зап-ропонованого методу.

Рис. 3. Знаходження об'екпв на цифровш карп

на Свгл^йчнд^

■ ЧАп'ярн* Нд ВаЛОЫЙ (().5»(!5, ZS.HZrill)

• I Олщып

Л '

шс

11

i

Си

тэ

в

ч.-

Q'

Е

£

I £

"BJii-ij'.KOHä »vf-c1

1 < npucrpii »рикущи

CLi.iiiiU. il.mn?]

Рис. 4. Визначення магттного азимуту

■ч С № Л^аЧц0гв

1'чрнч На ЕЗаПСПЫ

Л

Ol

-«с

к rc «

^ "BMtUflJKOB.l ъугг

:JpEITpiH Еврппувл!

В tU.Ii1Ul. J1.IU11I)

Рис. 5. Побудова вектор1в в1д ПМП до об'екпв на карп

'Нмидцпвц nil

Hi, J51IW, iJ.l?+1S7J

Рис. 6. Обчислення кута м1ж вектором напряму ПМП та вектором об'екта на карп

Побудова векторiв вiд ПМП до об'екпв на карп та обчислення кута мiж вектором напряму ПМП та вектором об'екта на карп виконуеться iз використанням таких формул:

' (AB) 4

в = arccos

A х B

(1)

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

де: в - кут вгд пристрою до нульового вектора; А - вектор вгд точки положення пристрою до точки мшця; В -вектор вщлшу;

a = ^(Х2 - xi)2 + (y2 - yi)2, (2)

де: а - кут зору пристрою; А - вектор вщ точки положення пристрою до точки об'екта; В - вектор вщлшу;

ß = a-q, (3)

де ß - кутова вгдстань до пристрою.

Орiентацiя у просторi здшснюеться на основi колекци координат, отриманих iз Iнтернет-сервiсу Google Maps. Процес завантаження колекци координат скла-даеться з таких етапiв:

• визначення мюця знаходження користувача ПМП;

• передача поточних координат на веб-сервер Google;

• отримання колекци координат навколишшх об'екпв.

Використання цилшдрично1 системи координат е ефективнiшим, тому що для збереження iнформацií про об'ект, необхгдно зберiгати т1льки значення кута, на який воно вгдхиляеться вiд нульового вектора - напряму на швтч. Така ж сама шформащя присутня i для самого пристрою, що значно спрошуе сам процес орГента-цп. Додатковою шформащею е також вгдстань до об'екта.

Особливiстю запропонованого методу е використання цилшдрично!' системи координат шд час роботи iз геомагнiтним сенсором ПМП, що дае змогу зменшити обчислювальну складнiсть базового алгоритму прог-рамно1 системи.

Особливост розроблення та експлуатацй' МКФС. На рис. 7, 8 подано дiаграми компоненпв модулiв роз-роблено'г МКФС.

MathGeoLocatioin

TypeSelectActivity

\ __

\

MainActivity

DrawView

Нав1гацшний модуль

"т—

Л/

DrawablePlacelcon

Рис. 7. Д1аграма компоненпв модуля геошформацшного мошторингу

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

типу мюця, модуль геошформацшного монiторингу по-силае запит навiгацiйному модулю на отримання списку найближчих мюць, той, своею чергою, з'еднуеться з сервками Google та надсилае ïm необхщш даш. 1 Псля

чого модуль геоiнформацiйного монiторингу вщобра-жае результати свое! роботи за допомогою графiчного iнтерфейсу.

ЕЕ

а

Нав1гацшний модуль

ein.

GooglePlaces

EIGPSTracker

52

izb

I Vi асе List

MainActivity

а

LoadPlace

H

ConnectionDetector

"^AlertDialogManager

T~~|placesMapActivity

HZZAddltemizedOverlay

SinglePlaceActivity

I

I ^ ILoadSinglePlaceDetail

1 Place

а

1 Geometry

а

а

1 Location

Czi

Рис. 8. Дiaгрaмa компонента навiгацiйного модуля

На рис. 9 подано дiаграму розмiщення, яка вщобра-жае фiзичнi взаемозв'язки мiж програмними та апарат-

ними компонентами системи.

А

CepßepGoogle

БД Google Maps £

БД Google Place (■

ПМП гид управлшня Android | ,_ л

1 ~j 1 1 Guideline -1

Магнггний компас

VT л г FI i"r fi f-i й компас API

Рис. 9. Дiaгрaмa розмiщень

Для графiчного представлення поведiнки модулiв програмно! системи побудовано ïx дiаграми дiяльностi (рис. 10. 11). Очшування

вибору категорп

/Вщмша виводу

/Категор1ю вибрано

Перев1рка з'еднання з мережою

з еднання

/Не знайдено найближчих мюць^

Отримання списку мшць

Рис. 10. Дiaгрaмa дiяльностi модуля геоiнформaцiйного монiторингу

I PlaceDetails

а

Кшець

Рис. 11. Дiaгрaмa дiяльностi нaвiгaцiйного модуля

На них, у виглядi графа, представлено дй* системи, та переходи мiж ними, якi е або результатами поперед-нix дш, або ж ïx викликають.

Процедуру оброблення даних и геомагнiтного дава-ча персонального мобiльного пристрою здшснюе модуль геоiнформацiйного монiторингу. Основною його задачею е визначення кутово'1 вiдстанi вiд точки розмь щення пристрою до об'ектiв, розмiщениx на карть Цей модуль розрахований на роботу з навиащйним модулем, з якого вш отримуе необхщну шформацго, а саме

геогpaфiчнi координати пристрою та координати виз-начних мiсць на кapтi.

Класом, без якого неможливо було б здшснювати коpектнi розрахунки положень об'ектав, е клас точки, значеннями координат якого можуть бути числа з пла-ваючою комою, тобто типу double. Оскшьки у стандар-тних пакетах мови Java такий клас був вщсутнш, його було створено у проекта

Класом, який виконуе основну фyнкцiю модуля, а саме визначення градусних ввдстаней до об'ектiв, е клас MathGeoLocation. Клас виконуе перетворення координат об'екта з декартово! системи координат у цилш-дричну, обрахунку ввдхилення у градусах, i пiзнiше розрахунки розмщення пiктогpaми об'екта на диспле! пристрою, якщо об'ект потрапляе в кут зору камери.

Методи цього класу е статичними, тобто !х виклик не потребуе створення екземпляру класу. Вихiдний код класу Point наведено нижче: package com. guideline; public class Point { public double x; public double y;

public Point(double X, double Y) {

this.x=X;

this.y=Y; }

}

Першим етапом алгоритму е перетворення координат об'екпв iз декартово! системи у цилшдричну. Для цього, шсля отримання списку об'ектав, вони переда-ються в метод transformPlacesPoints. Нижче наведено сигнатуру методу.

static public List<PlacePoint> transformPlacesPo-ints(List<Place> places, Point myPoint) Цей метод на вхщ отримуе колекщю об'ект1в та ге-огpaфiчнi координати пристрою. Використовуючи ni даш, спочатку обчислюеться кут мiж напрямом до об'екта i вiссю абсцис.

double A = Math.abs(myPoint.x — placePoint.x); double B = Math.abs(myPoint.y — placePoint.y); double degrees = Math.toDegrees(Math.atan(B/A)). Шсля цього визначаеться, в якш четверп ввдносно точки розмщення пристрою знаходиться об'ект та обчислюеться значения азимута об'екта.

if(myPoint.x > placePoint.x && myPoint.y < placePoint.y){

degrees = 270 + (90 — degrees); }

else if(myPoint.x > placePoint.x && myPoint.y > placePoint.y) {

degrees = 180 + (90 — degrees); }

else if(myPoint.x < placePoint.x && myPoint.y > placePoint.y) {

degrees = 90 + degrees; }

else if(myPoint.x < placePoint.x && myPoint.y < placePoint.y) {

degrees = 90 — degrees; }

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

Hi даш збергаються у список, i повертаються в вик-ликаючий метод.

Перед викликом методу для визначення кутово! ввд-сташ до об'екта, даш, зчиташ з геомагштного давача ПМП, передаються у клас KalmanFilter, який виконуе фшьтращю цих даних.

Для початку роботи з фшьтром його потpiбно про-iнiцiaлiзyвaти. Конструктор приймае на вхщ 4 парамет-ри, а саме: Q - значення шуму вишрювання; R - зна-чення шуму обладнання; F - вiдношення попереднього

реального значення до поточного; H - вщношення ви-мiряного значення до реального.

Шсля цього, при кожному знятп показ1в з давача, ïx необхвдно передати в метод Correct. Код цього методу наведено нижче:

public void Correct(double data) {

//time update — prediction

this.XO = this.F*this.State;

this.PO = this.F*this.Covariance*F + this.Q;

// measurement update — correction

double K = this.H*this.P0/(this.H*this.P0*this.H+this.R);

this.PrevState = this.State;

this.State = this.XO + K * (data - this.H * this.XO);

this.Covariance = (1 — K * this.H) * this.PO; }

Шсля цього, для визначення кутово! вщсташ до об'екта, з основного потоку викликаеться метод ge-tOnScreenLocation. Вш повертае значення, яке ввдповь дае розмщенню шктограми мкця на екраш пристрою. Нижче можна побачити його сигнатуру.

getOnScreenLocation(PlacePointplacePoint, int screenWidth, int viewAngle, double azimuth)

Як видно iз сигнатури методу, вш приймае 4 пара-метри, а самe:

• placePoint - координати об'екта;

• screenWidth - ширину дисплея в шкселях;

• viewAngle - кут зору камери;

• azimuth - азимут пристрою.

Тут наведено код цього методу:

public static int getOnScreenLocation(PlacePoint placePoint,

int screenWidth, int viewAngle, double azimuth)

{

double pixelslnDegree = screenWidth/viewAngle; double onScreenLocation = O;

double degrees = getDegreeDeviation(placePoint, azimuth); if(degrees < O && degrees > -(viewAngle/2)) onScreenLocation = (screenWidth / 2) + Math.abs(degrees) * pixelslnDegree;

else if(degrees < viewAngle / 2)

onScreenLocation = (screenWidth /2) — degrees * pixelsln-

Degree;

return onScreenLocation!= O.O? (int) onScreenLocation: -1;

}

Метод, який розраховуе градусш ввдсташ, е метод getDegreeDevitation. Нижче представлено сигнатуру методу:

static private double getDegreeDeviation(PlacePoint place-Point, double azimuth)

Як видно iз сигнатури, метод приймае два вхвдш па-раметри: placePoint - координата об'екта, azimuth - азимут пристрою. Метод повертае значення кута типу double - число з плаваючою комою.

Для ввдображення шктограм на диспле! створено два класи: DrawView та DrawablePlacelcon. Клас Dra-wablePlacelcon описуе собою комплексну графiчну компоненту для ввдображення шформацн про мкце. Draw-View виконуе малювання шктограм мкць на диспле!. Вш збертае колекщю об'ектав типу DrawablePlacelcon i за допомогою методу onDraw виконуе рисування шктограм.

Якщо об'ект потрапляе в поле зору камери, його шк-тограма рисуеться на диспле! пристрою у ввдповщнш позици. Екранну форму з нанесеними шктограмами зображено на рис. 12.

Для забезпечення функцюнування модуля потрiбно спочатку, отримавши список географiчниx об'екпв, дiз-

штися чи вxодить вiн в поле зоpy кaмеpи i вiдповiдно до идо дaниx ствоpити новий список об^кпв пiктогpaм.

il,хг

Рис. 12. Екранна форма з шктограмами об'екпв

Систему розроблено у програмному середовищi Eclipse ADT на мовi програмування Java з використанням Android SDK.

Для коректно! роботи системи не потрiбно встанов-лювати додатковi програми чи бiблiотеки. Для стабтль-ного функщонування МКФС, потрiбне постiйне тд'ед-нання до мережi 1нтернет.

У розробленш системi реалiзовано такi функци:

• B^ip категорй' об'екпв;

• виведення на екран знайдених об'екпв;

• виведення списку знайдених об'екпв;

• виведення детально!' шформацй про об'ект.

Запустивши застосунок, користувач потрапляе в головне меню, на якому пропонують вибрати категорто об'ектiв, яю вiн хотiв би побачити на екраш свого ПМП (рис. 13).

Рис. 13. Головне меню системи

Шсля вибору користувачем певно1 категорй, трима-ючи ПМП перед собою в горизонтальному положенш, через призму камери буде ввдображатися мкцевкть Гз навколишшми об'ектами ввдповщно до вибраноí категорй. Список знайдених об'ектгв завантажуеться Гз бази даних Google Maps шсля визначення поточного мкця користувача.

Тримаючи ПМП перед собою, але перевернувши його з горизонтального у вертикальне положення, на екран з'явиться список усГх знайдених об'екпв вибра-но! користувачем категорй. Зробивши клш по одному Гз знайдених об'екпв у вертикальному положенш ПМП, ввдкриеться його детальний опис. Екранну форму детального опису об'екта можна побачити на рис. 14.

У робой проведено тестування продуктивной роз-роблено1 МКФС.

Висновки. У робой розв'язано науково-практичну задачу щодо розроблення математичного та програмно-го забезпечення для динамГчного вадображенн шформацй про об'екти на цифровш карп мкцевосп. При цьому отримано так результати:

1. Проаналiзовано пiдходи до вiзуалiзацií об'екпв на циф-

ровiй картi мкцевостт Подано принципи вiзуалiзащl

даних i3 використанням технологil доповнено1 реаль-

HOCTi.

2. Запропоновано метод для динамiчного вiдображення iнформацií про об'екти реального свггу на цифровш карп мгсцевостг, через призму камери ПМП, який, на вгдмгну вгд вгдомих, використовуе цилгндричну систему координат пгд час роботи гз геомагштним сенсором ПМП, що дало змогу зменшити обчислювальну склад-нгсть.

3. Розроблено архгтектуру мобшьно'1 кГберфгзично'1 системи для динамгчного вгдображення шформацй про об'екти на цифровш карп мгсцевостг та спроектовано модулг системи.

4. На етапг програмно'1 реалгзацп, завдяки мовг програмування Java у середовищг програмування Eclipse ADT гз використанням Android API та Google Maps API, прог-рамно реалгзовано МКФС з динамгчним вгдображен-ням об'екпв на цифровш карп мгсцевостг для ОС Android.

Name;

fi О ЛО ДА Р. РЕСТОРАН Address:

Eere^han&'ka St, 57, TemoplÇTeroopll's'ka oblast, Ukraine

Phone; Q352 53B4S5

Latitude; 49.54B682, Longitude: 25,551187

Рис. 14. Детальна шформащя про знайдений об'ект

Перелiк використаних джерел

Azuma, R. A. (2004). Survey of Augmented Reality. Presence: Tele-operators and Virtual Environments, 3(5), 355-385.

Bales, E., Nikzad, N., Quick, N., Ziftci, C., Patrick, K., & Griswold, W. (2012). Citisense: Mobile Air Quality Sensing for Individuals and Communities. In Pervasive Health, 260 p.

Choudhury, T. et al. (2008). The Mobile Sensing Platform: An Embedded System for Activity Recognition. IEEE Pervasive Comp., 7(2), 32-41.

Froehlich, J., Dillahunt, T., Klasnja, P, Manko, J., Consolvo, S., Harrison, B., & Landay, J. (2009). UbiGreen: Investigating a Mobile Tool for Tracking and Supporting Green Transportation Habits. In Proceedings of the 27th international conference on Human factors in computing systems (pp. 1043-1052). ACM SenSys, Berkeley, CA.

Gay, V. C., & Leijdekkers, P. A. (2007). Health Monitoring System Using Smart Phones and Wearable Sensors. International Journal of Assistive Robotics andMechatronic, 8(2), 29-36.

Marino, A., Caccavale, F., Parker, L., & Antonelli, G. (2009, June). Fuzzy Behavioral Control for Multi-Robot Border Patrol. In Proceedings of the 17th Mediterranean Conference on Control and Automation, Thessaloniki, Greece, (pp. 25-29). Rale igh, NC, USA, Nov.

Marino, A., Parker, L., Antonelli, G., Caccavale, F., & Chiaverini, S. (2009). A Modular and Fault-Tolerant Approach to Multi-Robot Perimeter Patrol. In IEEE International Conference on Robotics and Biomimetics (ROBIO), (pp. 135-138). Guilin, China, December.

Melnyk, A. (2016). Cyber-Physical Systems Multilayer Platform and Research Framework. Advances in Cyber-Physical Systems, 1(1-6), 1-9.

Melnyk, A. O. (2014). Kiberfizychni systemy: problemy stvorennia ta napriamy rozvytku. Visnyk Natsionalnoho universytetu "Lvivska politekhnika". Series: Kompiuterni systemy ta merezhi, 806, 154161. [in Ukrainian].

Miluzzo, E., Wang, T., & Campbell, A. T. (2010). EyePhone: Activating Mobile Phones With Your Eyes. To appear in Proc. of The Second ACM SIGCOMM Workshop on Networking, Systems, and Applications on Mobile Handhelds (MobiHeld'10) (pp. 230-238). New Delhi, India, August 30

Miluzzo, E., Lane, N. D., Fodor, K., Peterson, R. A., Lu, H., Musolesi, tsiini tekhnolohii: mater. IV Vseukrainskoi shkoly-seminaru molo-

M., & Shane, B. (2008). Eisenman, Xiao Zheng, Andrew dykh vchenykh i studentiv (pp. 167-169). Ternopil: FO-P V. B.

T. Campbell, Sensing Meets Mobile Social Networks: The Design, Shpak. [in Ukrainian].

Implementation and Evaluation of the CenceMe Application. In Thiagarajan, A., Ravindranath, L., LaCurts, K., Toledo, S., Eriksson, Proceedings of 6th ACM Conference on Embedded Networked Sen- J., Madden, S., & Balakrishnan, H. (2009, November). VTrack: Ac-sor Systems (SenSys '08) (pp. 5-7). Rale igh, NC, USA, Nov. curate, Energy-Aware Road Traffic Delay Estimation Using Mobile Mobile Millennium. (n.d.). UC Berkeley/Nokia/NAVTEQ. Retrieved Phones. In Proceedings of the 14th international conference on Hufrom: http://traffic.berkeley.edu/ man factors in computing systems (pp. 942-950). ACM SenSys, Saponas, T., Lester, J., Froehlich, J., Fogarty, J., & Landay, J. (2008). Berkeley, CA. iLearn on the iPhone: Real-Time Human Activity Classification on Thompson, C., White, J., Dougherty, B., & Schmidt, D. (2009). Opti-Commodity Mobile Phones. University of Washington CSE Tech mizing Mobile Application Performance with Model-Driven Engi-Report UW-CSE-08-04-02, 368 p. neering. In Proceedings of the 7th IFIP Workshop on Software Shevchuk, R. P. (2015). Pryntsypy pobudovy ta funktsionuvannia mo- Technologies for Future Embedded and Ubiquitous Systems (pp. bilnykh kiberfizychnykh system. Kiberfizychni systemy: dosiah- 104-109). ACM SenSys, Berkeley, CA.

nennia ta vyklyky: mater. pershoho nauk. seminaru (pp. 90-95). White, Ju., Clarke, S., Dougherty, B., Thompson, C., & Schmidt, D.

Lviv: NVF "Ukrainski tekhnolohii". [in Ukrainian]. (2011). R&D Challenges and Solutions for Mobile Cyber-Physical

Shevchuk, R. P., Kohut, A. V., & Boiko, Ya. V. (2014). Personalnyi Applications and Supporting Internet Services. Springer Journal of

mobilnyi pomichnyk turysta z dynamichnym vidobrazhenniam obi- Internet Services and Applications, 2(21), 134-139. ektiv na tsyfrovii karti mistsevosti. Suchasni kompiuterni informa-

Р. П. Шевчук, А. Н. Мельник

Тернопольский национальный экономический университет, г. Тернополь, Украина

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

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

Решена научно-практическая задача по разработке математического и программного обеспечения для динамического отображении информации об объектах на цифровой карте местности; проведен анализ подходов к визуализации объектов на цифровой карте местности и представлены принципы визуализации данных с использованием технологии дополненной реальности; предложен метод для динамического отображения информации об объектах реального мира на цифровой карте местности, через призму камеры персонального мобильного устройства (ПМУ), использующий данные с картографических сервисов и датчиков ПМУ, отображая информацию с использованием технологии дополненной реальности; разработана архитектура и реализована мобильная киберфизическая система (МКФС) для динамического отображения информации об объектах на цифровой карте местности для ПМУ на базе операционной системы Android с использованием языка программирования Java, Android API и Google Maps API.

Ключевые слова: дополненная реальность; картографическая система; персональное мобильное устройство; Google Maps API, Android.

R. P. Shevchuk, A. M. Melnyk

Ternopil National Economic University, Ternopil, Ukraine

MOBILE CYBER-PHYSICAL SYSTEM FOR DYNAMIC REPRESENTATION OF INFORMATION ABOUT

OBJECTS ON DIGITAL MAPS

Cyber-physical systems (CPS) refer to a promising class of systems featuring intimate coupling between the "cyber" intelligence and the "physical" world. Cyber-physical systems are advanced engineering systems where computing and communication are carefully designed to achieve intimate integration with the physical dynamics. One of the types of cyber-physical systems where system components are able to dynamically change your location is a mobile CPS. Computing platforms for implementing mobile CPS are personal mobile devices. Mobile CPS integrates distributed sensing with computing and ubiquitous connectivity of the Internet. Mobile CPS also coordinates computational, virtual, and physical resources and facilitates the interaction of digital world with physical world, potentially driving the pervasive effect in the citizens' everyday life anytime and anywhere. Thus, mobile CPS could provide a convenient and economical platform that facilitates sophisticated and ubiquitous intelligent applications between humans and the surrounding physical world. The paper solved a scientific and practical task to develop mathematical and software for dynamic representation of information about objects on digital maps; analysis approaches for visualization objects on a digital map and presented principles of data visualization using augmented reality technology. The authors proposed the method for dynamic representation of information about objects in the real world on digital map, through the prism of a personal mobile device (PMD) camera, which uses information from the sensors PMP and mapping services and representation of information using augmented reality technology. We also proposed the architecture and implemented a mobile cyber-physical system for dynamic representation of information about objects on the digital map areas for PMD an Android-based operating system, programming language Java, Android API and Google Maps API.

Keywords: augmented reality; mapping system; personal mobile device; Google Maps API; Android. 1нформащя про aBTopiB:

Шевчук Руслан Петрович, канд. техн. наук, доцент, Терноптьський нацюнальний еконо1^чний ушверситет, м. Тернотль, Укра-1на. Email: rulezz.sh@gmail.com

Мельник Андрш Миколайович, канд. техн. наук, доцент Терноптьський нацюнальний економiчний ушверситет, м. Тернотль, Украша. Email: melnyk.andriy@gmail.com

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