УДК 004.946:004.4'2 аог 10.15827/0236-235Х.142.286-292 2023. Т. 36. № 2. С. 286-292
Подсистема воспроизведения имм.ерсивнъж виртуальных тренажеров с биологической обратной связью
В.О. Стрекалев В.В. Грибова
Ссылка для цитирования
Стрекалев В.О., Грибова В.В. Подсистема воспроизведения иммерсивных виртуальных тренажеров с биологической обратной связью // Программные продукты и системы. 2023. Т. 36. № 2. С. 286-292. (1о1: 10.15827/0236-235Х.142.286-292 Информация о статье
Поступила в редакцию: 25.11.2022 После доработки: 15.02.2023 Принята к публикации: 20.02.2023
Аннотация. В статье показаны проектирование и разработка подсистемы воспроизведения виртуальных тренажеров с биологической обратной связью в рамках построения инструментального комплекса для создания, воспроизведения и сопровождения иммерсивных виртуальных тренажеров с биологической обратной связью. Данная подсистема позволяет осуществлять запуск и функционирование разработанных тренажеров с возможностью погружения в виртуальную реальность. Кроме того, в системе предусмотрено взаимодействие с оборудованием биологической обратной связи, в рамках которого оператору доступны необходимые для работы инструменты запуска, управления и внесения изменений. Предлагаемая подсистема является частью большого программно -аппаратного комплекса. В рамках проектирования и разработки рассмотрено взаимодействие между тренажером, оборудованием и подсистемой воспроизведения с указанием используемых технических средств. Показан набор средств реализации с учетом прикладных систем и подсистем, которые в значительной степени могут определять рабочую нагрузку всей системы в целом и обеспечивать существенно новый уровень воспроизведения виртуальных тренажеров. Такой уровень потенциально способствует повышению комфорта и эффективности как для оператора, так и для пользователя. Разработанный программный комплекс можно использовать на всем промежутке функционирования тренажера в рамках его жизненного цикла. С использованием данного решения реализован виртуальный тренажер для выполнения работ на высоте, с помощью которого можно провести тестирование на акрофобию и профилактику тревожных расстройств с возможностью изменения параметров виртуальной среды в зависимости от состояния пользователя.
Ключевые слова: виртуальная реальность, VR, виртуальные тренажеры, биологическая обратная связь, инструментальный комплекс, онтологии
В настоящее время виртуальные тренажеры (ВТ) позволяют воссоздавать сложные процессы и демонстрировать их с возможностью полного погружения и взаимодействия с объектами виртуальной среды [1-3]. Важным фактором востребованности таких систем является способ их создания и воспроизведения [4]. Процесс создания ВТ связан с построением базы знаний, в основе которой лежит семантическая сеть, позволяющая обеспечивать необходимую скорость и качество информационного моделирования технологического процесса. Возможность работы в реальном времени увеличивает эффективность ВТ, в случае использования дополнительного оборудования необходимо обрабатывать большие потоки данных, принимать решения и производить необходимые действия [5]. Пользователь может получать обратную связь в зависимости от используемого сценария в виде допуска к следующим этапам и появлению новых элементов [6]. Рассматривая существующие средства воспроизведения ВТ, можно отметить трудоемкость запуска, управления и внесения изменений в тренажер из-за ограниченности и
закрытости программных средств работы с ними [7]. По этой причине необходимо обеспечить функционирование такого вида тренажеров и предоставить разработчикам средства создания, а оператору средства воспроизведения и управления.
В данной статье показан процесс проектирования и разработки подсистемы воспроизведения в рамках реализации инструментального комплекса для создания, воспроизведения и сопровождения иммерсивных ВТ (ИВТ) с биологической обратной связью (БОС). Новизна работы состоит в решении задачи воспроизведения ВТ с БОС для обеспечения запуска и функционирования разработанных тренажеров с возможностью погружения в виртуальную реальность и взаимодействия с оборудованием БОС.
Создание тренажера
Представленный ИВТ с БОС - это программно-аппаратный комплекс с оборудованием виртуальной реальности и БОС, позволяющий моделировать различные ситуации, воссозда-
вая реальную или вымышленную ситуацию, и визуализировать искусственное окружение с возможностью взаимодействия и управления объектами виртуальной среды на основе состояний человека и объектов. В основу программно-аппаратного комплекса положены следующие ключевые принципы [8].
• ВТ создается на основе декларативной модели, которая описывает существенные для ИВТ с БОС свойства его функционирования и управления. Виртуальная среда и объекты создаются с помощью имеющихся на рынке средств 3D-моделирования и разработки виртуальных сред (например, Blender, Unity 3D и др.).
• Декларативная модель ИВТ с БОС формируется на основе комплекса связанных онто-логий с помощью соответствующих редакторов. Комплекс включает онтологии:
- виртуальной среды (для описания множества сцен, объектов с набором параметров и функций, необходимых для управления виртуальным окружением);
- исследований (включает систему понятий, правила и ограничения для формирования индивидуального сценария работы пользователя либо группы пользователей в тренажере);
- знаний о состояниях пользователя (для описания состояний, которые могут диагностироваться в процессе взаимодействия пользователя с тренажером; каждое состояние определяется как набор статических и динамических параметров);
- карты пользователя (протоколирование записей данных сеанса и результатов проведенных исследований);
- оборудования (включает описание различного оборудования и способы работы с ним).
• Каждая онтология отражает необходимые для тренажера компоненты модели. Создание и сопровождение компонентов модели осуществляют специалисты разного профиля -эксперты предметной области, эксперты БОС, дизайнеры, программисты.
• Декларативная модель преобразуется в формат данных, в основе которого лежит набор классов, включающий поля и методы работы с ними для функционирования подсистемы воспроизведения.
Разработанное решение
Архитектура системы. В рамках реализации указанных принципов в [9] предложена архитектура инструментального комплекса для создания, воспроизведения и сопровождения ИВТ с БОС. Инструментальный комплекс состоит из информационных и программных компонентов, связанных в единую систему. Архитектура инструментального комплекса для создания и воспроизведения ИВТ с БОС представлена на рисунке 1.
Подсистема воспроизведения ИВТ с БОС. С помощью подсистемы воспроизведения ВТ осуществляются запуск и функционирование
Рис. 1. Архитектура инструментального комплекса Fig. 1. The architecture of the instrumental complex
разработанных тренажеров с возможностью погружения в виртуальную реальность и взаимодействия с оборудованием БОС. Использование решения позволяет обеспечить существенно новый уровень воспроизведения ВТ, способствующий повышению комфорта и эффективности как для оператора, так и для пользователя. Новый уровень воспроизведения ВТ достигается путем обеспечения набором инструментов для работы с тренажером в реальном времени на всем промежутке функционирования тренажера в рамках его жизненного цикла, что способствует реализации ключевых принципов программно-аппаратного комплекса, а именно предоставления специалистам разного профиля необходимых инструментов для работы и поддержки пользователя в процессе использования тренажеров такого класса.
Данная подсистема в отличие от существующих решений позволяет выбрать разработанный тренажер, ввести информацию о пользователе, запустить сеанс и получить доступ к управлению сеансом. Сеанс на ВТ начинается
с загрузки декларативной модели, ее преобразования в формат данных, в основе которого лежит набор классов, включащий поля и методы работы с ними, для управления сеансом в зависимости от хода сценария и получаемых с оборудования параметров. Воспроизведение ВТ с БОС, учитывающего физиологические параметры пользователя и условия виртуального окружения, требует анализа различного рода информации и контекста, характеризующих ситуацию, в которой находится пользователь. Для этого необходимо обеспечить распределенное накопление, анализ общей информации о ВТ (сценарий и параметры объектов) и пользователе (контекста, его параметров, представленных объективными и субъективными признаками). На рисунке 2 показаны структура средства воспроизведения, используемые компоненты и связи между ними.
Средство преобразования модели. Для хранения исходных и промежуточных данных используется представление на основе семантических сетей, реализуемое на платформе
Модель
Подсистема воспроизведения
Средство обмена сообщениями (сервер)
Средство преобразования модели
Пользовательский интерфейс
Параметр сеанса
[ Название ) ^
Алгоритм обработки
Сценарий
Элемент сценария
Условия выполнения
Выполняемое действие
Де йствие
Средство обмена сообщениями (клиент)
Сцена
Менеджер сцены
Менеджер объекта
т
Внешнее оборудование
Средство обмена сообщениями (клиент)
Оборудование БОС
Оборудование виртуальной реальности
Рис. 2. Структура подсистемы воспроизведения Fig. 2. The playback subsystem structure
БЗ
I ИВТ с БОС
IACPaaS, в рамках которого организовано взаимодействие с помощью средства экспорта-импорта, используя данные в формате JSON. В частности, исходные данные для проведения сеанса предлагается представлять в виде JSON-прототипа - предметно-ориентированного описания тренажера в формате JSON. Прототип JSON содержит все параметры тренажера, необходимые для проведения сеанса, и с помощью средства преобразования конвертируется в формат данных, с которым будет работать подсистема воспроизведения. Итоговый формат включает перечисление полей с указанием параметров и связей. Например, класс Parameter содержит запись name = Column(String (100), nullable = False).
Менеджер объекта. Каждый объект состоит из компонентов, ответственных за его поведение и отображение. Например, у видимого объекта будут компонент Renderer, который его отрисовывает, и, вероятно, компонент Collider, задающий физические границы объекта. Если необходимо взаимодействие с объектом в рамках выполнения сценария или объект требует внешнего взаимодействия, то ему необходимо добавить разработанный компонент ObjectManager, принимающий все события, связанные с объектом, и транслирующий команды, которые отвечают за управление данным объектом. На протяжении жизненного цикла ObjectManager получает обратные вызовы от SceneManager, которые именуются сообщениями. В ObjectManager необходимо определить все параметры и методы работы с объектом путем создания ссылок на другие компоненты с указанием идентификатора параметра или метода. Объекты могут посылать или принимать сообщения для изменения своего состояния. Каждый объект регистрируется в системе и получает уникальный идентификатор - адрес. Любой, кто хочет послать сообщение какому-либо объекту, должен указать адреса «откуда», «куда», а также «действие». На рисунке 3 показан компонент ObjectManager у объекта.
Менеджер сцены. Объекты, их компоненты и параметры ввода существуют в сцене как отдельные экземпляры. Для взаимодействия с объектами, которые используются в сценарии или требуют внешнего управления, и применяется разработанный компонент SceneManager. Он принимает сообщения для управления всеми объектами на сцене, и передает объекту в рамках сообщения для осуществления управления им. Менеджер сцены знает, где нахо-
T 0Object Manager (Script) OS®'
Script ObjectManager o
Parameters Manager Cube (ParametersManager) O
Scene Manager Scripts (SceneManager) | □ Key kYEh0v7pyoW7jQ
Link Came Object Cube □
▼ Variables
Size 1
Element 0 speed
▼ Object Methods
Size |2
TY7rjs"hsf
Key Event Trigger Y7rjs*hsf 'ciCube (EventTrigger) О
Value 0
▼ ds23gjjsd992
Key ds23gjjsd992
Event Trigger ¡rziCube (EventTrigger) 0
Value 0
Position X 2.886
Position Y 11.018104
Position Z -1.205
Rotation X Ю
Rotation Y 0
Rotation Z 0
Scale X 10-5
Scale Y [ÖT5
Scale Z 0.5
Рис. 3. Компонент ObjectManager Fig. 3. ObjectManager component
дится объект, и доставляет ему сообщение. При отправке сообщение преобразуется в формат, удобный для передачи, доставляется целевому объекту и преобразуется в формат, удобный для исполнения, затем вызывается метод над целевым объектом с указанием требуемых действий. Такой подход позволяет реализовывать различные команды, например, «увеличить этаж», «открыть дверь», «изменить высоту». Вся эта логика оказывается внешней по отношению к объекту, над которым выполняется действие. Когда логика сценария требует выполнения команд на нескольких объектах, предусмотрена отправка нескольких сообщений, которые будут исполняться по цепочке или асинхронно в момент получения сообщения.
Алгоритм обработки. Данное решение позволяет осуществлять управление сеансом согласно ходу сценария и параметрам, получаемым с виртуальной сцены и оборудования, и решать следующие функциональные задачи.
1. Инициализация объектов. Инициализация всех объектов сцены: параметров и начальных состояний. В рамках инициализации объектов формируются все объекты сцены, инициализируются все параметры уровня представления и атрибуты логического уровня.
2. Инициализация событий и действий. Для каждого действия указываются событие
и выполняемое действие в ограничениях параметров и функций объектов или сцены. Для объекта и списка событий добавляется действие, которое должно происходить. Для каждого события проверяется, выполнены ли все условия. При изменении состояния объекта выполняется поиск события в множестве событий сцены, для которого указаны данный объект и изменяемое состояние. Если такое событие есть, то объекту добавляется обработчик этого события с вызовом действия, указанного в событии.
3. Инициализация связей между параметрами. Инициализация ссылок на изменение характеристики объекта в соответствии с параметром пользователя. В процессе работы с виртуальной средой пользователь находится в виртуальном пространстве сцены и выполняет некоторые операции (или действия) с виртуальными объектами, во время которых происходит считывание биосигналов. Необходимо получать и обрабатывать биосигналы пользователя и определять, какие именно действия должны запускаться в каждом конкретном случае.
В процессе работы алгоритма обработки происходит выявление параметров согласно сценарию и управлению сценой, в результате изменяются объекты. Задача алгоритма - определять, какие объекты должны измениться и как именно. Кроме того, действия могут иметь информационные результаты (не связанные с непосредственным изменением объектов). Задача алгоритма обработки - получить эти информационные результаты путем анализа текущих параметров выполняемого действия и отобразить их пользователю. В рамках выполнения действий возможны следующие операции.
1. Установка начального состояния ^ установить выбранное начальное состояние объекта.
2. Изменение состояния объекта (в том числе для начального состояния):
- координаты ^ расположить объект в трехмерном пространстве сцены с абсолютными координатами: координаты[0] ^ x, координаты^] ^ у, координаты[2] ^ г;
- повороты ^ развернуть объект в трехмерном пространстве сцены относительно трех перпендикулярных осей: повороты[0] ^ х, повороты^] ^ у, повороты[2] ^ z;
- масштабы ^ масштабировать объект в трехмерном пространстве сцены относительно
трех перпендикулярных осей: масштабы[0] ^ х, масштабы[1] ^ у, масштабы[2] ^ г;
- дочерние объекты ^ создать массив, каждый элемент которого будет ссылкой на другой объект сцены; при этом проверить наличие указанного объекта среди объектов сцены;
- логические атрибуты ^ установить значения указанных логических атрибутов.
3. Вызов функции ^ вызвать выбранную функцию объекта.
Средство обмена (сервер/клиент). Для воспроизведения и внесения изменений в ВТ в реальном времени разработано средство, обеспечивающее связь в режиме реального времени между клиентами и сервером. Средство состоит из двух частей: клиентской, которая запускается в среде ВТ и оборудования, и серверной, запускаемой в подсистеме воспроизведения. Поддерживается много других функций, включая вещание на несколько сокетов, хранение данных, связанных с каждым клиентом, и асинхронный ввод/вывод. С помощью Socket.ro организуется система доставки сообщений от одного сервиса к другому или от одного объекта к другому для возможности удаленного вызова процедур и изменения параметров объектов.
Пользовательский интерфейс. Данное средство реализует поддержку внешнего механизма управления ВТ: позволяет в реальном времени вносить корректировки в сценарий, изменять значения параметра, вызывать метод, отключать компоненты и контролировать процесс воспроизведения ВТ. Пользовательский интерфейс представляет собой веб-приложение, с помощью которого демонстрируется текущее состояние пользователя, погруженного в сеанс на ВТ. Оператору доступны такие функции, как просмотр данных, получаемых с оборудования, доступ к текущему этапу выполнения сценария с учетом действий пользователя. На рисунке 4 показан пользовательский интерфейс оператора.
Заключение
В работе рассмотрен процесс проектирования и разработки подсистемы воспроизведения ИВТ с БОС. В рамках исследования создана структура и показан набор средств реализации с учетом прикладных систем и подсистем, способных в значительной степени определять рабочую нагрузку всей системы в целом и обес-
22.25
16.81
Settings
Рис. 4. Пользовательский интерфейс оператора
Fig. 4. The operator user interface
печивать существенно новый уровень воспроизведения ВТ. Такой уровень потенциально способствует повышению комфорта и эффективности как для оператора, так и для пользователя. В данной работе рассмотрены средства реализации каждой отдельной подсистемы.
Разработанный программный комплекс планируется использовать для создания, воспроизведения и сопровождения ИВТ с БОС. Подсистема воспроизведения ИВТ с БОС позволяет осуществлять запуск и функционирование разработанных тренажеров с возможностью погружения в виртуальную реальность и взаимодействия с оборудованием БОС, в рамках которых обеспечить оператора необходимыми инструментами управления. Доступ к подсистеме воспроизведения осуществляется через веб-интерфейс и в настоящее время уже активно используется специалистами для управления ВТ. Благодаря данному решению реализован ВТ для выполнения работ на высоте, с помощью которого можно проводить тестирование человека на акрофобию и профилактику тревожных расстройств с возможностью изменения параметров виртуальной среды в зависимости от состояния пользователя.
Список литературы
1. Аглямов Ф.Р., Кугураков В.С. Тренажер для реабилитации пациентов с проблемами мобильности руки, построенный с использованием технологий виртуальной реальности // Программные продукты и системы. 2022. Т. 35. № 3. С. 285-292. doi: 10.15827/0236-235X.139.285-292.
2. Мишенков Е.А., Малышев А.А., Кулагин А.В., Сагун Д.Ю. Подход к моделированию нештатных ситуаций с использованием виртуального тренажера для обучения персонала // Информационные и математические технологии в науке и управлении. 2019. № 4. С. 99-110.
3. Benson R.A., Krishnan V.L., Reddy T.A., Prasad G.R.K. Virtual reality-based welding training simulator. Int. J. of Control Theory and Applications, 2016, no. 9, pp. 1235-1243.
4. Жабицкий М.Г., Кулак С.А., Новикова А.С. Проблема разработки VR тренажеров сборки/разборки и вариант высокопроизводительного решения на базе технологии VR concept // INJOIT. 2022. Т. 10. № 8. С. 18-29.
5. Воловик М.Г., Борзиков В.В., Кузнецов А.Н., Базаров Д.И., Полякова А.Г. Технологии виртуальной реальности в комплексной медицинской реабилитации пациентов с ограниченными возможностями (обзор) // СТМ. 2018. № 4. С. 173-182. doi: 10.17691/stm2018.10.4.21.
6. Coogan C.G., He B. Brain-computer interface control in a virtual reality environment and applications for the internet of things. IEEE Access, 2018, vol. 6, pp. 10840-10849. doi: 10.1109/ACCESS.2018.2809453.
7. Коленчук Ф.В., Буторин Д.Н. Развитие навыков сборки персонального компьютера с помощью виртуального тренажера // Актуальные проблемы авиации и космонавтики: матер. конф. 2012. Т. 2. № 8. С. 480-481.
8. Грибова В.В., Стрекалев В.О. Комплекс онтологий для виртуальных тренажеров с биологической обратной связью // Онтология проектирования. 2022. Т. 12. № 2. С. 172-185. doi: 10.18287/2223-9537-2022-12-2-172-185.
9. Грибова В.В., Стрекалев В.О. Инструментальный комплекс для иммерсивных виртуальных тренажеров с биологической обратной связью // Вестн. компьютерных и информационных технологий. 2020. № 8. С. 19-28. doi: 10.14489/vkit.2020.08.pp.019-028.
Software & Systems doi: 10.15827/0236-235X.142.286-292 2023, vol. 36, no. 2, pp. 286-292
A subsystem for reproducing immersive virtual simulators with biofeedback
Vyacheslav O. Strekalev Valeriya V. Gribova
For citation
Strekalev, V.O., Gribova, V.V. (2023) 'A subsystem for reproducing immersive virtual simulators with biofeedback', Software & Systems, 36(2), pp. 286-292 (in Russ.). doi: 10.15827/0236-235X.142.286-292
Article info
Received: 25.11.2022 After revision: 15.02.2023 Accepted: 20.02.2023
Abstract. The paper shows the process of designing and developing a subsystem for reproducing virtual simulators with biofeedback as a part of an instrumental complex for creating, reproducing and maintaining immersive virtual simulators with biofeedback (IVT with BFB). The playback subsystem of IWT with biofeedback allows launching and functioning of the developed simulators allowing virtual reality immersion and interaction with biofeedback equipment, within which the operator has access to the necessary tools for launching, managing and making changes. The proposed subsystem is part of a large software and hardware complex. Within the framework of design and development, the authors consider the interaction between the simulator, equipment and the playback subsystem while indicating the technical means used. The paper shows a set of implementation tools, taking into account applied systems and subsystems, which largely can determine the workload of the entire system as a whole and provide a significantly new level of virtual simulator reproduction, which potentially contributes to increased comfort and efficiency for both the operator and the user. The developed software package can be used throughout the entire simulator operation period within its life cycle. Using this solution, a virtual simulator has been implemented to perform work at height, which helps testing a person for acrophobia (fear of heights) and preventing anxiety disorders, with the ability to change the parameters of the virtual environment depending on the user's state.
Keywords: virtual reality, VR, virtual simulators, biofeedback, instrumental complex, ontologies
Reference List
1. Aglyamov, F.R., Kugurakov, V.S. (2022) 'A rehabilitation simulator for patients with hand mobility problems using virtual reality technologies', Software & Systems, 35(3), pp. 285-292. doi: 10.15827/0236-235X.139.285-292 (in Russ.).
2. Mishenkov, E.A., Malyshev, A.A., Kulagin, A.V., Sagun, D.Yu. (2019) 'Approach to modeling non-standing situations using a virtual simulator to train personnel', Information and Math. Tech. in Sci. and Management, (4), pp. 99-110 (in Russ.).
3. Benson, R.A., Krishnan, V.L., Reddy, T.A., Prasad, G.R.K. (2016) 'Virtual reality-based welding training simulator', Int. J. of Control Theory and Applications, (9), pp. 1235-1243.
4. Zhabitskii, M.G., Kulak, S.A., Novikova, A.S. (2022) 'The problem of developing VR assembly/disassembly simulators, and a variant of a high-performance solution based on VR concept technology', INJOIT, 10(8), pp. 18-29 (in Russ.).
5. Volovik, M.G., Borzikov, V.V., Kuznetsov, A.N., Bazarov, D.I., Polyakova, A.G. (2018) 'Virtual reality technology in complex medical rehabilitation of patients with disabilities (review)', Modern Technologies in Medicine, (4), pp. 173-182. doi: 10.17691/stm2018.10.4.21 (in Russ.).
6. Coogan, C.G., He, B. (2018) 'Brain-computer interface control in a virtual reality environment and applications for the internet of things', IEEE Access, 6, pp. 10840-10849. doi: 10.1109/ACCESS.2018.2809453.
7. Kolenchuk, F.V., Butorin, D.N (2012) 'Developing personal computer assembly skills using a virtual simulator', Proc. Current Problems of Aviation and Astronautics, 2(8), pp. 480-481 (in Russ.).
8. Gribova, V.V., Strekalev, V.O. (2022) 'Complex of ontologies for virtual simulators with biofeedback', Ontology of Designing, 12(2), pp. 172-185. doi: 10.18287/2223-9537-2022-12-2-172-185 (in Russ.).
9. Gribova, V.V., Strekalev, V.O. (2020) 'Toolkit for immersive virtual simulators with biofeedback', Herald of Computer and Information Tech., (8), pp. 19-28. doi: 10.14489/vkit.2020.08.pp.019-028 (in Russ.).
Авторы
Стрекалев Вячеслав Олегович
младший научный сотрудник, [email protected] Грибова Валерия Викторовна ', д.т.н., чл.-корр. РАН, зам. директора по научной работе, [email protected]
1 Институт автоматики и процессов управления ДВО РАН, г. Владивосток, 690041, Россия
Authors Vyacheslav O. Strekalev
Unior Researcher, [email protected] Valeriya V. Gribova ', Dr.Sc. (Engineering), Corresponding Member of RAS, Deputy Director on Scientific Work, [email protected]
1 Institute of Automation and Control Processes Far Eastern Branch of RAS, Vladivostok, 690041, Russian Federation