Waiting
Login processing...

Trial ends in Request Full Access Tell Your Colleague About Jove
Click here for the English version

Behavior

Rotación controlada de observadores humanos en un entorno de realidad virtual

Published: April 21, 2022 doi: 10.3791/63699

Summary

La rotación física controlada de un observador humano es deseable para ciertas aplicaciones experimentales, recreativas y educativas. Este documento describe un método para convertir una silla giratoria de oficina en un medio para la rotación física controlada en un entorno de realidad virtual.

Abstract

El bajo costo y la disponibilidad de los sistemas de Realidad Virtual (VR) han apoyado una reciente aceleración de la investigación sobre la percepción y el comportamiento en condiciones más naturalistas, multisensoriales e inmersivas. Un área de investigación que se ha beneficiado particularmente del uso de sistemas de realidad virtual es la integración multisensorial, por ejemplo, la integración de señales visuales y vestibulares para dar lugar a una sensación de automovimiento. Por esta razón, un método accesible para la rotación física controlada de un observador en un entorno virtual representa una innovación útil. Este documento presenta un método para automatizar la rotación de una silla giratoria de oficina junto con un método para integrar ese movimiento en una experiencia de realidad virtual. Utilizando un experimento de ejemplo, se demuestra que el movimiento físico, así producido, se integra con la experiencia visual de un observador de una manera consistente con las expectativas; alta integración cuando el movimiento es congruente con el estímulo visual y baja integración cuando el movimiento es incongruente.

Introduction

Muchas señales se combinan en condiciones naturales para producir una sensación de automovimiento1. Producir tal sentido es un objetivo en muchas aplicaciones de realidad virtual recreativas, de salud y educativas 2,3,4,5, y simplemente comprender cómo se combinan las señales para dar una sensación de automovimiento ha sido un esfuerzo a largo plazo de los neurocientíficos 6,7,8,9,10,11 . Las tres clases más importantes de señales para la percepción del automovimiento son visuales, vestibulares y propioceptivas1. Los tres se combinan de manera congruente durante el movimiento activo natural en el mundo real para proporcionar una sensación robusta y rica de automovimiento. Para comprender el papel de cada clase de señales y tener una idea de cómo se combinan las señales, los investigadores tradicionalmente han privado a los observadores experimentales de una o más señales y / o han colocado señales en conflicto entre sí 1,12. Por ejemplo, para proporcionar señales vestibulares rotacionales en ausencia de señales propioceptivas, un observador puede ser girado pasivamente por una silla motorizada 13,14,15,16. Se ha demostrado que tal movimiento pasivo proporciona señales muy convincentes para el automovimiento17. Las señales visuales controladas proporcionadas por un auricular VR pueden ser congruentes o incongruentes con el movimiento de la silla o ausentes por completo. Las señales propioceptivas se pueden agregar haciendo que el observador gire la silla bajo su propio poder, por ejemplo, empujando la silla con los pies.

Aquí se presenta un método para convertir una silla giratoria de oficina en un medio para rotar físicamente el cuerpo de un observador e integrar ese movimiento en una experiencia virtual visual (y potencialmente auditiva). La rotación de la silla puede estar bajo el control del observador, un programa de computadora u otra persona como el experimentador. La rotación controlada por el observador puede ser pasiva haciendo que la rotación impulsada por el motor sea una función de la posición del controlador de mano del observador o activa apagando la silla y haciendo que el observador gire la silla ellos mismos.

También se presenta una aplicación psicofísica para este sistema de silla / VR. Esta aplicación de ejemplo destaca la utilidad de la rotación pasiva controlada de un observador para comprender cómo interactúan las señales de automovimiento para producir experiencias perceptivas generales. El objetivo específico era obtener información sobre un movimiento inducido por la ilusión visual estudiado durante mucho tiempo18,19. En el movimiento inducido, un objetivo estacionario o en movimiento es perceptualmente "rechazado" lejos de un fondo en movimiento. Por ejemplo, si un punto objetivo rojo se mueve verticalmente hacia arriba contra un campo de puntos azules que se mueve hacia la derecha, el punto objetivo parecerá moverse hacia arriba, como se esperaba, pero también hacia la izquierda, lejos de la dirección del fondo móvil20,21. El objetivo era probar si la repulsión es el resultado de interpretar el movimiento de fondo como causado por el automovimiento22,23.

Si este es el caso, entonces la adición de rotación física que sea consistente con el movimiento visual de fondo debería conducir a una sensación más fuerte de que el movimiento de fondo se debe a la autorrotación a través de un entorno estacionario. Esto, a su vez, debería conducir a una mayor tendencia a restar el movimiento de fondo del movimiento objetivo para obtener el movimiento del objetivo en relación con el mundo estacionario23. Esta mayor tendencia a restar resultaría en una mayor repulsión percibida del objetivo. Se agregó una autorrotación física que era consistente o inconsistente con el movimiento de fondo para probar esto. El sistema presentado aquí permitió el control preciso del movimiento físico y el movimiento visual correspondiente para probar esta hipótesis. En el ejemplo, el movimiento de la silla estaba bajo el control directo del observador utilizando el controlador de mano del sistema VR.

Aunque hay muchos ejemplos de sillas giratorias motorizadas para diversas aplicaciones de realidad virtual en la literatura 24,25,26,27,28,29, los autores desconocen un conjunto conciso de instrucciones para hacer una silla de este tipo e integrarla en una experiencia interactiva de realidad virtual. Hay instrucciones limitadas disponibles para el SwiVRChair29, que es similar en estructura al que se presenta aquí pero que está diseñado con un propósito diferente en mente, es decir, ser impulsado por un programa informático para mejorar la inmersión en un entorno de realidad virtual, donde el movimiento de la silla puede ser anulado por el usuario colocando los pies en el suelo. Dado el gasto desillas disponibles comercialmente 30,31, hacer una "interna" puede ser una opción más viable para algunos investigadores. Para aquellos en esta situación, el protocolo a continuación debe ser de utilidad.

Descripción general del sistema
El protocolo consiste en instrucciones para convertir una silla de oficina en una silla giratoria accionada eléctricamente e integrar el movimiento de la silla en una experiencia de realidad virtual. Todo el sistema, una vez completado, se compone de cuatro partes: los subsistemas mecánico, eléctrico, de software y de realidad virtual. Una fotografía del sistema completo se muestra en la Figura 1. El sistema mostrado fue el utilizado en el experimento de ejemplo.

El trabajo del subsistema mecánico es girar físicamente el eje superior de una silla giratoria a través de un motor. Consiste en una silla de oficina a la que se unen dos cosas: una polea fijada al eje giratorio superior de la silla de oficina y un marco de montaje ajustable unido a la parte fija inferior del eje. Un motor paso a paso eléctrico está unido al soporte, que tiene una polea unida a su eje que se alinea con la polea en el eje superior de la silla de oficina. Una correa acopla la polea del motor a la polea de la silla, lo que permite que el motor haga girar la silla.

