Jump to content

ВРПН

Периферийная сеть виртуальной реальности
Разработчик(и) ReliaSolve
Написано в С++ , Питон , Ява
Тип Промежуточное программное обеспечение виртуальной реальности
Веб-сайт github /vrpn /vrpn /неделя

VRPN (периферийная сеть виртуальной реальности) — это независимый от устройства сетевой интерфейс для доступа к периферийным устройствам виртуальной реальности в приложениях VR. Первоначально он был разработан и реализован Расселом М. Тейлором II на факультете компьютерных наук Университета Северной Каролины в Чапел-Хилл . VRPN поддерживался Sensics. [1] пока это был бизнес. В настоящее время он поддерживается ReliaSolve и разрабатывается в сотрудничестве с продуктивным сообществом участников. Более подробно оно описано на vrpn.net и в VRPN-VRST . [2]

Цель VRPN — предоставить унифицированный интерфейс для устройств ввода, таких как трекеры движения или джойстики . Он также обеспечивает следующее:

  • Метка времени данных
  • Множественный одновременный доступ к периферийным устройствам
  • Автоматическое переподключение вышедших из строя серверов
  • Хранение и воспроизведение сессий

Система VRPN состоит из программных интерфейсов как для клиентского приложения, так и для драйверов оборудования, а также серверного приложения, которое взаимодействует с аппаратными устройствами. Клиентские интерфейсы написаны на C++, но обернуты C#, Python и Java.

Типичным применением VRPN является кодирование и отправка 6DoF данных захвата движения по сети в режиме реального времени.

Клиент VRPN может установить соединение с сервером VRPN (устройством, предоставляющим данные) двумя способами: либо через TCP (надежный, но менее эффективный), либо через UDP (ненадежный, но с меньшей задержкой и более эффективный). «Ненадежный» режим обычно предпочтительнее, когда задержка имеет решающее значение.

В «ненадежной» последовательности инициализации соединения используются протоколы TCP и UDP. Это работает следующим образом: [3]

  1. клиент открывает TCP- сокет для прослушивания произвольного порта;
  2. клиент отправляет номер порта этого сокета вместе с именем своего компьютера в дейтаграмме UDP, направленной на известный порт сервера VRPN (по умолчанию — 3883);
  3. сервер открывает TCP-соединение с клиентом по номеру порта, указанному на шаге 2;
  4. если TCP-соединение установлено, каждое устройство сообщает другому поддерживаемую версию VRPN;
  5. если версии несовместимы, соединение разрывается;
  6. в противном случае каждое устройство начинает прослушивать новый порт UDP (отличный от тех, которые использовались ранее) и отправляет номер порта другому устройству, используя ранее созданное TCP-соединение;
  7. с этого момента все данные передаются через два порта UDP, открытые на шаге 6.

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

Однако «ненадежный» протокол инициализации соединения не соблюдает строгий принцип разработки многоуровневого протокола, поскольку полезная нагрузка VRPN уровня приложения пропускает информацию о нижних уровнях сетевого стека, а именно имена компьютеров и номера портов TCP/UDP. Из-за такого выбора конструкции невозможно установить соединение VRPN между двумя устройствами, подключенными через NAT : маршрутизатору необходимо будет транслировать не только информацию уровня 3 в заголовках пакетов, но также ссылки на IP-адреса и номера портов. внутри полезной нагрузки VRPN.

Чтобы решить эту проблему, VRPN предлагает [4] второй «надежный» режим инициализации соединения только TCP, который представляет собой стандартное взаимодействие TCP-сервер-клиент : сервер VRPN прослушивает известный TCP-порт, и клиент инициирует соединение. В этом режиме все данные передаются по одному и тому же TCP-соединению, и соединение UDP не требуется.

Поддерживаемые устройства

[ редактировать ]

Трекеры (в алфавитном порядке)

