Архитектура универсальной интерактивной системы на базе современных устройств взаимодействия с пользователем
Рассмотрение архитектуры универсальной интерактивной системы с точки зрения технического и программного аспектов. Выбор современных технических устройств, необходимых для взаимодействия с пользователем. Принцип работы универсальной интерактивной системы.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 25.10.2016 |
Размер файла | 1,3 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http: //www. allbest. ru/
Пермский национальный исследовательский политехнический университет
Архитектура универсальной интерактивной системы на базе современных устройств взаимодействия с пользователем
Баранов Антон Александрович
Аннотация
В статье, на основе предложенных критериев, проведен выбор современных устройств взаимодействия с пользователем. На базе этих устройств, разработана архитектура универсальной интерактивной системы. Архитектура рассмотрена с точки зрения технического и программного аспектов. В заключении сделаны выводы относительно областей применения и перспективах развития данной системы.
Ключевые слова: архитектура универсальной интерактивной системы, современные устройства взаимодействия с пользователем
Введение
архитектура интерактивный программный универсальный
Современные средства взаимодействия пользователя и компьютерной техники давно вышли за пределы работы со стандартными устройствами ввода/вывода, такими как мышь, клавиатура и монитор. Все большую популярность набирают устройства (сенсоры отслеживания движений, очки и шлемы виртуальной реальности), способные передать не только нужные команды, но и сделать это наиболее интуитивно понятно для пользователя.
Одним из направлений дальнейшего развития работы с данными устройствами является создание систем с использованием нескольких из них для комбинирования функций и получения дополнительных возможностей. На данный момент уже существует множество примеров таких систем [1-3], но при их разработке возникает проблема соответствия того или иного устройства требованиям системы, способно ли устройство обеспечить необходимую точность, скорость, обработку и т.д.
Для решения этих задач разрабатывается универсальная интерактивная система, которая будет поддерживать работу с несколькими современными устройствами взаимодействия, а также реализовывать модули симуляции данных с тех устройств, которые у пользователя отсутствуют, визуализируя результат работы каждого из них и всех вместе в удобном виде. Таким образом, система позволит определить пользователю устройства, которые удовлетворяют требованиям разрабатываемой им системой.
Универсальная интерактивная система не может поддерживать все существующие устройства, поэтому необходимо определить критерии и в соответствии с ними выбрать ряд устройств. Цель статьи - определить критерии выбора устройств, проанализировать и выбрать устройства, предложить архитектуру системы.
1. Обоснование выбора устройств
Все существующие современные устройства взаимодействия можно разделить на следующие группы: бесконтактные контроллеры взаимодействия с компьютером, перчатки виртуальной реальности, очки и шлемы виртуальной реальности, различные контроллеры взаимодействия с компьютером.
Для выбора поддерживаемых устройств каждой группы были определены следующие четыре критерия:
1) Активное развитие устройства разработчиками. Поддержка системой неразвивающихся устройств не способствует ее более широкому применению и затраты на реализацию и поддержку таких устройств несопоставимы с отдачей по их использованию пользователями.
2) Поддержка операционных систем Windows 7,8 и Mac OS. Данные операционные системы являются самыми распространенными на сегодняшний день среди пользователей ПК и ноутбуков [4]
3) Открытость устройства для разработчиков, наличие SDK и полноценной документации. Данный критерий связан с первым и является его следствием.
4) Устройство не является самодостаточным или автономным, т.е. для его работы необходим ПК или его можно использовать совместно с другими устройствами. Применение других устройств - это нестандартное использование их функционала, что ограничивает и усложняет реализацию системы.
В таблице 1 по группам перечислены устройства [5] и их соответствие критериям. Некоторые устройства на данный момент находятся в процессе доработки и, например, не ясно, будут ли они поддерживать все выбранные операционные системы или предоставлять открытый пакет SDK для разработчиков (соответствие критериям таких устройств обозначено знаком вопроса). Для получения SDK некоторых устройств требуется заполнение специальной формы, обязательная покупка устройства или какая-либо специальная регистрация, такие устройства имеют дополнительное обозначение (р).
Таблица 1 Соответствие устройств критериям
№ |
Устройство |
Критерии |
||||
1 |
2 |
3 |
4 |
|||
Бесконтактные контроллеры взаимодействия с компьютером |
||||||
1 |
Kinect |
+ |
+ |
+ |
+ |
|
2 |
The Leap |
+ |
+ |
+ |
+ |
|
3 |
The Xtion |
- |
- |
+ (p) |
+ |
|
Различные контроллеры взаимодействия с компьютером |
||||||
4 |
Razer Hydra |
+ |
+ |
+ |
+ |
|
5 |
Virtuix Omni |
+ |
? |
+ (p) |
+ |
|
6 |
PS Move |
- |
- |
+ |
+ |
|
7 |
Wii Remote |
- |
- |
+ |
+ |
|
8 |
IMotion |
+ |
+ |
+ (p) |
+ |
|
9 |
The 3DRudder |
+ |
+ |
? |
+ |
|
Перчатки виртуальной реальности |
||||||
10 |
Peregrine |
+ |
+ |
+ |
+ |
|
11 |
5DT Data glove |
+ |
+ |
+ (p) |
+ |
|
12 |
DG5 glove |
- |
+ |
+ (p) |
+ |
|
13 |
CyberGlove |
- |
- |
+ (p) |
+ |
|
Очки и шлемы виртуальной реальности |
||||||
14 |
Control VR |
+ |
? |
? |
+ |
|
15 |
Oculus Rift |
+ |
+ |
+ |
+ |
|
16 |
Google glass |
+ |
- |
+ (р) |
- |
|
17 |
Recon Jet |
+ |
+ |
+ |
- |
|
18 |
VrAse |
+ |
+ |
+ |
- |
|
19 |
HoloLens |
+ |
- |
? |
- |
Таким образом для разработки универсальной интерактивной системы были выбраны следующие устройства: Kinect, The Leap, Razer Hydra, Peregrine, Oculus Rift. Также разрабатываемая система поддерживает работу с джойстиком и монитором, которые по умолчанию удовлетворяют перечисленным критериям.
Архитектура любой информационной системы представляет собой фундаментальную организацию системы, заключенную в своих компонентах, в их взаимоотношениях, в окружении, а также принципы, определяющие проектирование, создание и развитие системы. Архитектура разрабатываемой интерактивной системы будет проанализирована с точки зрения технического (аппаратного) и программного аспектов.
2. Технический аспект архитектуры
Технический (аппаратный) аспект - является анализом структуры системы, состава ее технических (аппаратных) средств и их взаимодействия между собой. Общая схема взаимодействия устройств в рамках системы представлена на рисунке 1 (без сохранения пропорций устройств относительно друг друга). Кроме того, на схеме показано место пользователя в системе и с какими устройствами он взаимодействует.
Рисунок 1 Визуальная схема взаимодействия устройств и пользователя (технический аспект архитектуры системы)
Для взаимодействия с компьютером все устройства используют стандартные интерфейсы передачи данных (USB) и видеоизображения (DVI/HDMI), реализуя между устройствами несколько потоков данных, которые цифрами обозначены на рисунке:
1) В зависимости от используемого бесконтактного контроллера, возможно получение следующих видов данных:
1. Данные с цветной и инфракрасной камеры, сенсора глубины, а также аудиопоток с массива из четырех микрофонов Kinect [6]:
KinectSensor _sensor;
MultiSourceFrameReader _reader;
_reader = _sensor.OpenMultiSourceFrameReader(FrameSourceTypes.Color | FrameSourceTypes.Depth | FrameSourceTypes.Infrared);
_reader.MultiSourceFrameArrived += Reader_MultiSourceFrameArrived; //данное событие срабатывает, когда доступен определенный тип данных
1. Данные камеры The Leap в виде кадров, с которыми далее пользователь начинает работать [7]:
_controller = Leap.Controller();
_frame = _controller.frame(); //последний кадр
//далее кадры могут быть по-разному обработаны, например
hands = _frame.hands;
fingers = _frame.fingers;
2) Данные от джойстиков и различных контроллеров взаимодействия
1. Данные о нажатии кнопок и использование стиков управления, а также передача сигнала для джойстика о включении вибрации.
2. Данные с контроллера Razer Hydra: правый или левый контроллер, нажатие кнопок и стиков, позиция и угол каждого контроллера.
3. Данные с перчаток Peregrine - при помощи специального программного обеспечения, все действия, выполненные с помощью перчаток, ассоциируются нажатию определенных клавиш на клавиатуре/мыши или их сочетанию.
3) Данные от устройств визуализации
1. Данные о положении головы, получаемые от Oculus Rift.
4) Взаимодействие пользователя с бесконтактными контроллерами:
1. Kinect - отслеживание движений всех частей тела;
2. The Leap - отслеживание движения рук и пальцев.
5) Взаимодействие пользователя с джойстиками и различными контроллерами взаимодействия.
6) Взаимодействие пользователя с устройствами отображения информации.
Программный аспект архитектуры
Программный аспект - является анализом системы с точки зрения составных программных модулей и подсистем, а также их взаимодействия между собой на программном уровне. Общая схема взаимодействия программных модулей между собой и с устройствами в рамках системы представлена на рисунке 2.
Рисунок 2 Визуальная схема взаимодействия программных модулей (программный аспект архитектуры системы)
Таким образом, с точки зрения программной реализации можно выделить следующие модули, разделенные на четыре группы:
1) Модули получения, обработки и стандартизации данных:
1. Модуль получения, обработки и стандартизации данных Kinect - решает задачу получения и обработки данных устройства с использованием необходимых API. Данный модуль включает в себя несколько стадий: непосредственно получение данных, в том формате, который позволяют сделать API; предварительная обработка данных, исключение ошибочных значений; стандартизация данных, приведение их к формату, заданного в системе.
2. Модуль получения, обработки и стандартизации данных The Leap - аналогично модулю Kinect.
3. Модуль получения, обработки и стандартизации данных джойстика - аналогично модулю Kinect, но также возможно обратное преобразование, данных из системы в данные, которые способно использовать устройство.
4. Модуль получения, обработки и стандартизации данных Razer Hydra - аналогично модулю Kinect.
5. Модуль получения, обработки и стандартизации данных Peregrine - аналогично модулю Kinect.
6. Модуль получения, обработки и стандартизации данных Oculus Rift - аналогично модулю Kinect.
2) Модули симуляции данных:
1. Модуль симуляции данных Kinect - решает задачу генерирования данных, аналогичных поведению пользователя. Модуль предоставляет данные сразу в стандартизованном формате, используемой системой.
2. Модуль симуляции данных The Leap - аналогично модулю Kinect.
3. Модуль симуляции данных джойстика - аналогично модулю Kinect.
4. Модуль симуляции данных Razer Hydra - аналогично модулю Kinect.
5. Модуль симуляции данных Peregrine - аналогично модулю Kinect.
6. Модуль симуляции данных Oculus Rift - аналогично модулю Kinect.
3) Модуль сопоставления и совместной обработки данных - решает задачу сопоставления данных, полученных от модулей получения, обработки и стандартизации входных данных, а также от модулей симуляции данных. На выходе данного модуля мы получаем массив объектов информации (в данном контексте «объект» в терминах объектно-ориентированного программирования), который содержит в себе информацию со всех устройств в один момент времени.
4) Модуль визуализации данных - решает задачу визуализации данных на дисплей монитора, а также на дисплей шлема виртуальной реальности.
Заключение
Архитектура универсальной интерактивной системы на базе современных устройств взаимодействия с пользователем, рассмотренная в статье, представляет собой общее описание взаимодействия технических и программных средств системы. На основании рассмотренных аспектов архитектуры можно сделать вывод о важности рассмотрения следующих вопросов при дальнейшей разработке системы. Во-первых, предусмотреть возможность расширения системы для каких-либо специфических устройств. Во-вторых, способ взаимодействия устройств, т.е. реализация программного модуля сопоставления и совместной обработки данных с устройств. В-третьих, создание библиотеки или плагина на базе данной системы для подключения и использования ее возможностей при работе в различных средах разработки.
Области применения универсальной интерактивной системы и библиотеки на ее основе являются очень широкими: тренажерные комплексы и отдельные системы, обучающих интерактивные системы, мультимедийные приложения, системы трехмерного проектирования и моделирования и т.д. Возможности использования соответствуют тем задачам, которые разработчики решают в ходе разработки систем с использованием современных устройств взаимодействия с пользователем.
Библиографический список
1. Nicole Lee, NASA JPL controls rover with Leap Motion, shows faith in consumer hardware // Международный информационный ресурс. URL:http://www.engadget.com/2013/03/30/nasa-athlete-rover-leap-motion/ (дата обращения 20.01.2015)
2. Katie Drummond, Virtual Rx: how Oculus Rift could revolutionize mental health // Международный информационный ресурс. URL:http://www.theverge.com/2013/4/22/4251926/oculus-rift-virtual-reality-therapy-mental-health (дата обращения 25.01.2015)
3. Mengyuan Li, IEEE Student Member, Paola Savvidou, Bradley Willis and Marjorie Skubic, IEEE Senior Member, Using the Kinect to Detect Potentially Harmful Hand Postures in Pianists // Conf Proc IEEE Eng Med Biol Soc. - 2014
4. StatCounter Global Stats // Международный ресурс статистики. URL: http://gs.statcounter.com/#desktop+tablet-os-ww-monthly-201401-201501 (дата обращения 10.02.2015)
5. Баранов А.А. Современные методы и устройства взаимодействия пользователя с информационными системами // APRIORI. Серия: Естественные и технические науки. - 2014. - №6.
6. Vangos Pterneas, Kinect for Windows version 2: Color, depth and infrared streams // Международный ресурс программистов. URL:http://www.codeproject.com/Articles/730842/Kinect-for-Windows-version-Color-depth-and-infra (дата обращения 05.02.2015)
7. Официальная документация устройства // Официальный сайт Leap Motion. URL:https://developer.leapmotion.com/documentation/python/devguide/Leap_Frames.html (дата обращения 07.02.2015)
Размещено на Аllbest.ru
...Подобные документы
Цели универсальной системы хранения данных о производственном изделии. Описание предметной области программы и технические требования к ней. Стадии и этапы разработки, методика испытаний. Работа с главным меню и справочниками, руководство оператора.
дипломная работа [4,6 M], добавлен 27.08.2012Разработка сайта интерактивной карты городского пассажирского транспорта. Описание системы управления контентом Joomla! Выбор технических параметров хостинга. Разработка структуры сайта, его основные разделы. Выгрузка сайта на хостинг в интернете.
дипломная работа [6,3 M], добавлен 13.12.2014Разработка проекта приложения, содержащего локальную базу данных для хранения и обработки ведомости работы расчетно-кассового узла универсама. Процесс разработки интерфейса и проекта интерактивной системы. Запуск и отладка, инструкция по эксплуатации.
курсовая работа [34,2 K], добавлен 29.03.2011Интерактивная доска SMART Board - сенсорный интерактивный экран, который подключается к компьютеру. Назначение и общая характеристика интерактивной доски, принцип ее действия. Основные технические характеристики, особенности подключения, сфера применения.
курсовая работа [7,4 M], добавлен 12.12.2010Особенности разработки модуля взаимодействия и приложений для мобильных устройств на базе Windows Mobile. Основные компоненты системы. Выбор протокола XMPP. Создание базы данных, тестирование и отладка системы. Программа, моделирующая аварийные ситуации.
курсовая работа [1,2 M], добавлен 05.11.2012Сравнительный анализ программ-аналогов. Финансовые инструменты: краткий анализ с позиции востребованности рядовым пользователем. Примеры модельных ситуаций. Разработка интерактивной обучающей информационной системы "Личные финансы" с обратной связью.
курсовая работа [2,4 M], добавлен 27.06.2013Техническое задание на разработку автоматизированной системы и складского учета управления универсальной торговой базы. Проектирование информационной системы и выбор среды для создания программного продукта. Создание интерфейса и руководство пользователя.
дипломная работа [2,1 M], добавлен 11.07.2015Создание электронной интерактивной карты общественного транспорта г. Ижевска, позволяющей выполнять над ней различные манипуляции. Разработка основы для привязки всех остановок и маршрутов. Реализация программного и пользовательского интерфейса карты.
контрольная работа [1,3 M], добавлен 13.12.2014Исследование основных принципов создания интерактивных книг. Выбор сказки и средств реализации. Подготовка графического материала. Написание сценария, создание прототипа. Разработка интерактивной книги по мотивам сказки Х.К. Андерсена "Гадкий утенок".
курсовая работа [4,4 M], добавлен 30.11.2014Реализация системы визуального программирования. Выбор технических средств для нее. Варианты использования языка JavaScript. Создание приложения программы-редактора блок-схем и сайта удалённого обучения на основе интерактивной системы обучения Moodle.
дипломная работа [2,2 M], добавлен 07.07.2012Формирование единой информационной системы здравоохранения Оренбургской области. Логическая модель инфраструктуры электронного взаимодействия МЗ региона с участниками медицинского страхования. Проектирование базы данных в среде интерактивной анимации.
отчет по практике [1,7 M], добавлен 21.07.2012Типы запоминающих устройств. Характеристика жестких дисков. Основные разновидности флеш-накопителей. Краткая информация о IT в медицине, их возможности и перспективы. Персональные компьютеры в медицинской практике. Создание интерактивной презентации.
курсовая работа [986,2 K], добавлен 17.12.2014Использование современных информационных технологий в учебном процессе: интерактивной доски, интерактивного голосования, онлайн конференции. Применение компьютерных систем и промышленных компьютеров для контроля технического оборудования разной сложности.
презентация [3,5 M], добавлен 25.09.2012Изучение особенностей работы универсальной системы RTWin, которая представляет собой мощный и гибкий инструмент для проектирования систем контроля и управления технологическими процессами. Характеристика Delphi - системы быстрой разработки приложений.
реферат [452,8 K], добавлен 11.06.2010Универсальная последовательная шина USB - универсальный порт для подключения устройств к персональному компьютеру и организации обмена между ними. Особенности спецификаций USB от версии 1.0 до версии 3.0. Архитектура, правила подключения, совместимость.
курсовая работа [2,6 M], добавлен 23.11.2013Понятие информационной системы (ИС), ее свойства и состав. Классификация ИС по назначению, по структуре аппаратных средств, по степени автоматизации, по режиму работы, по характеру взаимодействия с пользователем. Основные типы обеспечивающих подсистем.
презентация [853,8 K], добавлен 21.12.2016Разработка программного инструментария для разработки мультимедийных интерактивных обучающих систем, предназначенных для обучения правилам поведения в чрезвычайных ситуациях; интерактивной мультимедийной обучающей системы и редактора обучающих сценариев.
дипломная работа [3,0 M], добавлен 06.07.2012Управление запасами: содержание, ключевые параметры. Моделирование системы управления запасами. Разработка проектной документации на создание информационной системы управления запасами склада, алгоритмическое обеспечение, детальное проектирование.
дипломная работа [1,1 M], добавлен 14.11.2017Общий вид и назначение интерактивной системы аналитических вычислений Maple, выполняемые ею операции и правила их оформления. Простейшие объекты, с которыми работает программа: числа, константы и строки, сферы и особенности их практического применения.
лабораторная работа [35,2 K], добавлен 15.07.2009Предназначение автоматизации процессов, возникающих при работе ООО"Принт-сервис": ввод, просмотр и редактирование данных. Интерфейсы и распределение функций между человеком и системой. Анализ требований к программным и информационным компонентам системы.
курсовая работа [437,5 K], добавлен 16.03.2012