Моделирование и визуализация трехмерных виртуальных пультов управления в тренажерах

М.В. Михайлюк, М.А.Торгашев

НИИ системных исследований РАН, Москва, Россия

mix@niisi.ras.ru, mtorg@mail.ru

 

Оглавление

1. Введение

2. Создание и визуализация трехмерных пультов

3. Моделирование интерактивного воздействия на элементы управления

4. Вычисление управляющих сигналов

5. Заключение

Список литературы


Аннотация

В статье рассматривается технология моделирования и визуализации трехмерных виртуальных пультов с использованием элементов виртуальной реальности. Технология включает создание пультов с помощью системы трехмерного моделирования 3D Studio MAX, визуализацию в стереорежиме, моделирование воздействия пользователя на элементы управления, моделирование движения этих элементов в результате воздействия, а также создание и расчет функциональной схемы пульта управления.

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

 

Ключевые слова:виртуальные пульты управления, визуализация, виртуальная реальность, тренажеры

 

1. Введение

 

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

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

Двумерные виртуальные пульты управления достаточно распространены. Это и виртуальные микшерные пульты для работы с музыкой, виртуальные пульты электронных очередей в банках и социальных службах, виртуальные пульты на планшетах или мобильных телефонах для управления телевизором или другими бытовыми приборами и т.д. Двумерные пульты используются также в компьютерных симуляторах, обучающих и тренажерных системах. Примерами могут служить авиа симуляторы, в которых кабина летчика содержит виртуальный пульт, тренажер оператора прокатного стана, созданный ООО «Большие системы» с использованием движка Unity3D и др. Исследования в области 3D интерфейса также активно ведутся в настоящее время. Одним из типов таких интерфейсов являются трехмерные пульты управления, которые предполагают использование технологий виртуальной реальности. В НИИСИ РАН разработан комплекс моделирования и визуализации 2D и 3D виртуальных пультов управления. Двумерные пульты описаны в [2], в настоящей работе мы предлагаем технологию работы с 3D виртуальными пультами управления.

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

 

2. Создание и визуализация трехмерных пультов

 

В общем случае пульт управления содержит подложку, управляющие элементы различных типов (кнопки, тумблеры, джойстики, переключатели, регуляторы и т.д.) сигнальные лампочки, информационные транспаранты и другие элементы. Трехмерные пульты управления можно создавать в любой системе трехмерного моделирования. Мы выбрали для этой цели систему 3D MAX, однако это не существенно, так как из любой другой системы виртуальную сцену можно конвертировать в систему 3D MAX. Если моделируется реальный пульт управления, то для построения модели естественно использовать текстуры, полученные из фотографий пульта и его отдельных элементов. Если создается новый пульт, то его состав и оформление определяется задачами, для которых он предназначен. При этом возможна постановка задачи исследования эргономики пульта. Например, при нажатии на кнопку рука оператора может закрывать соответствующую сигнальную лампочку, что неудобно. Естественно, элементы управления необходимо создавать как отдельные трехмерные объекты, которые могут осуществлять движение при воздействии на них.

В общем случае сцена, содержащая трехмерный пульт, имеет иерархическую структуру и представляет собой дерево, состоящее из множества узлов. Каждый узел соответствует некоторому объекту, виртуальной камере или источнику освещения сцены, и в нем хранятся значения параметров, позволяющих однозначно вычислить все геометрические и визуальные характеристики этого объекта. Кроме визуального представления объектов на этапе создания сцены необходимо также задать их динамические характеристики, а также вспомогательные объекты, в частности, так называемые аппроксимирующие контейнеры, которые используются для определения столкновений. Для этого в систему 3D моделирования интегрируется специальный модуль расширения (Plug-in), который позволяет также описать специфические элементы виртуальных пультов, такие как кнопки, тумблеры, регуляторы. После создания сцены, включающей виртуальный пульт, она экспортируется в формат, поддерживаемый системой визуализации.

 

interior4

Рис. 1. Модель пульта управления модуля СО-1

 

Визуализация 3D пультов осуществляется с помощью системы визуализации трехмерных виртуальных сцен. Мы используем для этой цели разработанную в НИИСИ РАН систему «GLView» [3]. Данная система обладает широким списком возможностей по высокореалистичной визуализации трехмерных сцен в режиме реального времени. В частности, она поддерживает моделирование сложных материалов с эффектами отражений, прозрачности, микрорельефа поверхностей, моделируются тени, включая мягкие, реализован стереорежим с поддержкой нескольких стереоформатов. Для динамических объектов, которые ведут себя предопределенным образом, поддерживается их анимация на основе технологии ключевой анимации, а также морфинг и скелетная деформация. На рис. 1 показан пример визуализации пульта управления космического модуля СО-1.

 

3. Моделирование интерактивного воздействия на элементы управления


