Multi-Point Haptic Feedback System For VR Gaming Application
Custom designed and 3D printed solenoid actuator array, with Arduino + Unity to simulate and control.
Brief
As a videographer, I always get fascinated by the motion graphics and animations, if used correctly it could tell a story in such elegant way, which made me think, what if we can do animation with hardware?This project aims to use the sense of touch, to convey a message to the user, for applications in virtual reality.This project is a part of VR Controller semester project
Final Functional Prototype Demos
Demo ILinear Flow
Demo IICircular Flow
Demo IIIPositional Haptic Feedback
Research and Process
During my research, I found that many in-lens image stabilizing systems were similar to my concept, so I decided to teardown one of my busted camera lens open, and investigate.
Prototype #3 Dual Actuator Configuration
Testing with hand
Testing with Arduino
Prototype #4 Quad Dual Coil Actuator Configuration
Key Update #1 :Prototype #3’s membrane mechanism was too strong for solenoids to compress. Instead of using a membrane to retract the impact rod, I decided to add another coil to pull the impact rod back. It also reduced response time dramatically, allowing the unit to refresh faster and more predictable.
Key Update #2 : While testing prototype #3, I found that putting two neodymium magnets in close proximity will interference with each other, causing the magnets not to retract properly. Accidentally I found if I flip the magnet polarity every other unit, it will solve this problem, and the interference will work for me to retract the magnets faster.
Quad dual coil actuator running at 20 fires pre second
10x Configuration Prototype
After prototype #4, I think it was mature enough to do further testing. So I created a 10x configuration to test if it can convey a message with different animation.
Making of …….
Fly back diodes
Modular circuit layout
I knew that I will update the design in the future, so I created a modular circuit layout, everything just snaps together, I can swap/update individual part separately without remaking the whole thing.
Haptic Units & Flyback Diodes (Final prototype showing) —> Transistors & Positive Terminal —> Resistors & Ground Terminal
Unity Developing
To create haptic feedback, you will need something that you can react to.To create the environment, I used Unity in combination with a plug-in “Uduino.”Uduino allows Arduino to communicate with Unity in real-time.
Final Configuration
Key Updates :Replaced stoppers with silicone o-rings for noise reduction / smoother operationOptimized system performance, increased power efficiency and reduced heat.Reduced size, from 17mm to 14.5mm apart.