Автоматика и телемеханика, № 3, 2022
Управление в технических системах
© 2022 г. М.Н. КРАСНЯНСКИЙ, д-р техн. наук (kras@tambov.ru),
А.Д. ОБУХОВ, канд. техн. наук (obuhov.art@gmail.com),
Д.Л. ДЕДОВ, канд. техн. наук (hammer68@mail.ru)
(Тамбовский государственный технический университет)
СИСТЕМА УПРАВЛЕНИЯ АДАПТИВНОЙ БЕГОВОЙ ПЛАТФОРМОЙ
ДЛЯ ПЕРЕМЕЩЕНИЯ В ВИРТУАЛЬНОЙ РЕАЛЬНОСТИ1
Рассматривается проблема реализации системы управления беговой
платформой для организации комфортного перемещения человека в вир-
туальной реальности с возможностью адаптации скорости платформы в
зависимости от характера перемещения пользователя, что позволит по-
высить комфортность и степень погружения в виртуальное окружение.
В статье используются управляемая беговая платформа (реализуемая
на базе однонаправленной беговой дорожки) и система позиционирова-
ния человека на основе датчиков (трекеров) виртуальной реальности, что
обеспечивает достаточную частоту и точность позиционирования челове-
ка. Для платформы разработано программное обеспечение, способное осу-
ществить сбор данных о перемещении пользователя и сравнение различ-
ных алгоритмов управления. Осуществлена формализация набора функ-
ций для управления платформой, в том числе разработанных в рамках
данного исследования, проведены их сравнение и оценка. В ходе экспе-
риментальных исследований определены оптимальные функции управле-
ния для рассматриваемой беговой платформы. Выявлены преимущества
и недостатки каждой функции. Научная новизна исследования заключа-
ется в реализации новых функций управления беговой платформой для
повышения ее адаптивности к действиям пользователя за счет снижения
среднего отклонения человека от начальной позиции и, следовательно,
негативных эффектов колебания и инерции. Практическая значимость
состоит в совершенствовании процесса сопряжения виртуальной реаль-
ности с устройствами, имитирующими передвижение человека (в рамках
данного исследования однонаправленной беговой дорожки), и разра-
ботке соответствующего программного обеспечения. Полученные резуль-
таты могут быть адаптированы под всенаправленные беговые платфор-
мы.
Ключевые слова: адаптивная беговая платформа, система управления,
анализ движений человека, перемещение в виртуальной реальности.
DOI: 10.31857/S0005231022030060
1 Работа выполнена при поддержке лаборатории медицинских VR тренажерных систем
для обучения, диагностики и реабилитации.
69
1. Введение
Технологии виртуальной реальности активно применяются в различных
сферах деятельности общества: при профессиональной подготовке специали-
стов, для проведения реабилитационных мероприятий, в развлекательных и
образовательных системах [1, 2]. Несмотря на значительное повышение каче-
ства изображения, транслируемого в шлем виртуальной реальности, добавле-
ние новых датчиков и сенсоров, позволяющих улучшить степень погружения
в виртуальное пространство, ряд вопросов остается нерешенным. Ключевым
моментом при взаимодействии человека с виртуальной реальностью являет-
ся задача комфортного и естественного перемещения в ней. Использование
различного рода контроллеров или манипуляторов по-прежнему не может в
полной мере заменить классическое перемещение при помощи ног, так как
вызывает различные негативные реакции со стороны вестибулярного аппа-
рата (укачивание, тошнота, головокружение и т.д. [3, 4]). Использование ме-
ханизма управления камерой, при котором пользователь переносится (теле-
портируется) в выбранное место по визуальным и физическим ощущениям,
не соответствует привычному процессу перемещения [5]. При использовании
контроллеров возникает проблема взаимодействия с виртуальной средой, так
как при таком подходе нельзя одновременно перемещаться и взаимодейство-
вать с предметами.
Перспективным направлением в решении данной проблемы является ис-
пользование беговых платформ, адаптирующихся под скорость перемещения
пользователя и передающих эту информацию в системы виртуальной реаль-
ности. Это позволит обособить процесс перемещения, высвободить руки для
взаимодействия с виртуальными объектами. Такой подход уже успешно апро-
бирован во многих исследованиях [6, 7], подтверждено увеличение эффекта
погружения в виртуальную реальность, удобства передвижения и взаимо-
действия с предметами, а также обеспечение необходимой физической на-
грузки, что особенно актуально для профессиональной подготовки, фитнес-
индустрии и реабилитации опорно-двигательной системы [8, 9]. Схема взаи-
модействия таких платформ и технологий виртуальной реальности представ-
лена на рис. 1.
Однако несмотря на очевидный положительный эффект от использова-
ния беговых платформ, существует ряд проблем, требующих решения: несо-
вершенство алгоритмов управления, наличие программного и аппаратного
запаздывания [6]. Конструкция таких платформ не всегда позволяет выра-
ботать необходимый уровень физических нагрузок (решения, основанные на
принципе скольжения, не дают подобного эффекта [7]), а система управления
платформой может быть недостаточно эффективной и точной (из-за особен-
ностей используемых методов позиционирования или алгоритмического обес-
печения [10]).
Таким образом, проведенный анализ показал перспективность использо-
вания беговых платформ, адаптирующихся к темпу передвижения челове-
ка, при реализации систем виртуальной реальности. Поэтому актуальной за-
дачей является организация взаимодействия с виртуальной реальностью на
70
Фитнес-индустрия
Шлемы виртуальной реальности
×
Контроллеры виртуальной
Профессиональная подготовка
×
реальности
Медицинская диагностика и
Визуализация виртуальной сцены
реабилитация
Сценарии взаимодействия с
Развлекательная индустрия
виртуальным огружением
включают
используются в
Технологии виртуальной реальности
обеспечивают
вызывают
×
Эффект
Информация о перемещении
головокружения
человека
×
Взаимодействие с
Эффект укачивания
виртуальными объектами
передают
Реалистичность перемещения
повышают
Перемещение пользователя в
в виртуальном пространстве
сцене
снижают
Беговые платформы
обеспечивают
×
включают
Возможность одновременного
взаимодействия с объектами и
Метод позиционирования пользователя
перемещения пользователя
×
Система управления платформой
базируется на
Функции управления
Аппаратное обеспечение платформы
Рис. 1. Схема взаимодействия технологий виртуальной реальности и беговых
платформ.
основе управляемой беговой платформы с разработкой новых алгоритмов
управления, позволяющих повысить комфортность перемещения и степень
погружения в виртуальное окружение за счет минимизации величины ко-
лебаний человека на платформе. Для ее решения необходимо осуществить
сравнительный анализ существующих подходов к управлению платформой,
выявить их преимущества и недостатки, реализовать новые, более эффек-
тивные функции управления и интегрировать их в программное обеспечение
платформы.
2. Анализ процесса перемещения человека по беговой платформе
Реализация функций управления беговой платформой невозможна без
точного позиционирования объекта (человека) на ее рабочем пространстве.
71
Данная задача может решаться различными способами: с помощью датчи-
ков [11], обратной связи [12], оптических сенсоров [10], камер [13].
В данном исследовании для решения задачи позиционирования использу-
ются датчики на основе трекеров компании High Tech Computer (HTC) Cor-
poration, позволяющие с помощью открытой библиотеки OpenVR получать
информацию о координатах трекера по трем осям, а также углах его наклона
с высокой частотой (не менее 50 раз в секунду) и точностью (погрешность
около 0,7 мм) [14]. Недостатком данного подхода является необходимость ис-
пользования базовых станций для формирования зоны отслеживания треке-
ров.
Далее необходимо проанализировать и формализовать процесс перемеще-
ния человека на беговой дорожке. Для этого возможно использование клас-
сической теории кинематики [15, 16], однако возросшие вычислительные за-
траты увеличат время обработки информации, что недопустимо в системах
реального времени подобного рода, где беговая платформа должна реагиро-
вать на действия человека с минимальным запаздыванием.
Формализуем процессы перемещения человека в виде упрощенного мате-
матического обеспечения, которое будет достаточным для использования в
системах виртуальной реальности, не потребует больших вычислительных
затрат для работы с минимальной задержкой. Последнее условие является
определяющим, так как система управления дорожкой должна реагировать
на действия человека в реальном времени. Такое допущение возможно, так
как в рамках решаемой задачи не требуется исследование кинематической
модели движения человека, а необходимо формализовать лишь процесс его
позиционирования в рамках беговой платформы.
Обозначим через PM процесс перемещения человека по адаптивной бего-
вой платформе в виртуальной реальности, который будет включать следую-
щие составляющие:
(1)
PM = (PH,PT ,PV
),
где PH , PT , PV - процессы перемещения человека, полотна платформы и
камеры в виртуальной реальности соответственно.
Рассмотрим каждую составляющую процесса перемещения.
Процесс перемещения пользователя PH будет включать координаты, опи-
сывающие положение человека в пространстве, и скорость в определенные
моменты времени:
(2)
PH = {Ci,Vi
}, i = 1, N ,
где N - количество отслеживаемых точек (трекеров),
Ci = (Xi,Yi,Zi) - кортеж множеств координат i-й точки по трем осям,
каждое множество включает значения координаты точки по соответствую-
щей оси, полученные через некоторый интервал времени Δt, например, Zi =
=zi,j;
Vi = {vi,j} - множество скоростей i-й точки, м/с.
72
В качестве аппаратной основы беговой платформы используется управляе-
мая однонаправленная беговая дорожка с регулируемой скоростью и углом
наклона. При такой аппаратной реализации в качестве основной оси коорди-
нат используется ось Z, направленная вдоль дорожки, что обусловлено спе-
цификой работы шлема виртуальной реальности и заданной в нем системы
координат. Так как однозначно положение человека на дорожке и его уда-
ление от некоторой начальной или оптимальной позиции (z0) задает только
одна координата по оси Z, то для расчета скорости человека в некоторый
момент времени j можно использовать формулу
Δzi,j
(3)
vi,j =
,
Δt
где Δzi,j= (zi,j - zi,j-1) - изменение координаты по оси Z;
zi,j ∈ Zi - текущее положение человека;
zi,j-1 ∈ Zi - предыдущее положение (отстающее по времени на Δt).
При анализе перемещения человека возможны два варианта: отслежива-
ние по трекеру на спине или по двум точкам, расположенным на ногах [17, 18].
Во втором случае возможно использование в качестве координаты пользова-
теля среднего значения между двумя трекерами или другие вариации.
Процесс перемещения полотна беговой платформы включает следующие
компоненты:
(4)
PT = (VT ,z0,zmax,LT ,LS
),
где VT - функция выбора скорости платформы, значения которой зависят от
положения или скорости человека, направление перемещения полотна плат-
формы противоположно направлению движения человека, скорость в метрах
в секунду, м/с;
z0 - начальная точка, которая задается для калибровки пользователя в
рабочем пространстве платформы;
zmax - максимальное значение координаты (соответствует общей длине
платформы);
LT = |z - z0| - рабочая зона в метрах;
LS = |z0| - безопасная зона (в ней система управления не реагирует на
движения пользователя, следовательно, VT = 0) в метрах.
Так как в процессе сбора данных о перемещении человека дорожка также
движется, оказывая влияние на текущие координаты трекеров, то необходимо
осуществить преобразование координат всех точек путем добавления сдвига
полотна за время Δt при скорости платформы VT (zi,j):
(5)
zabsi,j = zabsi,j-1 + Δzi,j + VT (zi,j
)Δt,
где zabsi,j - координаты человека без учета влияния скорости дорожки.
Используя формулу (5), можно полностью восстановить траекторию дви-
жения человека и использовать ее для дальнейшего тестирования различных
алгоритмов управления, учитывая только специфику их функций.
73
Процесс перемещения в виртуальном пространстве определяется следую-
щим образом:
(6)
PV = (CV ,VV
),
где CV - положение камеры в виртуальном пространстве;
VV - скорость аватара пользователя в виртуальном пространстве (в м/с,
заданных для трехмерной сцены), которая соответствует скорости полотна
платформы VT (возможно, с умножением на некоторый поправочный коэф-
фициент [19]).
После получения значения скорости VV осуществляется сдвиг аватара в
виртуальном пространстве:
(7)
CV (t + Δt) = CV (t) + VV
Δt.
Задача поиска оптимальной функции управления VT может быть сформу-
лирована различными способами [20]: на основе анализа отклонения траек-
тории движения человека от некоторого эталона, разницы между скоростью
платформы и человека или на основе других критериев. В простейшей форме
за критерий оптимальности функции управления можно принять минималь-
ное выборочное среднее траектории человека Z, которое отражает величину
колебаний человека на пространстве платформы в процессе перемещения от-
носительно некоторой нулевой позиции:
(8)
R(VT
) = Z → min.
Таким образом, для успешного решения поставленной задачи организации
перемещения человека в виртуальном пространстве с применением беговой
платформы необходимо выбрать функцию VT из некоторого множества ва-
риантов, при которой критерий R(VT ) достигает экстремума.
3. Анализ и формализация функций управления беговой платформой
В данном исследовании рассматриваются следующие функции управле-
ния: линейная, нелинейная (параболическая), нелинейная модифицирован-
ная, зональная, детализированная зональная и пропорционально-дифферен-
циальная.
На рис. 2 представлены графики первых пяти функций, так как они на-
ходятся в прямой зависимости от положения пользователя (z) в отличие от
пропорционально-дифференциальной функции, которая будет зависеть еще
и от скорости движения пользователя. Рассмотрим формализованное пред-
ставление каждой из функций.
Для упрощения записи формул функций управления платформой примем
следующие общие обозначения: z (или zi,j ) - текущее положение человека,
zi,j-1 - предыдущее положение в момент, отстающий по времени на Δt.
74
3,5
5
3,0
4
2,5
3
1
2
2,0
1,5
1,0
0,5
0
0,2
0,4
0,6
0,8
1,0
z, м
Рис. 2. Сравнение динамики изменения функций управления в зависимости
от положения человека на платформе: 1 - линейная, 2 - нелинейная (парабо-
лическая), 3 - нелинейная модифицированная, 4 - зональная с накоплением,
5 - детализированная зональная с накоплением.
Линейная функция (график 1), увеличивая или уменьшая скорость полот-
на пропорционально положению человека, равномерно регулирует скорость
на всей длине рабочей области платформы:
(z - z0) VmaxT
(9)
VT,lin(z) =
,
LT
где VT,lin(z) - линейная функция расчета скорости, зависящая от текущего
положения человека z и удаленности от стартовой точки z0;
VmaxT - максимально возможная скорость платформы, м/с.
Нелинейная (параболическая) функция VT,par (график 2) изменяет ско-
рость беговой платформы более плавно и имеет вид:
(z - z0)2VmaxT
(10)
VT,par(z) =
LT
Так как процесс изменения скорости на первой половине рабочей зоны при
функции VT,par оказался слишком медленным (рис. 2), то при использовании
параболической функции платформа не смогла выйти на максимальную ско-
рость при z = 1. Поэтому была произведена модификация (график 3), кото-
рая позволила увеличить скорость реакции на изменение положения человека
и сократить эффект запаздывания в начале разгона платформы:
(z - z0)0,6VmaxT
(11)
VT,mod(z) =
,
LT
где VT,mod(z) - модифицированная нелинейная функция расчета скорости.
75
Зональная функция управления VT,m1 (график 4) основана на разделе-
нии рабочей зоны на две зоны: торможения и ускорения. При нахождении
человека в одной из них скорость дорожки плавно нарастает или убывает с
заданным шагом:
k1(zc - z)
VT,m1 -
,
z0 < z ≤ zc,
zc - z0
(12)
VT,m1(z) =
2(
- VT,m1)(z - zc)
T
 VT,m1 +k