Воздействие на элементы управления 3D пульта можно осуществлять несколькими способами. Самый простой способ – с помощью компьютерной мыши. При наведении курсора мыши на объект-элемент управления можно определить, что это за объект, а затем по направлению движения мыши и способу нажатия ее кнопки (одиночное, двойное, нажатие с перемещением и т.д.) понять тип воздействия [2].

Другим способом является воздействие на виртуальный элемент управления с помощью другого виртуального объекта. Обычно этим объектом является виртуальная рука оператора, манипулятора или робота. На рис. 2 показан пример нажатия на кнопку виртуальной рукой, которая повторяет движения реальной руки оператора, а на рис. 3 – пальцем робота, управляемого оператором с помощью экзоскелета (см. [1]). В этом случае для обработки воздействия на элемент управления необходимо задействовать обработку коллизий, т.е. пересечений виртуального пальца с виртуальным элементом управления.

 

virthand

Рис. 2. Нажатие на кнопку пульта управления виртуальной рукой

 

int_sar401_04

Рис. 3. Нажатие на кнопку пульта управления роботом – андронавтом


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

 

Рис. 4. Ограничивающие параллелепипеды пальцев руки и тумблера


Третий способ воздействия на элементы управления использует технологию виртуальной реальности, включающую стерео режим визуализации, систему трекинга и компьютерные перчатки. В стерео режиме с использованием стерео очков оператору кажется, что пульт управления находится между ним и экраном. Компьютерная перчатка отслеживает положение руки и пальцев оператора в своей системе координат. Совмещая систему координат виртуальной сцены (включающей пульт управления) с системой координат перчатки и, учитывая стерео режим, можно вычислить взаимное положение пальца оператора и элемента управления. Далее, аналогично предыдущему случаю определяется направление движения пальца и факт его коллизии с управляющим элементом. Естественно, что при перемещении головы оператора изображение виртуальной сцены также должно меняться. Для этого используется система трекинга головы, которая в масштабе реального времени определяет положение и ориентацию головы оператора и передает эти данные в систему визуализации. В НИИСИ РАН создана оригинальная оптическая система трекинга, основанная на использовании одной камеры и нескольких светодиодных маркеров, которые крепятся на голове оператора.

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

-   поиск и определение положения маркеров на изображении;

-   выделение конфигурации найденных маркеров и ее идентификация;

-   реконструкция положения маркеров в пространстве исходя из положения этих маркеров на изображении;

-   определение положения и ориентации конфигурации маркеров в системе координат некоторого заданного пространства;

-   передача компонентам тренажерной системы информации о положении и ориентации виртуального объекта.

На рис 5 проиллюстрирована схема оптического трекинга, а на рис. 6 показан пример использования этой технологии.

 

tracking

Рис. 5. Схема оптического трекинга.

 

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

 

DSC02348_2

Рис. 6. Оператор нажимает рукой на виртуальные кнопки

 

Рассмотрим более подробно список поддерживаемых элементов управления и их особенности. В него входят такие элементы, как кнопки, тумблеры, переключатели и регуляторы.

 

button

toggle

a) Кнопка

б) Тумблер

switcher

valve2_

в) Переключатель

г) Регулятор

Рис. 7. Элементы трехмерных пультов

 

Кнопки (рис. 7, а) по количеству возможных положений можно классифицировать на однопозиционные и двухпозиционные. Однопозиционные кнопки могут занимать только одно неподвижное положение в свободном от воздействия состоянии. Их нажатие, как правило, сигнализирует о выполнении определенной команды, например, запуск какого-либо процесса. Двухпозиционные кнопки могут находиться в двух положениях – нажатом или отжатом. Обычно их функциональность основана на выполнении двух противоположных операций, например, включение – выключение или запуск – остановка. Динамические характеристики кнопки включают ее тип, жесткость пружины, а также крайние положения, задаваемые ограничителем.

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

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

Регулятор (рис 7, г) – это устройство, предназначенное для плавного изменения некоторого параметра. Устройство представляет ручку, обычно имеющую форму, близкую к цилиндрической. Поворот по/против часовой стрелке приводит к увеличению/уменьшению некоторой величины, управляемой этим регулятором.