[ редактировать ]
  • Широкозонный трекер 3rdTech HiBall-3000 (ранее — потолочный трекер UNC).
  • Антилатентная система позиционного слежения.
  • Системы оптического слежения ART, включая Flystick2 и Flystick3. Принимающий код является частью стандартного исходного дистрибутива.
  • Аналоговые устройства, используемые в качестве трекера (Magellan, CerealBox с подключенными джойстиками, Radamec SPI, Mouse, ...).
  • Трекер ARToolkit VRPN, доступный в Университете Лос-Андес.
  • Стая птиц Вознесения (либо через один последовательный порт, либо с подключением каждого датчика к своему последовательному порту). Этот драйвер (и другие драйверы трекера) сбрасывает трекер в случае отключения питания, последовательного отключения или других ошибок. Использование этого драйвера в Nest of Birds [ необходимо определение ] сгорит схема привода передатчика.
  • Кнопочные устройства, используемые в качестве телепортов или трекеров (Global Haptics GeoOrb,...).
  • Акселерометр Crossbow RGA300 с последовательным интерфейсом.
  • Устройства GameTrak.
  • Иммерсионный микрописец.
  • Инерционная мышь и мышь для событий от Университета Баухаус в Веймаре.
  • InterSense IS-600 и IS-900 (с использованием расширенного интерфейса Fastrak на любой архитектуре).
  • 3D мышь Логитек.
  • Microsoft Kinect (доступны два разных сервера VRPN.)
  • Motion Analysis Corporation (VRPN-сервер встроен в сервер продавца)
  • Устройство инерциального слежения MotionNode.
  • Оптическая система слежения NDI Polaris.
  • Novint . Устройство с силовой обратной связью
  • OptiTrack Motive (ранее были инструменты отслеживания NaturalPoint OptiTrack) (сервер VRPN встроен в сервер поставщика).
  • Трекер Origin Systems DynaSight (с пассивным отражателем). Этот драйвер также поддерживает более старый трекер стереодисплея SeeReal D4D.
  • OSVR Hacker Комплект разработчика
  • Другие трекеры InterSense (с использованием собственной библиотеки InterSense, даже на базе USB); В настоящее время в списке адресов электронной почты VRPN обсуждается, будет ли информация о положении и ориентации возвращаться последовательно при использовании этого интерфейса.
  • PS-Tech . Система оптического слежения
  • Система отслеживания PhaseSpace.
  • ПНИ СпейсПойнт.
  • Трекер Polhemus Fastrak и трекеры 3Space на нескольких архитектурах, трекер Liberty и LibertyHS как минимум под Linux. Трекер Патриот поддерживается с помощью драйвера Liberty. G4 Powertrack.
  • Razer Hydra . Игровой контроллер
  • Устройство силовой обратной связи Sensable Technologies PHANToM.
  • Трекер Sensics dSight.
  • Трекер Sensics zSight.
  • GPS-устройство с последовательным портом.
  • Vicon (VRPN-сервер встроен в сервер производителя).
  • Точка обзора Eye tracker.
  • Магнитная система слежения Wintracker III от Virtual Realities Ltd.
  • WorldViz Precision Position Tracker PPT 1.2.
  • Датчик 3Space от Yost Labs (и беспроводные датчики 3Space).
  • zSpace иммерсивная интерактивная аппаратно-программная платформа (VRPN-сервер, встроенный в сервер вендора).

Другие устройства (перечислены в алфавитном порядке)

