21 april 2022
De gecontroleerde fysieke rotatie van een menselijke waarnemer is wenselijk voor bepaalde experimentele, recreatieve en educatieve toepassingen. Dit artikel schetst een methode voor het omzetten van een bureaustoel in een medium voor gecontroleerde fysieke rotatie in een virtual reality-omgeving.
Wanneer je door de wereld beweegt, krijg je visuele en vestibulaire signalen over hoe jij en de objecten om je heen bewegen. Met deze opstelling kunt u die signalen onafhankelijk manipuleren. Dit is een betaalbare manier om gecontroleerde beweging van een persoon in een meeslepende audiovisuele omgeving te hebben met behulp van onderdelen die direct beschikbaar zijn zoals een bureaustoel.
Mijn advies voor dit hele stoelsysteem is om de elektronica en de motor te laten werken zoals jij dat wilt voordat je iets goed in elkaar zet. Begin met het aansluiten van het Arduino-bord op de computer met behulp van een USB-kabel. Selecteer in het vervolgkeuzemenu tools de poort waarop het Arduino-bord is aangesloten.
Selecteer vervolgens het juiste bord, gevolgd door de processor. Zorg ervoor dat het overeenkomt met het werkelijke bord en de processor. Hier kan de voorbeeld Arduino-code worden geplakt.
Controleer en sla de Arduino-code op. Upload het vervolgens naar het Arduino-bord met behulp van de uploadknop. Sluit het elektrische subsysteem aan en schakel het in.
Veeg vervolgens de kleine tuimelschakelaar naar een positie waar het kleine LED-indicatielampje gaat branden en draai aan de potentiometerknop om ervoor te zorgen dat deze de snelheid en richting van de stoel regelt. De snelheid en richting van de stoel moeten variëren met de positie van de potentiometer. Open vervolgens een nieuw of bestaand Unity-project.
Om de SteamVR-plug-in te importeren, moet u eerst controleren of u bent aangemeld bij uw Unity-account. Klik vervolgens op venster en activawinkel om de activawinkel in een webbrowser te openen. Zoek naar SteamVR.
Selecteer SteamVR plugin, en klik op, toevoegen aan mijn assets. Terug in Unity selecteert u pakketbeheer onder het venstertabblad. Selecteer mijn assets.
Klik vervolgens op importeren onder SteamVR en volg de aanwijzingen om het importeren te voltooien. Klik op alles accepteren om de configuratiewijzigingen aan te brengen en volg de aanwijzingen. Zoek naar een nieuw item genaamd SteamVR in het projectvenster op het inspectiescherm.
Vouw de SteamVR-assetmap uit, gevolgd door prefabs. Sleep de camera-installatie naar het hiërarchievenster om het gebruik van de VR-headset en controllers in de game mogelijk te maken. Verwijder de standaard hoofdcamera uit de hiërarchie of scène, omdat dit de SteamVR-camera zal verstoren.
Zoek vervolgens naar de Ardity-plug-in met hetzelfde proces dat wordt gebruikt voor SteamVR. Maak vervolgens de objecten die nodig zijn voor het experiment. Om dit te doen, klikt u op spelobject en selecteert u 3D-object.
Hier is bijvoorbeeld een vlak met de naam achtergrond dat zich op de achtergrond van de cameraweergave bevindt. De achtergrond kan worden vergrendeld in positie ten opzichte van het op het hoofd gemonteerde display. Om functionaliteit aan de scène toe te voegen, klikt u op de knop Component toevoegen in het controlevenster en selecteert u nieuw script.
Bel het script, stel de proefversie in. De standaardcode moet hier worden vervangen door de code in het meegeleverde installatieproefbestand. Het is de minimale code die nodig is om de stoel correct in beweging te krijgen.
Ga terug naar Unity. Het nieuwe installatietestscript is nu gekoppeld aan het achtergrondobject. Open onder de map assets in het projectvenster de map Ardity, gevolgd door de map scripts.
Sleep het script van de seriële controller naar het spelobject op de achtergrond in het hiërarchievenster. Schuif omlaag in de lijst met onderdelen in het controlevenster om het script van de seriële controller te zoeken. Zorg ervoor dat de poortnaam en de boardsnelheid overeenkomen met die voor het Arduino-programma.
Sleep het achtergrondobject van het hiërarchievenster naar het invoervak, naast de berichtlistener in het infovenster. Klik op component toevoegen onder aan het controlevenster en selecteer nieuw script. Naam, de nieuwe scriptstoel controller.
Het meegeleverde script van de stoelcontroller kan in dit bestand worden geplakt. Er is minimaal een functie nodig die de gebruikersacties omzet in een getal tussen nul en 1, 023. Gebruik vervolgens de seriële controller dot send serial message-functie om het nummer naar de Arduino te sturen en het script op te slaan.
Terug in Unity sleept u het op de kop gemonteerde weergaveobject van het hiërarchievenster naar het invoervak naast het hoofd. Sleep vervolgens het rechter controllerobject naar het invoervak naast de hand. Scrol omlaag in het controlevenster om de openbare variabelen van het installatieproefscript te vinden.
Volgens het invoertype voorbeeldcode is drie voor de VR-controller en vier voor de muisbesturing. Hier wordt de VR-controller geselecteerd. Als de SteamVR-app is uitgeschakeld, krijg je foutmeldingen met betrekking tot SteamVR-acties wanneer je voor de eerste keer op de afspeelknop in Unity drukt.
Volg de aanwijzingen om SteamVR-acties te configureren. Sluit het instellingenvenster en behandel eventuele andere prompts van SteamVR. Druk ten slotte op de afspeelknop om de VR-ervaring te starten.
Met deze instellingen kan de gebruiker de stoel draaien met behulp van de VR-controller. Een schematische weergave van de acties van de waarnemer en de resulterende stoel- en scènewisselingen tijdens het experiment wordt hier getoond. In de congruente toestand, als de waarnemer de controller naar links beweegt, beweegt de stoel ook naar links en beweegt de visuele achtergrond in de tegenovergestelde richting, alsof het een stilstaande scène is waartegen de persoon roteert.
In de incongruente toestand beweegt de stoel in de tegenovergestelde richting waardoor de stoel incongruent beweegt met een visuele achtergrondbeweging. Hier wordt een screenshot getoond van het stimulusgebied van het visuele display. De kleine patroonpleisters bleven de hele tijd op hun plaats, maar de patronen erin bewogen alsof elke patch een venster was naar het grotere bewegende object.
De patches die op de ring lagen, vormden het doelwit en de andere patches vormden de achtergrond. In deze voorbeeldvideo beweegt het doel verticaal omhoog en beweegt de achtergrond naar rechts. De bewegende achtergrond creëert een illusie van links van beweging in het doel, waardoor het lijkt alsof het naar boven en naar links beweegt.
Deze illusoire linkse beweging wordt geïnduceerde beweging genoemd. De doelring had een straal van vijf graden visuele hoek en het achtergrondgebied daalde 20 graden bij 20 graden. De sterkte van het geïnduceerde bewegingseffect onder de congruente en incongruente bewegingsomstandigheden wordt weergegeven door de waarde van de parameter bèta.
De representatieve afbeelding toont de gemiddelde bètawaarden voor elke waarnemer in de congruente en incongruente omstandigheden. Zoals te verwachten was, als waarnemers aannamen dat de achtergrondbeweging werd veroorzaakt door hun eigen beweging door een stille wereld, ligt de gemiddelde bètawaarde voor de congruente toestand dicht bij één. Op één waarnemer na nam de bètawaarde van alle waarnemers af in de incongruente stoelbeweging.
Deze gegevens wijzen op een verminderde kans om de visuele achtergrondbeweging te zien als veroorzaakt door de fysieke beweging van de waarnemer. Je wilt er zeker van zijn dat je stoelpoelie en je motorpoelie echt goed zijn uitgelijnd, en dat de riemspanning goed is. Een beetje flex in de riem, maar niet veel.
U kunt de visuele en auditieve signalen regelen met behulp van de headset en vervolgens kunt u afzonderlijk motorgestuurde of voetaangedreven lichaamsbeweging hebben. Er is veel om mee te spelen.
Bekijk het volledige transcript en krijg toegang tot duizenden wetenschappelijke video's
Dit document beschrijft een methode voor het omvormen van een kantoorstoel met draaifunctie tot een medium voor gecontroleerde fysieke rotatie in een virtuele realiteitsomgeving. De setup maakt onafhankelijke manipulatie van visuele en vestibulaire signalen mogelijk, waardoor meeslepende ervaringen worden verbeterd.
Controlled rotation of human observers in a virtual reality environment enables precise manipulation of multisensory integration, supporting advanced studies of perception and behavior under immersive conditions. This capability is strategically relevant for biopharma R&D teams seeking to model human sensory processing, de-risk translational neuroscience hypotheses, and validate targets related to vestibular and visual integration. The method's accessibility and reproducibility position it as a reusable platform for early discovery and mechanistic de-risking in neurobehavioral research portfolios.
This method integrates into the discovery-to-preclinical continuum by enabling controlled manipulation and measurement of sensory integration, supporting both early hypothesis testing and translational model validation.