Рассмотрим для примера динамику движения кнопок. Можно выделить три состояния движения однопозиционной кнопки: 1) свободное состояние (нет внешней силы); 2) процесс нажатия под действием внешней силы; 3) процесс отжатия (присутствует внешняя сила). При отсутствии какого-либо внешнего  воздействия кнопка находится в свободном состоянии. В этом состоянии кнопка либо имеет неподвижное положение (Рис. 8, а), либо движется под действием сил упругости Fy. Появление внешней силы F со стороны объекта воздействия может привести к нажатию кнопки и к ее переходу во второе состояние. Перемещение вследствие действия силы  F (Рис. 8, б) может продолжаться до тех пор, пока кнопка не достигнет предельного положения, где она упирается в ограничитель. При достижении ограничителя внутренний механизм сгенерирует сигнал нажатия. В этот момент кнопка условно переходит в состояние отжатия, и будет находиться в нем до тех пор, пока объект воздействия соприкасается с ней. При потере контакта внешнего объекта с кнопкой ее состояние меняется на свободное. Если в этот момент сила упругости Fу не будет уравновешена силами отталкивания Fот упора, то кнопка приобретет ускорение, которое переместит ее в исходное положение, где она остановится под воздействием сил отталкивания. Для двухпозиционной кнопки можно выделить шесть состояний движения: 1) свободное состояние в первой позиции; 2) нажатие в первой позиции; 3) отжатие во второй позиции; 4) свободное состояние во второй позиции; 5) нажатие во второй позиции; 6) отжатие в первой позиции. Реализация нажатия двухпозиционной кнопки в виртуальном пространстве повторяет реализацию для однопозиционной кнопки, но с учетом перечисленных шести состояний и двух позиций. Аналогичным образом описывается и вычисляется динамика других элементов управления.

 

Рис. 8. Динамика движения кнопки

 

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

 

4. Вычисление управляющих сигналов


Результатом работы виртуального пульта в каждый момент времени является вектор управляющих сигналов, которые затем можно передать (через файл или по сети) в объекты управления. Например, при управлении электрическим двигателем с помощью регулятора управляющим сигналом может быть величина напряжения, подаваемая на этот двигатель. Для вычисления управляющих сигналов пульта управления используются так называемые функциональные схемы. Функциональная схема состоит из функциональных блоков, имеющих некоторое число входов и некоторое число выходов. Каждый блок реализует одну или несколько функций. Это могут быть арифметические функции (сумматор, произведение, квадратный корень и т.д.), логические (конъюнкция, дизъюнкция, сравнение и т.д.), тригонометрические (синус, арктангенс и т.д.), цифровые (триггеры, мультиплексоры и т.д.), формирователи (генераторы сигналов, мультивибраторы, таймеры и т.д.), динамические (дифференциатор, интегратор, апериодическое звено, задержка, нелинейный элемент и т.д.) и другие функции. Для создания функциональной схемы предназначен специально разработанный интерактивный редактор.

Разработанный редактор позволяет выбрать нужный блок из соответствующей библиотеки и «перетащить» его с помощью компьютерной мыши в нужное место поля редактора. После этого можно задать параметры блока (например, число входов, начальное значение и т.д.), а также с помощью мыши соединить линиями входы и выходы блока соответственно с выходами и входами других блоков (при этом возможно образование циклов). Оставшиеся неприсоединенными входы (выходы) блоков будут являться входами (выходами) схемы. Входы схемы далее присоединяются к элементам управления пульта, а выходы – к исполнительным элементам (например, к электрическим двигателям, мембранам, электромагнитам и т.д.). В процессе проектирования можно заменить созданную функциональную схему пиктограммой макроблока и использовать его в редакторе как составную часть более сложной схемы. Сами блоки, а также их входы и выходы в редакторе имеют всплывающие подсказки, что позволяет получить краткую информацию о них. Все это в целом позволяет быстро разрабатывать, анализировать и выявлять ошибки функционирования структурной схемы системы управления. При создании и модификации схемы поддерживается ее масштабирование и прокрутка, что повышает удобство работы. На рис. 9 показан пример создания функциональной схемы в редакторе.

 

PID-work-01

Рис. 9. Редактор функциональных схем

 

Находясь в каком-либо состоянии, каждый элемент управления генерирует управляющий сигнал. Например, включенная кнопка может генерировать целочисленную единицу, а выключенная – целочисленный ноль. Ползунок или регулятор могут генерировать вещественное число от 0 до 1, показывающее положение ползунка (регулятора) относительно начальной позиции. Управляющие сигналы от всех элементов управления попадают на входы функциональной схемы, которая производит вычисление значений на своих выходах. Эти значения (как было отмечено выше) передаются в подсистему динамики для управления динамическими объектами. Кроме этого, при получении сообщений об определенных событиях (событии нажатия на виртуальную кнопку, переключения тумблера и т.д.) могут формироваться высокоуровневые команды для подсистемы визуализации. К ним могут относиться команды запуска анимации, изменения свойств объектов (видимость, положение, скорость и т.п.), проигрывания звуковой дорожки и т.д.

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

 

5. Заключение

 