El subsistema eléctrico proporciona energía al motor y permite el control electrónico del motor. Consiste en un controlador de motor, una fuente de alimentación para el motor, una placa Arduino para interconectar el controlador con una computadora y una fuente de alimentación para el Arduino (opcional). Una placa Arduino es una placa pequeña popular entre los aficionados y fabricantes profesionales de cualquier cosa electrónica, que contiene un microprocesador programable, controladores, pines de entrada y salida, y (en algunos modelos) un puerto USB (requerido aquí). Todos los componentes eléctricos están alojados en una caja con aislamiento eléctrico modificada a medida. Como se requiere alimentación de red para el transformador que proporciona energía al motor y para la fuente de alimentación Arduino (opcional), y como el motor requiere altos voltajes de funcionamiento, todo menos el trabajo electrónico de bajo voltaje (pasos de protocolo 2.5 a 2.10 a continuación) debe ser realizado por una persona calificada.

El subsistema de software consiste en el software Arduino para programar el Arduino, el software Unity para crear el entorno VR, el software Steam para conducir el sistema VR y Ardity, un complemento de Unity que permite a Unity comunicarse con la placa Arduino. Este software se instaló en una computadora portátil Gygabyte Sabre 15WV8 que ejecuta Microsoft Windows 10 Enterprise para el experimento de ejemplo (Figura 1).

El sistema VR consiste en una pantalla montada en la cabeza (HMD), un controlador de mano y estaciones base para determinar la posición y orientación del HMD y el controlador en el espacio. El sistema VR utilizado para este proyecto fue el HTC Vive Pro (Figura 1).

A continuación se describe el procedimiento para combinar estos componentes para lograr una experiencia virtual que incorpore la rotación física (experimento o de otro tipo) con el movimiento de la silla controlado por el observador a través del controlador de mano o por el anfitrión / experimentador a través de un mouse de computadora o un potenciómetro. La parte final del protocolo consiste en los pasos necesarios para iniciar la experiencia de realidad virtual. Tenga en cuenta que el método para codificar Unity para permitir ensayos y recopilación de datos está más allá del alcance de este manuscrito. Algunos pasos, particularmente para el subsistema mecánico, requieren cierto equipo de taller y un cierto nivel de habilidad. En principio, los métodos presentados pueden ajustarse para adaptarse a la disponibilidad de esos recursos. Se ofrecen alternativas para algunos de los pasos más técnicos.

Subscription Required. Please recommend JoVE to your librarian.

Protocol

ADVERTENCIA: El trabajo eléctrico debe ser realizado por una persona calificada.

1. Procedimiento de configuración del sistema mecánico

  1. Fije la polea principal al eje superior de la silla giratoria.
    1. Retire el eje superior.
      NOTA: Esto generalmente implica colocar la silla de lado y quitar un pasador en la base de la silla que evita que el eje superior se deslice fuera del eje inferior.
    2. Ajuste por fricción de la polea al eje.
      1. Utilice pinzas Vernier para obtener el diámetro del eje. Use un torno para perforar el orificio de la polea para que coincida con el diámetro del eje.
      2. Cree orificios roscados para tornillos que fijarán la polea al eje. Perfore orificios adicionales en el cubo de la polea para hacer un total de 4, haciendo coincidir el diámetro con el de los tornillos. Rosca los orificios con un grifo para que se puedan usar tornillos para fijar la polea al eje, haciendo coincidir la rosca con la de los tornillos.
        NOTA: Una ALTERNATIVA si no es posible crear una rosca es perforar todo el camino a través del cubo de la polea y el eje de la silla, y pasar un perno hasta el final una vez que se haya determinado la colocación correcta de la polea (después del paso 1.4.6).
      3. Deslice la polea sobre el eje de la silla.
      4. Inserte los tornillos libremente (apriete después de alinear las poleas principales y pequeñas).
    3. Coloque la correa de transmisión suelta en el eje superior de la silla (para ajustarla a las poleas principales y pequeñas más adelante).
    4. Vuelva a conectar el eje de la silla superior a la base de la silla.
  2. Conecte el soporte del motor al eje inferior de la silla giratoria.
    1. Fabrique una abrazadera ajustable a la que se puedan conectar los soportes de montaje del motor.
      1. Fabrique los dos componentes correspondientes de la abrazadera, uno para cada lado del eje (que se apretará junto con cuatro pernos). Consulte la Figura 2 para conocer las dimensiones.
      2. Para cada componente, corte el hierro de ángulo de 90° a la longitud. Coloque las 4 hojas por las que correrán los pernos.
      3. Redondee los bordes de cada hoja (barra de metal) para mayor seguridad. Perfore agujeros cerca del extremo de cada barra lo suficientemente grandes como para que los pernos encajen. Haga una curva de 45° en la posición adecuada (puntúe la barra para que la curva sea más precisa). Suelde por puntos cada barra a los orificios angulares del perno de hierro hacia afuera.
        NOTA: ALTERNATIVAMENTE, las hojas pueden estar atornilladas en su lugar, teniendo cuidado de no causar una protuberancia que impida que el hierro angular entre en contacto con el eje de la silla.
    2. Fabrique dos soportes de montaje del motor. Consulte la Figura 3 para conocer las dimensiones. Para cada soporte, perfore dos orificios en la barra para fijarlos a la abrazadera que acabamos de describir. Dobla 90° en la posición adecuada (puntúa la barra para que la curva sea más precisa).
    3. Fije la abrazadera y el soporte en el eje inferior de la silla insertando los 4 pernos a través de los componentes y soportes de la abrazadera y apriete. Asegúrese de que los pernos no estén demasiado apretados si es necesario ajustar el soporte para adaptarse al proceso de alineación en el paso 1.4.6.
  3. Conecte la polea pequeña al eje del motor.
    1. Moler la llave del eje del motor plana (ya no sobresale).
      NOTA: Esto proporcionará una superficie plana contra la cual se puede apretar el tornillo de la polea para evitar el deslizamiento de la polea alrededor del eje del motor.
    2. Perfore el orificio en la polea para que coincida con el diámetro del eje del motor.
    3. Deslice la polea sobre el eje y apriete libremente el tornillo contra la superficie plana del eje.
  4. Conecte el motor al soporte del motor descrito anteriormente.
    1. Prepare cada una de las 4 barras de fijación del motor perforando dos orificios en las posiciones apropiadas (los orificios deben alinearse con los orificios de montaje en el motor). Consulte la Figura 4 para conocer las dimensiones.
    2. Si es necesario para el espacio libre, corte una sección de la parte superior de las dos barras para permitir que la polea en el eje del motor gire libremente (opcional).
    3. Coloque los cuatro pequeños soportes de fijación de la cubierta sobre los cuatro orificios exteriores. Úselos más tarde para colocar la cubierta protectora sobre la correa y las poleas.
    4. Fije libremente las ocho tuercas y pernos, dejando espacio entre las barras superior e inferior para deslizar las barras de soporte de montaje entre ellas.
    5. Deslice las barras de montaje del motor sobre el soporte: cada barra superior por encima de la barra del soporte de montaje y cada barra inferior por debajo.
    6. Coloque y sujete el motor.
      1. Mueva la polea principal, la polea pequeña, o ambas hacia arriba y hacia abajo hasta que las poleas principales y pequeñas estén alineadas horizontalmente. Mueva la abrazadera si es necesario.
      2. Coloque la correa de transmisión sobre las poleas pequeñas y principales.
      3. Deslice el conjunto del motor lejos de la silla hasta que el cinturón esté apretado.
      4. Apriete los 8 pernos de las barras de fijación del motor para asegurar el motor al soporte del motor.
      5. Apriete los pernos de la abrazadera y los tornillos de la polea.
  5. Coloque una cubierta para evitar que algo quede atrapado en el sistema de poleas / correas.
    1. Doble los lados de la cubierta protectora acrílica según la Figura 5.
      NOTA: Una ALTERNATIVA, si no hay un doblador acrílico disponible, es usar una hoja de metal y un doblador de láminas.
    2. Recorte una sección para que quepa alrededor del eje de la silla según la Figura 5.
    3. Perfore los orificios para que coincidan con los orificios de los pequeños soportes de fijación de la cubierta.
    4. Utilice los pequeños pernos de fijación de la cubierta para fijar la cubierta.