[ редактировать ]
  • 3DConnexion SpaceNavigator, SpaceExplorer, Spacemouse Pro, Navigator for Notebooks, SpaceTraveler и SpaceMouseWireless (кнопки и дифференциальный аналог с 6 степенями свободы).
  • Трекер перчаток 5DT (аналоговое устройство с пятью значениями пальцев плюс шаг и крен). Кроме того, поддерживается перчатка 5DT16 и драйвер для преобразования 16 аналоговых значений в нажатия кнопок.
  • Системы B&G. Контроллеры кнопок/дисков/ползунков/джойстиков CerealBox, подключаемые к любому серверному компьютеру.
  • Система терморегулирования инструментов для биологических наук.
  • Продукты CH
  • Джойстики с поддержкой DirectInput (включая джойстики с принудительной обратной связью) в Windows (см. инструкции). Кроме того, DirectInput включил пакеты Rumble в Windows.
  • USB-ударная установка Dream Cheeky.
  • Голограммные устройства Euclideon Holographics (стол с голограммами, комната с голограммами, стена с голограммами).
  • Fraunhofer IMK ADBox и Fakespace Cubic Mouse.
  • Global Haptics GeOrb (кнопки и аналоги).
  • Приводы Haydon-Kerk IDEA, контроллеры линейного движения.
  • Устройства Freespace от Hillcrest Labs .
  • Джойстиковые контроллеры: Contour ShuttleXpress, Futaba InterLink Elite, Griffin PowerMate, Logitech Extreme 3D Pro, Saitek ST290 Pro, Microsoft SideWinder Precision 2, Microsoft SideWinder, Microsoft Xbox S (необработанный контроллер на всех операционных системах), Microsoft Xbox 360 (необработанный контроллер на всех операционных системах) все операционные системы), Afterglow Ax1 для Xbox 360 (необработанный контроллер на всех операционных системах).
  • Клавиатура в Windows.
  • Контроллеры движений Logitech Magellan и Spaceball 6DOF с кнопками (включая Spaceball 5000).
  • LUDL XY проходит через LibUSB.
  • Мышиные устройства в Linux (при входе в консоль) и Windows.
  • National Instruments . Аналого-цифровые карты
  • Nintendo Wii Remote (также выполняет функцию трекера).
  • Драйвер последовательного порта NRL ImmersionBox (поддержка только кнопок).
  • Другие джойстики на Windows.
  • Джойстики для ПК под управлением Linux.
  • Трекер видео/кинокамеры Radamec с последовательным интерфейсом (немасштабируемый зум/фокус, непроверенная база движения).
  • Ретролинк GameCube.
  • Последовательные мыши: кнопки на нескольких типах последовательных мышей, подключенных к последовательному порту.
  • Кнопка SGI и поля набора номера (на SGI или других машинах).
  • Totally Neat Gadget (TNG) от MindTel (кнопки и аналоги).
  • Игровой контроллер Xbox 360.
  • Ручной контроллер UNC (или любое устройство, имеющее до 5 кнопок; можно подключить к параллельному порту на компьютере Linux или Windows — его использование не рекомендуется, вместо этого используйте TNG3).
  • Аналоговое/кнопочное устройство Wanda.
  • Звуковые серверы Win32 на основе Miles SDK (устарело), ​​звукового оборудования AuSIM и Microsoft DirectSound.
  • Устройства XKeys от PI Engineering: Desktop, Professional, Jog&Shuttle, Joystick и ножная педаль.
  • Элементы линейного позиционирования Zaber.com.
  1. ^ Чувствительность http://sensics.com
  2. ^ Тейлор, Рассел (15–17 ноября 2001 г.). «ВРПН» . Материалы симпозиума ACM по программному обеспечению и технологиям виртуальной реальности . стр. 55–61. дои : 10.1145/505008.505019 . ISBN  9781581134278 . S2CID   1487053 .
  3. ^ vrpn: Использование vrpn_Connection — Официальный репозиторий GitHub , Периферийная сеть виртуальной реальности, 19 февраля 2018 г. , получено 20 февраля 2018 г.
  4. ^ vrpn: Устранение неполадок VRPN — Официальный репозиторий GitHub , Периферийная сеть виртуальной реальности, 19 февраля 2018 г. , получено 20 февраля 2018 г.
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: ddae92214798aa1d92b2909f96d90a6f__1700933100
URL1:https://arc.ask3.ru/arc/aa/dd/6f/ddae92214798aa1d92b2909f96d90a6f.html
Заголовок, (Title) документа по адресу, URL1:
VRPN - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)