В работе предложена технология создания и работы с 3D виртуальными пультами управления, включающая создание виртуального пульта с помощью системы моделирования 3D Studio MAX, визуализацию пульта в стерео режиме, моделирование воздействия оператора (с помощью компьютерной перчатки и системы трекинга) на элементы управления, создание функциональной схемы пульта и ее расчет (вычисление управляющих сигналов) в масштабе реального времени. Данная технология реализована в виде программных модулей, встроенных в комплекс тренажерных средств управления сложными динамическими системами, разработанный в НИИСИ РАН.

 

vyhod2_4

Рис. 10. Иллюстрация работы тренажерного комплекса «Выход-2»

 

Результаты данной работы были использованы и реализованы в тренажерном комплексе «Выход-2», который предназначен для подготовки космонавтов к выходу в космос из космической станции через шлюзовой отсек. Целью тренажерного комплекса является визуальное ознакомление оператора со штатным оборудованием отсека, а также обучение оператора этапам процесса шлюзования. В процессе тренировки формируется трехмерное изображение штатного оборудования, коммуникаций, выходного люка и органов управления, расположенных в шлюзовом отсеке МКС с учетом  кинематики подвижных частей оборудования, а также логики их функционирования. Окружающая обстановка при этом соответствует меняющемуся местоположению оператора на борту с учетом произвольной  ориентации  оси  зрения  и воспроизводится в реальном масштабе времени. Данный комплекс с успехом используется в ФГБУ «НИИ ЦПК им. Ю.А.Гагарина» для тренировок космонавтов. Иллюстрация работы тренажерного комплекса представлена на рисунке 10.

 

Список литературы

 

1.      Бурдин Б.В., Михайлюк М.В., Сохин И.Г., Торгашев М.А. Использование виртуальных 3D-моделей для экспериментальной отработки бортовых полетных операций, выполняемых с помощью антропоморфных роботов. Робототехника и техническая кибернетика, № 1, 2013, стр. 42 - 46.

2.      Михайлюк М.В. Двумерные виртуальные пульты управления в тренажерных комплексах. Программная инженерия, № 5, 2014, с. 20-25

3.      М.В.Михайлюк, М.А.Торгашев. Система «GLVIEW» визуализации для моделирующих комплексов и систем виртуальной реальности. Вестник Российской академии естественных наук, №2, 2011, – стр. 20-28.

 


 

Modeling and visualization of 3D virtual consoles in simulators

 

M.V. Mikhaylyuk, M.A. Torgashev

 

Institute for System Analysis, Russian Academy of Sciences, Moscow , Russia

 

mix@niisi.ras.ru, mtorg@mail.ru

 

Abstract

The article discusses the technology of modeling and visualization of three-dimensional virtual consoles using elements of virtual reality. The technology includes the creation of panels with the help of three-dimensional modeling system 3D MAX, stereo visualization, modeling the user impact on the consoles elements, motion simulation of these elements as a result of the impact, as well as the creation and calculation of functional circuits.

The developed technology allows to perform such tasks as modeling of real consoles of complex dynamic systems and the development of new consoles with their ergonomic study. Interaction with the elements of consoles is implemented in several ways: using a computer mouse, using the virtual hand and by he real hand of the operator in stereo mode using a tracking system and computer gloves. While interacting the collisions are monitored and the dynamics of virtual objects is calculated according to their characteristics. There are supported following  elements of 3D consoles: buttons, toggles, switches and regulators. As a result of interaction the control signals to actuators are generated using functional circuits. Specially designed interactive editor allows to build complex control circuits from an extensive library of function blocks that implement various functions.

Keywords: virtual remote consoles, visualization, virtual reality, simulators.

 

References

1.      Burdin B.V., Mihajljuk M.V., Sohin I.G., Torgashev M.A. Ispol'zovanie virtual'nyh 3D-modelej dlja jeksperimental'noj otrabotki bortovyh poletnyh operacij, vypolnjaemyh s pomoshh'ju antropomorfnyh robotov [The use of virtual 3D-models for experimental testing of onboard flight operations performed by means of anthropomorphic robots]. Robototehnika i tehnicheskaja kibernetika [Robotics and Technical Cybernetics], № 1, 2013, pp. 42 - 46.

2.      Mihajljuk M.V. Dvumernye virtual'nye pul'ty upravlenija v trenazhernyh kompleksah [Two-dimensional virtual control panels in training complexes]. Programmnaja inzhenerija [Software Engineering], № 5, 2014, pp. 20-25.

3.      M.V.Mihajljuk, M.A.Torgashev. Sistema «GLVIEW» vizualizacii dlja modelirujushhih kompleksov i sistem virtual'noj real'nosti [VISUALIZATION SYSTEM «GLVIEW» FOR SIMULATION COMPLEXES AND VIRTUAL REALITY SYSTEMS]. Vestnik Rossijskoj akademii estestvennyh nauk [Journal of Russian Academy of Natural Sciences], №2, 2011, – pp. 20-28.