2. Procedimiento de configuración del sistema eléctrico

  1. Conecte el interruptor de encendido/apagado y el interruptor de apagado de emergencia a la red eléctrica. Utilice cables nominales de voltaje y corriente adecuados para conectar el conector IEC (conector macho para el cable de alimentación de la red) al interruptor de apagado y encendido / apagado de emergencia en serie (de modo que romper el circuito con cualquiera de los dos cortará la alimentación al resto de los componentes).
    NOTA: Es posible que se requiera soldadura.
  2. Conecte la fuente de alimentación de 5 V CC para el Arduino al interruptor de encendido/apagado (opcional).
    NOTA: Se requiere soldadura y cable con clasificación de red.
  3. Conecte la fuente de alimentación de 48 V CC para el controlador de la silla al interruptor de encendido/apagado en paralelo a la fuente de alimentación de 5 V.
    NOTA: Se requiere cable con clasificación de red.
  4. Realice la configuración adecuada del interruptor DIP para el controlador del motor paso a paso híbrido. Por ejemplo:
    1. Ajuste los interruptores 1-4 a ON, OFF, ON y ON, respectivamente, para 1.600 pulsos por revolución para el motor paso a paso (cuanto mayor sea el número, más fino será el control, pero menor será el límite de la velocidad de rotación dependiendo de la rapidez con la que el Arduino pueda producir pulsos).
    2. Cambie 5 a OFF para la dirección de rotación predeterminada en sentido contrario a las agujas del reloj.
    3. Cambie 6 a ON para el modo de movimiento del punto de accionamiento (PM) en lugar del modo de control de vectores espaciales (o control orientado al campo, FOC).
    4. Ajuste los interruptores 7 y 8 a OFF y OFF para que coincidan con el controlador con el motor de circuito cerrado de 12 NM de la serie 86.
  5. Conecte el controlador del motor paso a paso híbrido a los cables de la fuente de alimentación y del controlador de la silla.
    1. Conecte los cables con la clasificación adecuada de los terminales de salida de la fuente de alimentación de 48 V a la carcasa del conector de entrada de alimentación del controlador del motor e inserte la carcasa.
    2. Conecte los dos cables del motor a través de las carcasas de sus conectores al controlador.
  6. Conecte el Arduino al controlador del motor paso a paso híbrido.
    1. Utilice cables de salto anclados para conectar los terminales PUL+ ("pulso" +), DIR+ ("dirección" +) y ENA+ ("habilitar" +) en la carcasa del conector del controlador del motor a los pines 2, 3 y 5 (números de pin opcionales, pero se indican aquí como ejemplos para usar en todo) en el Arduino.
    2. Utilice cables cortos para conectar los terminales PUL, DIR y ENA de la carcasa del conector del controlador del motor y un cable de salto anclado más largo para conectar ENA- a un pin GND (tierra) en el Arduino.
    3. Inserte la carcasa del conector en el controlador del motor.
  7. Conecte el Arduino a la fuente de alimentación de 5 V CC (opcional). Utilice cables de salto anclados para conectar los pines GND y Vin en el Arduino a los terminales de salida de 5 V de la fuente de alimentación de 5 V.
  8. Conecte el potenciómetro al Arduino. Utilice cables de salto anclados para conectar el GND A1 (un terminal de "entrada analógica") y los pines de 5 V en el Arduino a los tres terminales del potenciómetro.
    NOTA: Se requiere soldadura.
  9. Conecte el interruptor de palanca al Arduino. Conecte el pin 6 y el GND en el Arduino a los dos terminales del interruptor de palanca utilizando cables de salto anclados.
    NOTA: Se requiere soldadura.
  10. Conecte el LED al Arduino.
    1. Suelde la resistencia a un terminal del LED (para bajar el voltaje en el circuito LED).
    2. Conecte los pines 7 y GND en el Arduino al extremo de la resistencia y al otro terminal LED utilizando cables de salto anclados.
      NOTA: Se requiere soldadura.
  11. Aislar y alojar los componentes eléctricos/electrónicos. Consulte la Figura 6 para obtener una imagen de un sistema alojado completo.
    NOTA: Hay muchas maneras de aislar los componentes de alto voltaje del sistema eléctrico, proteger los frágiles componentes electrónicos de daños y contener todos estos componentes en un espacio manejable. A continuación se muestra un método sugerido.
    1. Perfore / corte orificios en el costado de la caja del instrumento para el conector de alimentación IEC, el interruptor principal de encendido / apagado, los dos cables de control del motor, el pequeño interruptor de palanca, el LED, el potenciómetro y el puerto USB del Arduino (haga que este sea grande para permitir que el aire fluya hacia la caja para enfriamiento).
    2. Conecte cada uno de estos componentes utilizando los medios apropiados (por ejemplo, tornillos, pernos, pistola de pegamento caliente).
    3. Cortar orificios de ventilación (uno por encima del ventilador en la fuente de alimentación de 48 V) y un orificio para el interruptor de emergencia en la tapa de la caja; luego, conecte los filtros de ventilación y el interruptor.
    4. Fije el Arduino a la base de la caja utilizando espaciadores y tornillos. Coloque de modo que el puerto USB se alinee con el orificio del puerto USB en la caja.
    5. Conecte las fuentes de alimentación de 48 V y 5 V y el controlador del motor a la base de la caja utilizando bloques de Velcro y espuma.

3. Procedimiento de configuración de VR

  1. Configure el sistema de realidad virtual según las instrucciones del fabricante.