,
z>zc,
zmax - zc
где k1, k2 - коэффициенты, определяющие скорость торможения или ускоре-
ния соответственно;
zc - центральная точка рабочей зоны, заданная эмпирически, z0 < zc <
<zmax.
Детализированная зональная функция управления VT,m2 (график 5) от-
личается от зональной добавлением большего количества зон: торможения,
удержания и ускорения. При таком подходе алгоритм стремится разместить
человека в центральной зоне удержания с постоянной скоростью (скоро-
стью удержания Vdef ), соответствующей текущей скорости человека. Ско-
рость удержания Vdef используется в качестве основной в первых двух зонах,
а в третьей зоне Vdef обновляется:
z-z0
Vdef
,
z0 < z ≤ zt1,
zt1 - z0
Vdef, zt1 < z ≤ zt2,
(13) VT,m2(z) =
VmaxT - VT,m2)(z - zt2)
VT,m2 +(
,
Vdef = VT,m2, z > zt2,
zmax - zt2
где zt1, zt2 - вспомогательные точки, разделяющие рабочую зону на зоны
торможения, удержания и ускорения.
На рис. 2 имеется некоторое допущение для зональных функций присут-
ствует лишь отражение процесса равномерного ускорения платформы (начи-
ная с положения 0,6 м) без демонстрации процесса торможения, так как этот
процесс напрямую зависит от той скорости, с которой пользователь попадает
в зону торможения.
Пропорционально-дифференциальная (ПД) функция VT,PD основана на
соответствующем законе регулирования и использует информацию о смеще-
нии объекта наблюдения (человеке), а также о его скорости (производной от
этого смещения) [21]:
Δzi,j
(14)
VT,PD(zi,j,t) = VT,PD(zi,j-1,t - Δt) + k1(zi,j - zi,j-1) + k2
,
Δt
где VT,PD(zi,j , t) - скорость в текущий момент времени t при текущем поло-
жении zi,j человека;
VT,PD(zi,j-1,t - Δt) - скорость платформы в предыдущую итерацию при
положении zi,j-1 человека;
76
1 траектория
2 траектория
2,5
2,0
1
1
2,0
1,5
1,5
1,0
2
1,0
2
0,5
0,5
3
3
0
0
0
2,5 5,0
7,5 10,0 12,5 15,0 17,5 20,0
0
2,5 5,0
7,5 10,0 12,5 15,0 17,5 20,0
Время, с
Время, с
1 траектория
2 траектория
3,5
3,5
3
3,0
3,0
2,5
2,5
2,0
2,0
1,5
1,5
3
1,0
1,0
2
2
0,5
0,5
1
0
1
0
0
2,5 5,0
7,5 10,0 12,5 15,0 17,5 20,0
0
2,5 5,0
7,5 10,0 12,5 15,0 17,5 20,0
Время, с
Время, с
Рис. 3. Поведение пропорционально-дифференциальной функции управления
при различных коэффициентах: 1 - k1 = 2, k2 = 5, 2 - k1 = 10, k2 = 20, 3 -
k1 = 20, k2 = 40.
k1, k2 - поправочные коэффициенты, определяющие влияние пропорцио-
нальной и дифференциальной составляющих функции VT,PD.
Так как ПД функция управления зависит не только от положения поль-
зователя, но и от его скорости, отдельно рассмотрим характер изменения
данной функции. Выбор коэффициентов k1 и k2 определяет эффективность
работы функции управления. Данный эффект проиллюстрирован на рис. 3,
где для двух траекторий использовались три различные варианта коэффици-
ентов ПД функций управления. Два верхних графика отражают положение
человека при различных значениях коэффициентов, нижние графики рас-
считанную по ПД функции скорость.
Неправильно подобранные коэффициенты не позволяют платформе свое-
временно и в нужном размере увеличивать или уменьшать скорость плат-
формы, что приводит к значительному запаздыванию (графики положения
человека при k1 = 2, k2 = 5).
Из рис. 3 можно сделать вывод, что увеличение коэффициентов повышает
скорость реакции системы управления, однако на первой траектории избы-
77
точные значения коэффициентов (k1 = 20, k2 = 40) привели к хаотичному
регулированию скорости от минимального до максимального значения, что
обеспечило колебание человека в одной точке с высокой частотой. Такие ко-
лебания могут вызвать негативное влияние на вестибулярный аппарат поль-
зователя.
Средние значения коэффициентов (k1 = 10, k2 = 20) показали достаточно
хорошие результаты в обоих случаях. Таким образом, подбор оптимальных
значений коэффициентов может быть темой отдельных исследований, так
как может присутствовать зависимость от характера движения пользовате-
ля, свойств аппаратного обеспечения (длины и скорости платформы). В рам-
ках данного исследования будут использоваться значения k1 = 10, k2 = 20.
Из-за специфики работы беговой дорожки подбор коэффициентов осуществ-
лялся аналитически, в дальнейшем планируется более точная настройка ПД-
функции известными методами (например, Циглера-Никольса). Далее необ-
ходимо осуществить экспериментальное сравнение алгоритмов при различ-
ных траекториях движения человека.
4. Экспериментальное сравнение функций управления
При проведении экспериментов использовались следующие пять функций:
линейная, нелинейная модифицированная, зональная, детализированная зо-
нальная, ПД. Эксперименты проводились на беговой платформе в виде од-
нонаправленной беговой дорожки с рабочей зоной в 1 м, способной разви-
вать скорость от 0 до 3,5 м/с (с возможностью выбора 250 промежуточ-
ных значений) [22]. Программное обеспечение системы управления беговой
платформой реализовано на основе языка программирования Python с при-
менением следующих библиотек: pySerial (для подключения к аппаратному
обеспечению платформы и плате Arduino [23]), OpenVR (для получения дан-
ных о положении трекеров и, следовательно, человека [24]), Matplotlib (для
построения графиков траекторий движения человека и скорости платфор-
мы [25]). Специфика системы управления и наличие определенной инерции
у серводвигателей позволяют судить об отсутствии существенной разницы
при колебаниях скорости в 5-10 единиц, что позволяет игнорировать малые
отклонения датчика вплоть до 4 см.
Для определения оптимальной функции управления используем записан-
ные траектории перемещения человека без учета влияния скорости дорожки
в качестве входных данных для каждой функции (по формуле (5)). Таким
образом, условия для всех экспериментов будут идентичными, а результа-
ты будут соответствовать перемещению человека при различных функциях
управления. В качестве основной оценки функций управления будем исполь-
зовать выборочное среднее траектории человека Z, а также вспомогатель-
ные метрики: максимальное отклонение от начальной позиции max(|z|), дис-
персию D(Z), среднеквадратическое отклонение σZ (квадратный корень из
дисперсии) траектории человека, дисперсию D(VT ) и среднеквадратическое
отклонение σVT скорости беговой платформы.
78
5
1,0
4
0,8
0,6
0,4
3
2
1
0,2
0
0
2,5
5,0
7,5
10,0
12,5
15,0
Время, с
Рис. 4. Сравнение функций управления на первой траектории движения че-
ловека: 1 - линейная, 2 - нелинейная модифицированная, 3 - зональная, 4 -
детализированная зональная, 5 - пропорционально-дифференциальная.
В первом эксперименте сравним все пять функций управления. Получен-
ные в результате траектории движения пользователя для каждой функции
представлены на рис. 4, а значения основных метрик в табл. 1. Лучшие
результаты по каждой метрике выделены.
Среди анализируемых функций наихудшие результаты по основному кри-
терию Z и дополнительным метрикам (max(|z|), D(Z) и σZ ) показали линей-
ная и зональная функции. Причиной такого результата для обеих функций
является недостаточно высокая динамика изменения скорости: это хорошо
отражают графики на рис. 2, где линейная функция значительно отстает по
этому показателю от нелинейной модифицированной, а зональная от дета-
Таблица 1. Результаты первого эксперимента
Функция
Z max(|z|) D(Z) σZ D(VT ) σVT
Линейная
0,624
0,940
0,035
0,187
0,754
0,868
Нелинейная модифицированная
0,473
0,768
0,023
0,154
0,777
0,881
Зональная
0,600
1,131
0,042
0,205
1,164
1,079
Детализированная зональная
0,411
0,897
0,020
0,143
1,006
1,003
Пропорционально-
0,574
0,886
0,028
0,170
0,762
0,873
дифференциальная
79
0,8
0,6
3
2
0,4
1
0,2
0
0
2,5
5,0
7,5
10,0
12,5
15,0
Время, с
Рис. 5. Сравнение функций управления на второй траектории движения че-
ловека: 1 - линейная, 2 - нелинейная модифицированная, 3 - зональная.
лизированной зональной. По причине своей недостаточной эффективности в
следующем эксперименте данные функции не будут принимать участия. Од-
нако по показателям D(VT ) и σVT наибольшее колебание значений скорости
оказалось у зональных функций.
Для второй траектории движения пользователя получены результаты,
представленные на рис. 5 и в табл. 2. Поведение выбранных функций управ-
ления на новой траектории соответствует первому эксперименту, они также
остаются работоспособными.
Во втором эксперименте наилучшие результаты показала нелинейная мо-
дифицированная функция. Детализированная зональная и ПД функции вы-
глядят перспективно за счет возможности варьирования значениями коэф-
фициентов, что может повлиять на динамику изменения скорости, однако
в рамках проведенных экспериментов они не показали лучших результатов,
Таблица 2. Результаты второго эксперимента
Функция
Z max(|z|) D(Z) σZ D(VT ) σVT
Нелинейная модифицированная
0,380
0,775
0,017
0,131
0,757
0,870
Детализированная зональная
0,427
0,789
0,014
0,120
0,935
0,967
Пропорционально-
0,429
0,847
0,025
0,159
0,732
0.855
дифференциальная
80
хотя и могут использоваться в качестве алгоритма управления. Колебание
значений скорости (метрики D(VT ) и σVT ) у нелинейной модифицированной
и ПД функции показывает лучшие результаты с незначительным превосход-
ством ПД функции.
Таким образом, в качестве функций для реализации системы управления
адаптивной беговой платформой рекомендуется использование нелинейной
модифицированной функции. Использование детализированной зональной
и ПД функций также допустимо.
5. Заключение
В статье рассмотрена задача реализации системы управления адаптивной
беговой платформой для организации перемещения в виртуальной реально-
сти. Для ее решения проведено сравнение существующих и новых функций
управления. На основе анализа предметной области формализованы процес-
сы перемещения человека, платформы, а также аватара в виртуальной реаль-
ности в упрощенной форме. Поставлена задача исследования минимизация
среднего значения траектории человека, а также определены дополнительные
метрики для оценки функций управления.
Проведен анализ функций управления, в том числе нескольких новых под-
ходов к управлению беговой платформой. Каждая функция управления фор-
мализована, исследована динамика ее изменения в зависимости от положения
человека на платформе, а также его скорости (для пропорционально-диффе-
ренциальной функции).
В ходе экспериментальных исследований определено, что наилучшие по-
казатели по совокупности метрик показывает нелинейная модифицирован-
ная функция, далее следуют детализированная зональная и пропорцио-
нально-дифференциальная функции. Худшие результаты получены на ли-
нейной и зональной функциях, их использование не рекомендуется. В про-
цессе исследований реализованы подходы к сбору и обработке данных о пе-
ремещении человека на беговой платформе для получения и последующего
использования траектории пользователя.
Полученные результаты позволяют сделать вывод о возможности улуч-
шения рассмотренных функций управления за счет варьирования значений
коэффициентов, обработки отдельных сценариев взаимодействия с платфор-
мой (резкий разгон или остановка человека) с использованием дополнитель-
ного алгоритмического обеспечения или методов машинного обучения, а так-
же использования комбинаций различных функций на отдельных участках
платформы.
СПИСОК ЛИТЕРАТУРЫ
1. Иванова А.В. Технологии виртуальной и дополненной реальности: возможно-
сти и препятствия применения // Стратегические решения и риск-менеджмент.
2018. № 3. С. 88-107. https://doi.org/10.17747/2078-8886-2018-3-88-107
81
2.
Krasnyanskiy M., Obukhov A., Dedov D., Siukhin A. Modeling of the Learning Pro-
cess in Adaptive Training Complexes // J. Appl. Engineering Sci.
2018. V. 16.
No. 4. P. 487-493. https://doi.org/10.5937/jaes16-17627
3.
Almeida A., Rebelo F., Noreiga P., Vilar E. Virtual Reality Self-induced Cybersick-
ness: an Exploratory Study // Advances in Intelligent Syst. and Comput.
2018.
P. 26-33. http://dx.doi.org/10.1007/978-3-319-60582-1 3
4.
Risi D., Palmisano S. Effects of Postural Stability, Active Control, Exposure Du-
ration and Repeated Exposures on HMD Induced Cybersickness // Displays. 2019.
V. 60. P. 9-17. https://dx.doi.org/10.1016/j.displa.2019.08.003
5.
Canessa A., Casu P., Solari F., Chessa M. Comparing Real Walking in Immer-
sive Virtual Reality and in Physical World using Gait Analysis // VISIGRAPP
(2: HUCAPP). 2019. P. 121-128. http://dx.doi.org/10.5220/0007380901210128
6.
Alqahtani A.S., Daghestani L.F., Ibrahim L.F. Environments and System Types of
Virtual Reality Technology in STEM: A survey // Int. J. Advanced Comput. Sci.
and Appl. 2017. V. 8. No. 6. P. 77-89.
http://dx.doi.org/10.14569/IJACSA.2017.080610
7.
Wehden L.O., Reer F., Janzik R., Tang W.Y., Quandt T. The Slippery Path to Total
Presence: How Omnidirectional Virtual Reality Treadmills Influence the Gaming
Experience // Media and Communication. 2021. V. 9. No. 1. P. 5-16.
http://dx.doi.org/10.17645/mac.v9i1.3170
8.
Debska M., Polechonski J., Mynarski A., Polechonski P. Enjoyment and Intensity
of Physical Activity in Immersive Virtual Reality Performed on Innovative Training
Devices in Compliance with Recommendations for Health // Int. J. Environmental
Research and Public Health. 2019. V. 16. No. 19. P. 3673.
https://doi.org/10.3390/ijerph16193673
9.
Vanoglio F., Olivares A., Bonometti G.P., Damiani S., Gaiani M., Comini L.,
Luisa A. A Decision Making Algorithm for Rehabilitation after Stroke: A Guide to
Choose an Appropriate and Safe Treadmill Training // Neurorehabilitation. 2021.
P. 1-11. http://dx.doi.org/10.3233/NRE-210065
10.
Kim J., Gravunder A., Park H.S. Commercial Motion Sensor Based Low-cost and
Convenient Interactive Treadmill // Sensors. 2015. V. 15. No. 9. P. 23667-23683.
http://dx.doi.org/10.3390/s150923667
11.
Haji Maghsoudi O., Vahedipour A., Spence A. Three-dimensional-based Landmark
Tracker Employing a Superpixels Method for Neuroscience, Biomechanics, and Biol-
ogy Studies // Int. J. Imaging Syst. and Technology. 2019. V. 29. No. 4. P. 419-430.
https://doi.org/10.1002/ima.22317
12.
Hejrati B., Crandall K.L., Hollerbach J.M., Abbott J.J. Kinesthetic Force Feedback
and Belt Control for the Treadport Locomotion Interface // IEEE Trans. Haptics.
2015. V. 15. No. 8. P. 176-187. https://doi.org/10.1109/TOH.2015.2404357
13.
Zhao H., Hao F. Target Tracking Algorithm for Table Tennis Using Machine Vi-
sion // J. Healthcare Engineering. 2021. P. 1-7.
https://doi.org/10.1155/2021/9961978
14.
Ikbal M.S., Ramadoss V., Zoppi M. Dynamic Pose Tracking Performance Evaluation
of HTC Vive Virtual Reality System // IEEE Access. 2020. V. 9. P. 3798-3815.
https://doi.org/10.1109/ACCESS.2020.3047698
15.
Vieten M.M., Weich C. The Kinematics of Cyclic Human Movement // PloS one.
2020. V. 15. No. 3. P. 0225157. https://doi.org/10.1371/journal.pone.0225157
82
16.
Alamdari A., Krovi V.N. A Review of Computational Musculoskeletal Analysis of
Human Lower Extremities // Human Modelling for Bio-Inspired Robotics.
2017.
P. 37-73. https://doi.org/10.1016/B978-0-12-803137-7.00003-3
17.
Goncalves G., Melo M., Barbosa L., Vasconcelos-Raposo J., Bessa M. Evaluation of
the Impact of Different Levels of Self-representation and Body Tracking on the Sense
of Presence and Embodiment in Immersive VR // Virtual Reality. 2021. P. 1-14.
https://doi.org/10.1007/s10055-021-00530-5
18.
Souza G.S.D.S.E., Rodrigues F.B., Andrade A.O., Vieira M.F. A Simple, Reliable
Method to Determine the Mean Gait Speed Using heel Markers on a Treadmill //
Computer Methods in Biomechanics and Biomedical Engineering.
2017. V. 20.
No. 8. P. 901-904. https://doi.org/10.1080/10255842.2017.1309395
19.
Caramenti M., Lafortuna C.L., Mugellini E., Abou Khaled O., Bresciani J.P.,
Dubois A. Matching Optical Flow to Motor Speed in Virtual Reality While Run-
ning on a Treadmill // PloS one. 2018. V. 13. No. 4. P. e0195781.
https://doi.org/10.1371/journal.pone.0195781
20.
Mombaur K., Clever D. Inverse Optimal Control as a Tool to Understand Hu-
man Movement // Geometric and Numerical Foundations of Movements.
2017.
P. 163-186. https://doi.org/10.1007/978-3-319-51547-2 8
21.
Spence A.J., Nicholson-Thomas G., Lampe R. Closing the Loop in Legged Neurome-
chanics: an Open-source Computer Vision Controlled Treadmill // J. Neuroscience
Methods. 2013. V. 215. No. 2. P. 164-169.
https://doi.org/10.1016/j.jneumeth.2013.03.009
22.
Karpushkin S., Dedov D., Siukhin A., Kolodin A., Volkov A. Structural Model of
Software and Hardware Platform for the Training Complex Based on a Controlled
Treadmill // Int. Multidisciplinary Scientific GeoConference: SGEM. 2020. V. 15.
No. 1.3. P. 613-619. https://doi.org/10.5593/sgem2019/1.3/S03.078
23.
Koerner L.J., Caswell T.A., Allan D.B., Campbell S.I. A Python Instrument Control
and Data Acquisition Suite for Reproducible Research // IEEE Trans. on Instru-
mentation and Measurement. 2019. V. 69. No. 4. P. 1698-1707.
https://doi.org/10.1109/TIM.2019.2914711
24.
Egger J., Gall M., Wallner J., Boechat P., Hann A., Li X., Schmalstieg D. HTC
Vive MeVisLab Integration via OpenVR for Medical Applications // PloS one. 2017.
V. 12. No. 3. P. e0173972. https://doi.org/10.1371/journal.pone.0173972
25.
Yim A., Chung C., Yu A. Matplotlib for Python Developers: Effective Techniques
for Data Visualization with Python // Packt Publishing Ltd, 2018. 300 p.
Статья представлена к публикации членом редколлегии А.И. Михальским.
Поступила в редакцию 03.08.2021
После доработки 15.11.2021
Принята к публикации 20.11.2021
83