4. Procedimiento de configuración del software

  1. Instale y configure el software Arduino.
    1. Descargue e instale el programa Arduino según las instrucciones del desarrollador.
    2. Conecte el Arduino a la computadora con un cable USB.
    3. En el menú desplegable Herramientas , seleccione el puerto al que está conectada la placa Arduino.
    4. En el mismo menú, seleccione la placa y el procesador adecuados. Asegúrese de que coincida con la placa y el procesador utilizados en la sección 2 anterior, por ejemplo, la placa "Arduino Mega 2560" y el procesador "ATmega2560".
  2. Programe la placa Arduino para permitir la rotación de la silla 1) por medio del potenciómetro y 2) por medio de comandos desde la computadora a través de USB.
    1. Escriba el código que se va a cargar en el procesador Arduino.
      Nota : el código de ejemplo del experimento de ejemplo se incluye en el archivo complementario 1 (nombre de archivo: hybrid_motor_controller.ino).
    2. Tome nota de la velocidad en baudios (argumento del comando Serial.Begin(), por ejemplo, 9.600.
    3. Guarde el código y cárguelo en la placa Arduino usando el botón de carga .
  3. Pruebe que el sistema está funcionando hasta ahora.
    1. Enchufe y encienda el subsistema Eléctrico.
    2. Mueva el pequeño interruptor de palanca a una posición en la que se encienda la pequeña luz indicadora LED.
    3. Gire el potenciómetro para asegurarse de que controla la velocidad y la dirección de la silla.
  4. Instala y configura Steam y SteamVR según las instrucciones del desarrollador.
  5. Instala y configura Unity.
    1. Instala y configura Unity según las instrucciones del desarrollador.
    2. Abre un proyecto de Unity nuevo o existente (elige un tipo, por ejemplo, "3D" que sea apropiado para la aplicación).
    3. Configura SteamVR para usarlo en el proyecto.
      1. Abra el almacén de activos (haga clic en ventana | Tienda de activos).
      2. Busque SteamVR y seleccione SteamVR Plugin.
      3. Haga clic en Agregar a activos.
      4. En Unity, abre el Administrador de paquetes (haz clic en ventana | Gestor de paquetes).
      5. Encuentra SteamVR en la pestaña Mis activos .
      6. Haga clic en Importar y siga las indicaciones para completar la importación.
      7. Haga clic en Aceptar todo si se le pide que realice cambios de configuración.
      8. Importa el equipo de cámara Steam VR a la escena. Busca un nuevo activo llamado Steam VR en la ventana del proyecto en la pantalla del inspector. Abre los prefabricados de Steam VR |.
      9. Arrastre el recurso [Camera Rig] a la jerarquía o ventana de escena para permitir el uso de los auriculares y controladores VR en el juego.
      10. Elimine la cámara principal predeterminada de la jerarquía o escena, ya que interferirá con la cámara SteamVR.
  6. Instale y configure Ardity.
    1. Busca Ardity en Unity Asset Store y selecciónalo para descargarlo (paso 4.5.3.2 anterior).
    2. Actualice el nivel de compatibilidad de la API.
      1. Abra Configuración del proyecto en el menú Edición .
      2. Haga clic en | del jugador Otros ajustes.
      3. Elija .NET 4.X en el menú desplegable nivel de compatibilidad de API.
      4. Salga de Configuración y espere a que desaparezcan los mensajes de error.
  7. Configura el entorno de juego de Unity.
    NOTA: Se requerirán los siguientes pasos mínimos para que el usuario tenga el control de la silla y tenga el movimiento de la silla integrado con su experiencia de realidad virtual.
    1. Cree los objetos y funciones necesarios para la aplicación específica.
      1. Cree objetos haciendo clic en GameObject y seleccionando Objeto 2D u Objeto 3D.
      2. Agregue funcionalidad al objeto creado haciendo clic en el botón Agregar componente en la ventana Inspector del objeto y seleccionando una de las opciones. Seleccione Nuevo script para crear un script de C# similar al del archivo suplementario 3 (nombre de archivo: SetUpTrial.cs).
    2. Importa el script del controlador serie en el juego.
      1. En la carpeta Activos de la ventana Proyecto , abra la carpeta Ardity | Carpeta Scripts .
      2. Arrastre el script SerialController al objeto de juego deseado en la ventana Heredero , por ejemplo, el objeto De juego en segundo plano .
      3. Haga clic en el objeto y desplácese hacia abajo en la lista de componentes en la ventana Inspector para localizar el script SerialController .
      4. Asegúrese de que el nombre del puerto y la velocidad en baudios coincidan con los del programa Arduino establecido en los pasos 4.1 y 4.2 anteriores.
      5. Arrastre el objeto al que se adjunta el script SerialController desde la ventana de jerarquía al cuadro de entrada situado junto a Message Listener en la ventana Inspector.
    3. Escribe e importa el script del controlador de silla en el juego.
      1. En la parte inferior de la ventana Inspector para el mismo objeto de juego, haga clic en Agregar componente y seleccione Nuevo script. Asigne al nuevo script el nombre ChairController.
      2. Escriba el código necesario para tomar los comandos del controlador y el mouse y conviértalos en números para enviarlos a través de USB al Arduino.
        Nota : un ejemplo mínimo del código requerido se incluye en el archivo suplementario 2 (nombre de archivo: ChairController.cs).
      3. Guarde el script.
      4. Rellene los cuadros vacíos de la ventana Inspector . Arrastre el objeto HMD desde la ventana Jerarquía al cuadro de entrada situado junto a Head bajo el script Chair Controller en la ventana Inspector . Del mismo modo, arrastre el objeto Controller (derecha) al cuadro situado junto a Mano.

5. Procedimiento de experimento (o experiencia)

  1. Seleccione el método de entrada.
    Nota : el código ChairController de ejemplo proporcionado hace referencia a un script denominado SetUpTrial donde se establece la variable entera pública inputType (donde inputType 3 es el controlador VR y inputType 4 es el mouse). Esta disposición de script/variable se ha asumido en los pasos a continuación.
  2. Haga clic en el objeto del juego al que se adjunta el script SetUpTrial , por ejemplo, Background.
  3. Desplácese hacia abajo en la ventana Inspector para encontrar las variables públicas del script SetUpTrial .
  4. Establezca inputType en 3 para el controlador VR o 4 para el control del mouse.
  5. Presiona el botón Reproducir en Unity para comenzar la experiencia de realidad virtual con el movimiento controlado por los controladores o el mouse.

Subscription Required. Please recommend JoVE to your librarian.

Representative Results

El objetivo del experimento de ejemplo fue determinar si la adición de rotación física, ya sea congruente o incongruente con el movimiento visual de fondo en una escena, afectaba la dirección percibida de un objetivo en movimiento en esa escena. Se esperaba una diferencia entre el movimiento físico congruente e incongruente basado en la hipótesis de que el movimiento de fondo afecta la dirección del objetivo percibido de acuerdo con la facilidad con que el sistema visual de un participante asigna la causa del movimiento de fondo al automovimiento32,33. Si el fondo y los movimientos físicos eran congruentes, entonces se esperaba una mayor sensación de relación causal y, por lo tanto, una mayor desviación de la dirección objetivo percibida de su dirección real en la pantalla visual.

Un observador controlaba la velocidad de rotación y la dirección de la silla utilizando un controlador de realidad virtual. Cuanto más a la izquierda o a la derecha estaba el controlador desde la dirección orientada del HMD, mayor era la velocidad de rotación. En la condición congruente, si el patrón objetivo, que siempre tenía un componente de movimiento vertical positivo, parecía estar a la deriva hacia la derecha de la vertical, el observador movería el controlador hacia la izquierda. Esto hizo que la silla girara hacia la izquierda (en sentido contrario a las agujas del reloj) y el HMD en el observador girara en sentido contrario a las agujas del reloj, lo que hizo que el fondo de la escena visual se moviera hacia la derecha a la velocidad adecuada (como si fuera un fondo estacionario contra el cual el observador estaba girando, Figura 7A). Este movimiento de fondo hacia la derecha "repelió" el objetivo, agregando un componente de movimiento hacia la izquierda al movimiento del objetivo percibido, como se esperaba por la ilusión de movimiento inducido. La dirección del objetivo fue controlada por la computadora, siempre hacia arriba, pero dando pasos aleatorios en el sentido de las agujas del reloj o en el sentido contrario a las agujas del reloj de su dirección actual a pequeños intervalos regulares (logrando una caminata aleatoria, comenzando en vertical y abarcando los dos cuadrantes superiores del espacio euclídeo). El objetivo del observador era ajustar su propia velocidad y dirección de rotación y, por lo tanto, la velocidad y dirección del fondo, de modo que el movimiento inducido causado por el fondo cancelara exactamente cualquier componente de movimiento hacia la izquierda o hacia la derecha en el objetivo.

En la condición incongruente, el movimiento del controlador hacia la izquierda hizo que la silla girara hacia la derecha (en el sentido de las agujas del reloj) y el fondo se moviera hacia la derecha a través de la rotación HMD en el sentido de las agujas del reloj (Figura 7B). Por lo tanto, el movimiento del controlador hacia la izquierda causó un movimiento de fondo hacia la derecha al igual que en la condición congruente, pero la silla se movió en la dirección opuesta a lo que hizo en la condición congruente, es decir, se movió incongruentemente con el fondo. La rotación hacia la derecha, por ejemplo, fue acompañada por un movimiento de fondo hacia la derecha, que es inconsistente con un observador que gira contra un fondo estacionario.

Una captura de pantalla del estímulo visual se muestra en la Figura 8. Los patrones en cada pequeño elemento de estímulo circular se movían a la misma velocidad y dirección que los otros patrones del mismo objeto (objetivo o fondo) sin que los elementos mismos se movieran, como si cada elemento fuera una ventana estacionaria a través de la cual se pudiera ver el movimiento de un gran objeto subyacente. Esto permitió una sensación de movimiento sin que el objetivo y el fondo se movieran fuera del área de visualización. El área de visualización era un plano situado a 8 m de distancia del observador en la escena virtual y bloqueado en posición relativa al HMD. Los elementos objetivo se encontraban en un anillo con un radio de ángulo visual de 5 °, y los elementos de fondo se dispersaron aleatoriamente en un área de 20 ° x 20 ° en el plano de visualización. La velocidad del objetivo se mantuvo en 6 ° / s, y su dirección varió de -10 ° alrededor a 190 ° (es decir, generalmente permaneció en los dos cuadrantes superiores del espacio euclídeo). La dirección del fondo siempre era horizontal, y la velocidad variaba según la velocidad a la que la cabeza del observador giraba en el sentido de las agujas del reloj o en el sentido contrario a las agujas del reloj. Los datos recopilados continuamente fueron analizados por un método previamente desarrollado en el laboratorio para analizar datos psicofísicos continuos. Este método es una extensión de un enfoque existente para analizar datos de seguimiento continuo33.

La fuerza del efecto de movimiento inducido bajo las condiciones de movimiento congruente e incongruente se representó por el valor del parámetro β en Eq (1):

Equation 1(1)

Donde p es un vector que representa la velocidad objetivo percibida, t representa la velocidad objetivo real y b representa la velocidad de fondo. β controla la medida en que la velocidad de fondo se resta del movimiento objetivo para producir la velocidad objetivo percibida. Cuando un observador está girando en el mundo real, y un objetivo se está moviendo dentro de su campo visual, el movimiento de fondo debe restarse completamente del movimiento del objetivo para obtener el movimiento del objetivo en relación con el mundo estacionario32. Un valor β de 1 es, por lo tanto, propicio con el sistema visual que asigna la causa del movimiento de fondo completamente al automovimiento, y un valor más bajo indica una asignación parcial. Los valores medios de β de nueve observadores para las dos condiciones se muestran en la Figura 9.

Para todos los observadores menos uno, la media β valor disminuyó debido a que la silla se movió incongruentemente con el estímulo visual (aunque el cambio fue significativo para un solo observador, t(4) = 13,6, p = 0,000). Los datos fueron analizados con un ANOVA bidireccional utilizando observador y congruencia como los dos factores. Ambos factores fueron significativos con el observador F (8, 32) = 2,857, p = 0,016 y la congruencia F (1, 32) = 8,236, p = 0,007 indicando una diferencia significativa entre los observadores y un efecto significativo de la dirección de rotación de la silla. El valor de β medio predicho para la condición congruente fue de 1,03 y 0,87 para la condición incongruente. Estos resultados coinciden con las expectativas presentadas anteriormente. Un valor β cercano a 1 para la condición congruente indica una disposición para asignar movimiento de fondo al automovimiento. Un valor significativamente más bajo para la condición incongruente indica una disminución de la disposición para hacerlo. Esto, a su vez, indica que la experiencia de movimiento proporcionada por el presidente coincidió con las expectativas; la silla proporcionó un medio eficaz de dar a los observadores una sensación de movimiento físico de la manera esperada.

Figure 1
Figura 1: Una fotografía del sistema completo. Haga clic aquí para ver una versión más grande de esta figura.

Figure 2
Figura 2: Abrazadera para fijar el motor a la base de la silla. (A) Todo el conjunto de la abrazadera. (B) Dimensiones para el hierro angular y las hojas combinadas. (C) Dimensiones de las hojas. (D) Dimensiones angulares del hierro. Todas las dimensiones en mm. Haga clic aquí para ver una versión más grande de esta figura.

Figure 3
Figura 3: Soporte para fijar el motor a la abrazadera. (A) Montaje. (B) Dimensiones en mm. Abreviatura: dia = diámetro. Haga clic aquí para ver una versión más grande de esta figura.

Figure 4
Figura 4: Fijación del motor al soporte del motor. (A) Cómo fijar las barras de fijación del motor. (B) Dimensiones de la barra de fijación del motor en mm. (C) Cómo fijar los soportes de la cubierta. Haga clic aquí para ver una versión más grande de esta figura.

Figure 5
Figura 5: Fijación de la cubierta. (A) Proceso de fijación de la cubierta. (B) El sistema mecánico completado. (C) Dimensiones de la cubierta en mm. Haga clic aquí para ver una versión más grande de esta figura.

Figure 6
Figura 6: Todos los componentes eléctricos y electrónicos en la caja del instrumento. Tenga en cuenta que la alimentación de 5 V al Arduino está desconectada en esta foto. Haga clic aquí para ver una versión más grande de esta figura.

Figure 7
Figura 7: Una representación esquemática de las acciones del observador y los cambios de silla y escena resultantes durante el experimento. (A) Condición congruente: si el controlador se movió en sentido contrario a las agujas del reloj, la silla también se movió en sentido contrario a las agujas del reloj, y el fondo visual se movió en la dirección opuesta como si fuera una escena estacionaria contra la cual la persona estaba girando. (B) Condición incongruente: la misma que la congruente, excepto que la silla se movió en la dirección opuesta, lo que hace que el movimiento de la silla sea incongruente con el movimiento visual de fondo. En el diagrama, el observador gira en el sentido de las agujas del reloj, y la escena gira aún más en el sentido de las agujas del reloj en relación con el movimiento del observador, lo cual es inconsistente con la experiencia natural. Haga clic aquí para ver una versión más grande de esta figura.

Figure 8
Figura 8: Una captura de pantalla del área que contiene estímulos de movimiento de la pantalla visual. Este plano de imagen 2D se colocó a 8 m de distancia del observador ocupando un área de 35 ° x 35 ° de la escena visual en el entorno de realidad virtual. El anillo objetivo tenía un radio de ángulo visual de 5° y el área de fondo subtendida 20° x 20°. Abreviatura: VR = realidad virtual. Haga clic aquí para ver una versión más grande de esta figura.

Figure 9
Figura 9: Valores beta medios para cada observador en las condiciones congruentes e incongruentes. Para todos los observadores, excepto uno, el valor beta disminuyó para la condición incongruente de silla / movimiento visual, lo que indica una menor probabilidad de ver el movimiento visual de fondo como causado por el movimiento físico del observador. Un ANOVA de 2 vías reveló que el cambio de grupo en el valor beta fue significativo (ver texto para más detalles). Haga clic aquí para ver una versión más grande de esta figura.

Archivo suplementario 1: Ejemplo de código Arduino, hybrid_motor_controller.ino. Haga clic aquí para descargar este archivo.

Archivo suplementario 2: Ejemplo de script de Unity C#, ChairController.cs. Haga clic aquí para descargar este archivo.

Archivo suplementario 3: Ejemplo de script de Unity C#, SetUpTrial.cs. Haga clic aquí para descargar este archivo.

Subscription Required. Please recommend JoVE to your librarian.

Discussion

Este documento presenta un método para agregar rotación automatizada a una silla de oficina bajo el control de un observador o experimentador, y un método acompañante para integrar ese movimiento en una experiencia virtual. Los pasos críticos incluyen la fijación mecánica del motor a la silla, la configuración de la alimentación y el control eléctrico del motor, luego la configuración del Arduino y la computadora para impulsar el controlador del motor. El paso de fijación mecánica requiere algunos equipos y habilidades especializadas, aunque se han sugerido soluciones para las tareas más difíciles. Es posible que se requieran modificaciones adicionales dependiendo de la disponibilidad de hardware.

El trabajo eléctrico de alto voltaje debe ser completado por una persona calificada y, si así lo exige la ley, estar certificado por el organismo correspondiente. El trabajo de bajo voltaje puede ser realizado por una persona con experiencia limitada. Arriba hay instrucciones lo suficientemente específicas como para permitir la reproducción si se utiliza el mismo equipo, pero diferentes equipos requerirán ligeras modificaciones del procedimiento.

El código Arduino se ha proporcionado para complementar la configuración electrónica específica sugerida aquí. Tenga en cuenta que Arduino y otras instrucciones de software proporcionadas funcionan con Arduino versión 1.8.12, SteamVR versión 1.18.7, Unity versión 2020.2.7f1 y Ardity versión 1. Otras versiones de software pueden requerir modificaciones del protocolo.

Una limitación del método es que la aceleración angular necesita ser amortiguada. Un método para hacerlo se proporciona en el código arduino. Esto se debe a que el servo híbrido intentará "ponerse al día" con los pasos perdidos del motor (si la fricción o la inercia impiden que el motor acelere tan rápido como se le indique), lo que puede provocar un exceso y un "rebote" rotacional. Amortiguar los comandos de aceleración provenientes de la computadora es una forma de lidiar con esto; este es el enfoque adoptado en el código de ejemplo proporcionado. Se puede usar un motor de CC cepillado o sin escobillas para aliviar este problema, pero estos motores tienden a tener un par bajo a bajas velocidades, lo que hace que el control de rotación a bajas velocidades sea muy difícil. Los autores probaron por primera vez un motor de CC sin escobillas antes de cambiar al motor paso a paso híbrido.

Existen alternativas al enfoque presentado aquí. Es posible comprar sillas giratorias prefabricadas30 y sillas que se mueven en otras direcciones31, por ejemplo, sillas que hacen pequeños movimientos traslacionales 34,35 o rotacionales 36,37 hasta sillas y jaulas con correas que realizan grandes movimientos multidimensionales 38,39,40 . Estos sistemas generalmente están construidos para aplicaciones recreativas, pero pueden, en principio, adaptarse para realizar experimentos, aunque "desbloquear" el sistema para permitirle trabajar con el software de un experimentador puede resultar difícil en algunas circunstancias. Estos sistemas también tienden a ser caros. Fue, al final, el gasto lo que llevó a los autores a desarrollar su propio sistema. A modo de comparación, el costo del kit utilizado para automatizar el movimiento de la silla de oficina en este proyecto fue de aproximadamente AUD $ 540 (el costo de la computadora portátil, la silla de oficina y el sistema de realidad virtual no incluidos).

Los datos presentados en la sección de resultados representativos indican que el movimiento físico de un observador en la silla motorizada puede tener un impacto significativo en su experiencia de la escena visual. Específicamente, la dirección de giro, congruente versus incongruente, fue un factor altamente significativo en la conducción de los valores de β para el grupo, produciendo un valor de β promedio de 1.03 cuando la silla giró en una dirección congruente con el movimiento visual de fondo y un valor de β significativamente más bajo (0.87) cuando la silla giró incongruentemente. Hubo variaciones en la fuerza del efecto entre los individuos (incluso produciendo el efecto opuesto en un individuo, aunque insignificante). Sin embargo, el cambio promedio causado por el cambio de la dirección de giro fue altamente significativo, como lo revela el ANOVA (p = 0.007). Otro apoyo para la efectividad de la silla es que el valor promedio de β para el grupo en la condición congruente fue cercano a 1 (no significativamente diferente de 1; p = 0.89, prueba t pareada), lo que indica que los observadores estaban, en promedio, viendo la escena visual como si realmente estuvieran girando en el mundo real, restando completamente el movimiento del fondo del movimiento del objetivo para obtener el verdadero movimiento del objetivo en relación con el mundo estacionario.

Las aplicaciones experimentales para el método presentado aquí son expansivas, dado el creciente interés en la experimentación mediada por realidad virtual. Siempre que sea deseable el movimiento rotacional automatizado en un entorno virtual, el método es aplicable. La silla proporciona señales rotacionales vestibulares y kinestésicas pequeñas, como señales de presión, vibracionales e inerciales. Controlar tales señales es importante para comprender los mecanismos del sentido del automovimiento y para comprender cómo las señales vestibulares generalmente se integran con otras señales sensoriales. El experimento de ejemplo indica que las señales físicas proporcionadas por la silla se combinan con señales visuales para producir una interpretación de la escena, es decir, la dirección percibida del objetivo, que es consistente con la experiencia del mundo real cuando las señales son congruentes e inconsistentes cuando no lo son.

Subscription Required. Please recommend JoVE to your librarian.

Disclosures

No hay conflictos de intereses.

Acknowledgments

Este trabajo fue apoyado por las subvenciones del Consejo Australiano de Investigación DP160104211, DP190103474 y DP190103103.

Materials

Name Company Catalog Number Comments
48 V DC power supply (motor) Meanwell RSP-320-48 https://www.meanwellaustralia.com.au/products/rsp-320
5 V DC power supply (arduino) Jaycar MP3295 https://www.jaycar.com.au/15w-5v-3a-enclosed-power-supply/p/MP3295?pos=5&queryId=dda344422ab16c6
7f558551ac0acbd40
Ardity plugin for Unity Open Source https://ardity.dwilches.com/
Arduino MEGA 2560 Jaycar XC4420 https://www.jaycar.com.au/duinotech-mega-2560-r3-board-for-arduino/p/XC4420?pos=2&queryId=901771805f4bf6e0
ec31d41601d14dc3
Arduino software Arduino https://www.arduino.cc/en/software
Belt Motion Dynamics RFTB10010 Choose a size that suits the application. We used 60 tooth. https://www.motiondynamics.com.au/polyurethane-timing-belts-16mm-t-10/
Bracket bolts (holding motor) The Fastner Factory 161260 x 4. https://www.thefastenerfactory.com.au/bolts-and-nuts/all-stainless-bolts/stainless-button-socket-head-cap-screws/stainless-steel-button-socket-head-cap-screw-m6-x-35mm-100pc
Bracket bolts (not holding motor) The Fastner Factory 161258 x 4. https://www.thefastenerfactory.com.au/bolts-and-nuts/all-stainless-bolts/stainless-button-socket-head-cap-screws/stainless-steel-button-socket-head-cap-screw-m6-x-25mm-100pc
Clamp Angle Iron Austral Wright Metals 50004813 x 2. https://www.australwright.com.au/products/stainless-steel/stainless-steel-bar-round-flat-angle-square/
Clamp bolts The Fastner Factory 161265 x 4. https://www.thefastenerfactory.com.au/bolts-and-nuts/all-stainless-bolts/stainless-button-socket-head-cap-screws/stainless-steel-button-socket-head-cap-screw-m6-x-70mm-100pc  
Clamp leaves (stainless flat bar) Austral Wright Metals 50004687 x 8. https://www.australwright.com.au/products/stainless-steel/stainless-steel-bar-round-flat-angle-square/
Cover (acrylic) Bunnings Warehouse 1010489 https://www.bunnings.com.au/suntuf-900-x-600-x-5mm-grey-acrylic-sheet_p1010489
Cover bolts/nuts Bunnings Warehouse 247292 x 4. https://www.bunnings.com.au/pinnacle-m3-x-16mm-stainless-steel-hex-head-bolts-and-nuts-12-pack_p0247292
Cover brackets Bunnings Warehouse 44061 x 4. https://www.bunnings.com.au/zenith-20mm-zinc-plated-angle-bracket-16-pack_p0044061
Emergency shut-off switch Jaycar SP0786 https://www.jaycar.com.au/latching-emergency-stop-switch/p/SP0786?pos=1&queryId=5abe9876cf78dc3d
d26b9067fbc36f74
Hybrid stepper motor and driver Vevor ? Closed Loop Stepper Motor Nema 34 12NM Servo Motor Hybrid Driver https://vevor.com.au/products/1712oz-in-nema34-closed-loop-stepper-motor-12nm-hybrid-servo-driver-hsc86-kit?variant=33058303311975
IEC mains power connector RS components 811-7213 https://au.rs-online.com/web/p/iec-connectors/8117213
Instrument case (housing) Jaycar HB6381 https://www.jaycar.com.au/abs-instrument-case-with-purge-valve-mpv2/p/HB6381
LED Jaycar ZD0205 https://www.jaycar.com.au/green-10mm-led-100mcd-round-diffused/p/ZD0205?pos=11&queryId=e596cbd3d71e86
37ab9340cee51175e7&sort=
relevance
Main pulley (chair) Motion Dynamics ALTP10020 Choose a size that suits the application. More teeth = slower rotation. We used 36 tooth. https://www.motiondynamics.com.au/timing-pulleys-t10-16mm.html
Motor attachment bars (Stainless flat bar) Austral Wright Metals 50004687 x 4. https://www.australwright.com.au/products/stainless-steel/stainless-steel-bar-round-flat-angle-square/
Mounting brackets (stainless flat bar) Austral Wright Metals 50004687 x 2. https://www.australwright.com.au/products/stainless-steel/stainless-steel-bar-round-flat-angle-square/
Nuts The Fastner Factory 161989 x 12. https://www.thefastenerfactory.com.au/stainless-steel-hex-nylon-insert-lock-nut-m6-100pc
On/off switch Jaycar SK0982 https://www.jaycar.com.au/dpdt-illuminated-rocker-large-red/p/SK0982?pos=4&queryId=88e0c5abfa682b74
fa631c6d513abc73&sort=relevance
Potentiometer Jaycar RP8610 https://www.jaycar.com.au/10k-ohm-logarithmic-a-single-gang-9mm-potentiometer/p/RP8610?pos=4&queryId=0d1510281ba100d
174b8e3d7f806a020
Pulley screws The Fastner Factory 155856 x 5. https://www.thefastenerfactory.com.au/stainless-steel-hex-socket-head-cap-screw-m4-x-25mm-100pc
resistor 150 Ohm Jaycar RR2554 https://www.jaycar.com.au/150-ohm-1-watt-carbon-film-resistors-pack-of-2/p/RR2554?pos=19&queryId=48c6317c73fd361
a42c835398d282c4a&sort=
relevance
Small pulley (motor) Motion Dynamics ALTP10020 Choose a size that suits the application. More teeth = faster rotation. We used 24 tooth. https://www.motiondynamics.com.au/timing-pulleys-t10-16mm.html
Small toggle switch Jaycar ST0555 https://www.jaycar.com.au/sealed-mini-toggle-switch/p/ST0555?pos=14&queryId=066b989a151d83
31885c6cec92fba517&sort=
relevance
Steam software Valve Corporation https://store.steampowered.com/
SteamVR plugin for Steam Valve Corporation https://store.steampowered.com/app/250820/SteamVR/
Unity software Unity Technologies https://unity3d.com/get-unity/download
VR system Scorptec 99HANW007-00 HTC Vive Pro with controllers and base stations. https://www.scorptec.com.au/product/gaming-peripherals/vr/72064-99hanw007-00?gclid=Cj0KCQiA5OuNBhCRARIsA
CgaiqX8NjXZ9F6ilIpVmYEhhanm
GA67xLzllk5EmjuG0gnhu4xmiE
_RwSgaAhn8EALw_wcB

DOWNLOAD MATERIALS LIST

References

  1. Campos, J., Bülthoff, H. Multimodal integration during self-motion in virtual reality. The Neural Bases of Multisensory. Murray, M. M., Wallace, M. T. , CRC Press. (2012).
  2. Radianti, J., Majchrzak, T. A., Fromm, J., Wohlgenannt, I. A systematic review of immersive virtual reality applications for higher education: Design elements, lessons learned, and research agenda. Computers & Education. 147, 103778 (2020).
  3. Madshaven, J. M. Investigating the user experience of virtual reality rehabilitation solution for biomechatronics laboratory and home environment. Frontiers in Virtual Reality. 2, 645042 (2021).
  4. Fan, Z. Design of physical training motion simulation system based on virtual reality technology. 2021 The 13th International Conference on Computer Modeling and Simulation. Association for Computing Machinery. , 81-86 (2021).
  5. Roettl, J., Terlutter, R. The same video game in 2D, 3D or virtual reality - How does technology impact game evaluation and brand placements. PLoS One. 13 (7), 0200724 (2018).
  6. Riecke, B. E., Sigurdarson, S., Milne, A. P. Moving through virtual reality without moving. Cognitive Processing. 13, Suppl 1 293-297 (2012).
  7. Fauville, G., Queiroz, A. C. M., Woolsey, E. S., Kelly, J. W., Bailenson, J. N. The effect of water immersion on vection in virtual reality. Scientific Reports. 11 (1), 1022 (2021).
  8. Bernhard, E. R., Jörg, S. -P., Marios, N. A., Markus Von Der, H., Heinrich, H. B. Cognitive factors can influence self-motion perception (vection) in virtual reality. ACM Transactions on Applied Perception. 3 (3), 194-216 (2006).
  9. Gibson, J. J. The perception of the visual world. , Houghton Mifflin. (1950).
  10. Angelaki, D. E., Gu, Y., Deangelis, G. C. Visual and vestibular cue integration for heading perception in extrastriate visual cortex. Journal of Physiology. 589, Pt 4 825-833 (2011).
  11. Badcock, D., Palmisano, S., May, J. G. Vision and virtual environments. Handbook of Virtual Environments: Design, Implementation, and Applications. Hale, K. S., Stanney, K. M. , CRC Press. 39-85 (2014).
  12. Kaliuzhna, M., Prsa, M., Gale, S., Lee, S. J., Blanke, O. Learning to integrate contradictory multisensory self-motion cue pairings. Journal of Vision. 15 (1), (2015).
  13. Wilkie, R. M., Wann, J. P. The role of visual and nonvisual information in the control of locomotion. Journal of Experimental Psychology: Human Perception and Performance. 31 (5), 901-911 (2005).
  14. Sinha, N., et al. Perception of self motion during and after passive rotation of the body around an earth-vertical axis. Progress in Brain Research. 171, 277-281 (2008).
  15. Tremblay, L., et al. Biases in the perception of self-motion during whole-body acceleration and deceleration. Frontiers in Integrative Neuroscience. 7, 90 (2013).
  16. Nooij, S. A. E., Bockisch, C. J., Bülthoff, H. H., Straumann, D. Beyond sensory conflict: The role of beliefs and perception in motion sickness. PLoS One. 16 (1), 0245295 (2021).
  17. Harris, L., et al. Simulating self-motion I: Cues for the perception of motion. Virtual Reality. 6 (2), 75-85 (2002).
  18. Carr, H. A., Hardy, M. C. Some factors in the perception of relative motion: A preliminary experiment. Psychological Review. 27, 24-37 (1920).
  19. Reinhardt-Rutland, A. H. Induced movement in the visual modality: An overview. Psychological Bulletin. 103, 57-71 (1988).
  20. Zivotofsky, A. Z., et al. Tracking of illusory target motion: Differences between gaze and head responses. Vision Research. 35 (21), 3029-3035 (1995).
  21. Farrell-Whelan, M., Wenderoth, P., Wiese, M. Studies of the angular function of a Duncker-type induced motion illusion. Perception. 41 (6), 733-746 (2012).
  22. Warren, P. A., Rushton, S. K. Optic flow processing for the assessment of object movement during ego movement. Current Biology. 19 (18), 1555-1560 (2009).
  23. Fajen, B. R., Matthis, J. S. Visual and non-visual contributions to the perception of object motion during self-motion. PLoS One. 8 (2), 55446 (2013).
  24. Duminduwardena, U. C., Cohen, M. Controlling the Schaire Internet Chair with a mobile device. Proceedings CIT: The Fourth International Conference on Computer and Information Technology. , Wuhan, China. 215-220 (2004).
  25. Ashiri, M., Lithgow, B., Mansouri, B., Moussavi, Z. Comparison between vestibular responses to a physical and virtual reality rotating chair. Proceedings of the 11th Augmented Human International Conference. , Association for Computing Machinery. Winnipeg, Manitoba, Canada. (2020).
  26. Koenig, E. A new multiaxis rotating chair for oculomotor and vestibular function testing in humans. Neuro-ophthalmology. 16 (3), 157-162 (1996).
  27. Mowrey, D., Clayson, D. Motion sickness, ginger, and psychophysics. The Lancet. 319 (8273), 655-657 (1982).
  28. Sanmugananthan, P., Nguyen, N., Murphy, B., Hossieni, A. Design and development of a rotating chair to measure the cervico-ocular reflex. Cureus. 13 (10), 19099 (2021).
  29. Gugenheimer, J., Wolf, D., Haas, G., Krebs, S., Rukzio, E. SwiVRChair: a motorized swivel chair to nudge users' orientation for 360 degree storytelling in virtual reality. 1996-2000. Proceedings of the 2016 CHI Conference on Human Factors in Computing Systems. , Association for Computing Machinery. San Jose, California, USA. (2016).
  30. Roto VR Ltd. Roto VR Chair. , Available from: https://www.rotovr.com/ (2021).
  31. Yaw VR Ltd. Yaw Motion Simulator. , Available from: https://www.yawvr.com/ (2021).
  32. Warren, P. A., Rushton, S. K. Perception of object trajectory: Parsing retinal motion into self and object movement components. Journal of Vision. 7 (11), 1-21 (2007).
  33. Bonnen, K., Burge, J., Yates, J., Pillow, J., Cormack, L. K. Continuous psychophysics: Target-tracking to measure visual sensitivity. Journal of Visualized Experiments: JoVE. (3), (2015).
  34. SimXperience. , Available from: https://www.simxperience.com/ (2021).
  35. Harris, L. R., Jenkin, M., Zikovitz, D. C. Visual and non-visual cues in the perception of linear self-motion. Experimental Brain Research. 135, 12-21 (2000).
  36. DOF Reality Motion Simulators. , Available from: https://www.dofreality.com/ (2021).
  37. Next Level Racing. , Available from: https://nextlevelracing.com/ (2022).
  38. Motion Systems. , Available from: https://motionsystems.eu/ (2022).
  39. Redbird Flight Simulations. , Available from: https://simulators.redbirdflight.com/ (2022).
  40. Teufel, H. J., et al. MPI motion simulator: development and analysis of a novel motion simulator. Proceedings of the AIAA Modeling and Simulation Technologies Conference and Exhibit (AIAA 2007). , Hilton Head, South Carolina. (2007).

Tags

Comportamiento número 182
Rotación controlada de observadores humanos en un entorno de realidad virtual
Play Video
PDF DOI DOWNLOAD MATERIALS LIST

Cite this Article

Falconbridge, M., Falconbridge, P.,More

Falconbridge, M., Falconbridge, P., Badcock, D. R. Controlled Rotation of Human Observers in a Virtual Reality Environment. J. Vis. Exp. (182), e63699, doi:10.3791/63699 (2022).

Less
Copy Citation Download Citation Reprints and Permissions
View Video

Get cutting-edge science videos from JoVE sent straight to your inbox every month.

Waiting X
Simple Hit Counter