Forum Discussion
CaliberMengsk
13 years agoExplorer
VR Gloves (my project)
Hey everyone,
I know I've had my vr glove project under my projects for a while, but recently I've been having more free time and actually got started working on it the last week or so. The idea is to use accelerometers, gyros, flex/bend sensors, potentiometers (volume knobs) and maybe a joystick, to make a highly accurate, non-laggy virtual reality glove. This first draft will be the proof of concept just to show what I mean. It uses and arduino leonardo (at least now it does), as well as the sensors mentioned above. At the moment, it's just writing all of the sensor data to a serial connection, then unity is reading that data (threaded so the game doesn't lag if it's to slow) and applying it in real time.
I wasn't sure if I should post it here yet, as I don't even have the elbow movement up and running quite yet. (Sensor is there, just I haven't built the elbow joint. This will be two plastic bars held together with a potentiometer to get how open the arm is.) but it's looking go so far, I think at least.
I still need to add the other two main fingers also, as well, the thumb has no input (first draft at least will be a joystick)
Let me know what you think! I'm hoping to get the elbow hooked up properly soon to be able to make a basic demo.
Here's the two videos I've made so far. Nothing spectacular, but still.
http://www.youtube.com/watch?v=--cOVZdpkWM - First video. Arduino Duemilinove (6 analog inputs), only one accelerometer and two flex sensors
http://www.youtube.com/watch?v=um3JUnARQQQ - Second video. Arudino Leonardo (12 analog inputs), two accelerometers, two flex sensors, and a potentiometer for elbow.
To Do List:
Craft elbow plastics and attach potentiometer and tilt sensor to it.
Add in other two flex sensors.
Create mount for thumbstick.
Add in thumbstick.
Make full demo project including picking up stuff as well as detailed actions (opening doors, windows, flushing toilet, things like that.)
EDIT:
All video links:
http://www.youtube.com/watch?v=--cOVZdpkWM
http://www.youtube.com/watch?v=um3JUnARQQQ
http://www.youtube.com/watch?v=c18tycYrDak
http://www.youtube.com/watch?v=282HJJANcio
http://www.youtube.com/watch?v=r15LuC7TD20
http://www.youtube.com/watch?v=dzMh7GttqXY
http://www.youtube.com/watch?v=DmXeFKzs-HQ
I know I've had my vr glove project under my projects for a while, but recently I've been having more free time and actually got started working on it the last week or so. The idea is to use accelerometers, gyros, flex/bend sensors, potentiometers (volume knobs) and maybe a joystick, to make a highly accurate, non-laggy virtual reality glove. This first draft will be the proof of concept just to show what I mean. It uses and arduino leonardo (at least now it does), as well as the sensors mentioned above. At the moment, it's just writing all of the sensor data to a serial connection, then unity is reading that data (threaded so the game doesn't lag if it's to slow) and applying it in real time.
I wasn't sure if I should post it here yet, as I don't even have the elbow movement up and running quite yet. (Sensor is there, just I haven't built the elbow joint. This will be two plastic bars held together with a potentiometer to get how open the arm is.) but it's looking go so far, I think at least.
I still need to add the other two main fingers also, as well, the thumb has no input (first draft at least will be a joystick)
Let me know what you think! I'm hoping to get the elbow hooked up properly soon to be able to make a basic demo.
Here's the two videos I've made so far. Nothing spectacular, but still.
http://www.youtube.com/watch?v=--cOVZdpkWM - First video. Arduino Duemilinove (6 analog inputs), only one accelerometer and two flex sensors
http://www.youtube.com/watch?v=um3JUnARQQQ - Second video. Arudino Leonardo (12 analog inputs), two accelerometers, two flex sensors, and a potentiometer for elbow.
To Do List:
Craft elbow plastics and attach potentiometer and tilt sensor to it.
Add in other two flex sensors.
Create mount for thumbstick.
Add in thumbstick.
Make full demo project including picking up stuff as well as detailed actions (opening doors, windows, flushing toilet, things like that.)
EDIT:
All video links:
http://www.youtube.com/watch?v=--cOVZdpkWM
http://www.youtube.com/watch?v=um3JUnARQQQ
http://www.youtube.com/watch?v=c18tycYrDak
http://www.youtube.com/watch?v=282HJJANcio
http://www.youtube.com/watch?v=r15LuC7TD20
http://www.youtube.com/watch?v=dzMh7GttqXY
http://www.youtube.com/watch?v=DmXeFKzs-HQ
92 Replies
- CaliberMengskExplorerSorry all for not updating anything this past week. Life is (as usual) quite busy. As such, I haven't really gotten to work on it more. T_T
I did think about using a light system like that, and just compare the different brightness to it, but I figured it would be too inaccurate in the end. As stated before, best way would be to have a potentiometer on each joint of the finger. I'm glad it did work, even if only somewhat decently. (I always have a lot of theories on different systems, but I rarely work on them myself or see another project that uses it. The rift it self is very very similar to an idea I was working a long time ago. Again, glad it worked out for someone else)
I've got plenty of ideas to make it work, even with different sized fingers (to a point anyway). Which would reduce price. (pretty sure I went over all this so I'll just stop now.)
:D I'm glad you'd back it. Hopefully I get some spare time to flesh it out the rest of the way. Making a custom pcb and such would reduce costs considerably. Being an arduino, it's pretty easy to even add something like bluetooth. You can get a full serial over bluetooth chip for $3-4 now, so this could possibly be wireless in the end also. (probably would be best to be wireless, as long as there isn't too much added lag cause of it.) - AnonymousGreat ideas here! Have you guys given any thought to implementing haptic feedback on the gloves? (e.g. feeling like you are actually grabbing something that prevents you from moving your fingers through solid objects)
- CaliberMengskExplorerAs far as haptics, there are a few thoughts. For one, you could use a simple server motor for each finger. This would add a lot of cost though. Around $8 per finger (4 main fingers per hand means it'd add around $64 to the total cost). While this might help with immersion, it really adds to the price. It would give a great effect.
Beside that, it may be possible to have something that covers the pad area of the finger sections that is attached to an electro magnet. This wouldn't implicitly stop someone from moving their fingers, but it would give the feeling of hitting something at least. It would simply pull the metal piece against your finger. Simply would be pushed back out with a spring. (instead of just metal, to remove the spring, it could be a small piece of neodynium magnet that you could push or pull it with an electro magnet, so there'd be no spring.)
I don't know how realistic the second one is, but we've seen people use servos for this type of thing many times before. There is also some interesting things you can do with gyros (the spinning device, not the sensor). For instance you could have one on the back of the wrist, and when whatever you holding, say a steering wheel, gets wrenched sideways from hitting a wall, a small motor could turn the gryo to a slight angle and it would feel like your hand is getting pushed around. Again, I don't know how well this kind of thing would work in practice, and it'd probably feel weird at first, as flipping your hand over would feel weird. Kind of like when you pick up a hard drive while the computer is on.
Past that, I don't really have any ideas. My primary goal isn't the haptics as much as the actual creation of the glove. - LKostyraProtegeI didn't see the videos, however I will check them this evening after work. Overall this concept is great and I would love to see such thing made in the near future. VR is a hot topic recently, it's great that our technology allows us to create such things as the Rift or those gloves. And it's just the beginning...
I'm waiting for all the updates about these gloves. :) - CaliberMengskExplorer:D I'm glad you are excited about these also. I just hope I don't let my laziness take over and let everyone down.
- KrisperExplorer
"CaliberMengsk" wrote:
:D I'm glad you are excited about these also. I just hope I don't let my laziness take over and let everyone down.
No, you can't let that happen. You've shown us now, your committed ;) We want VR gloves... We want VR gloves... We want VR gloves... - JohnyXHonored Guest
"Krisper" wrote:
"CaliberMengsk" wrote:
:D I'm glad you are excited about these also. I just hope I don't let my laziness take over and let everyone down.
No, you can't let that happen. You've shown us now, your committed ;) We want VR gloves... We want VR gloves... We want VR gloves...
It is not laziness ..it is bazillion other things we have to take care off every day.:) stay strong!
btw I have good idea for finger haptics.. - AndreInfanteExplorerThis is cool. I suspect, however, that in the long run we'll probably wind up using some kind of optical tracking for motion, and the gloves will wind up being primarily for force feedback. Still, good luck! More research is always helpful.
- CaliberMengskExplorerThere are many issues with optical systems. While they've gotten decent, you need only look at the leap motion to see the problems with it.
The biggest issue being that optics require line of sight. If you stick your had behind your back, it can't track it unless you have a multiple camera setup. While a multiple camera setup can help, if you turn your hand sideways or upside down, it also causes issues. Sideways, it can't determine which finger is the one moving, and upside down can sometimes be registered as the other hand. There's no inherent way to fix this issue.
As well, multi camera setups ( like those used in motion capture ) require a lot of room, and as people that use the kinect have shown, it's not really worth wile for them to set up the space to use the thing, let alone having to run all the wires and such for multiple cameras.
At the moment, speed can also cause problems. While there's less lag in something like the leap motion, the leap motion also has a very limited field/range. And while the Kinect has a larger field/range, it's limited in it's accuracy, not that the leap motion is super uber accurate anyway. It only gains it's accuracy due to having the much more limited field/range.
My point is, I don't see optics taking off as a VR viable alternative to something like a glove, which would be accurate much more often then not compared to an optical alternative.
A LITTLE UPDATE:
So, I may have mentioned the whole thing about having limited analog inputs, not being able to find a decent gryo locally, etc etc. Well, I did some looking, and it turns out there is a spiffy circuit called the MPU-6050. This spiffy little chip has both an accelerometer and a gyro in it. This is awesome, cause that's what I needed really. I was effectively going to make this chip out of separate pieces of circuitry. The only problem is, it's a surface mount chip. Tiny one at that.
So, I looked around a little more and found people are making breakouts for it. :D Also, I found some in china for $3.05. So... I bought two. Unfortunately, it's coming from china, so it can take 3-4 weeks, sometimes longer (generally around 3 weeks though) BUT, that also means price reduction in required parts. Instead of being around $20 per chip ($80 for all accelerometers and gyros for one arm) it's $6.10. Considerably cheaper. :D Beside that, this MPU (Motion Processing Unit is what it is I believe) uses an I2C system. That means it only takes 2 wires to talk with it. Past that, you can daisy chain them. So instead of needing 12 wires to talk with all the sensors, I only need 3. (2 wires for talking, one wire for setting the address of the second chip. This third wire is a simple on/off, so it doesn't take any of the analog pins and only requires a digital pin)
This is super useful as it lets me have 10 more possible analog inputs. Still not quite where I need it for the second prototype (as that needs roughly 19 potentiometers... so 22 analog inputs total. When I get to this point, I'll probably use a 16 channel multiplexer, maybe two 8 channels {for speed purposes. You have to wait a few ms between switching channels so that they don't bleed into each other, and doing it parallel would thus make each cycle faster})
A lot of techno jargen, I know. But maybe I explained what I'm talking about good enough?
EDIT:
As toward the cost, currently, my setup would be over $100 per arm. With this new cheap chip (around $4.50 in 5000 unit bulk just for the chip from digikey {boards I bought are cheaper cause they are direct from china}, a custom arduino would be around $4 in cost for all parts, and the custom pcb would be around $6 a piece, and 19 potentiometers/trimmers at around $3 total) the price could theoretically make the cost of materials be around $20 per glove instead of $100. (if stuff is bought in bulk. No promises on all that though, obviously.
I do want to work on this more. T_T but I have to wait for the chips from china to come in. - KrisperExplorerPersonally I would just want the gloves with the bend sensors and wireless communications with the PC. Then on the glove have a small pouch to fit a STEM module in it. This can handle all of the positional and rotational data.
Having played a lot with my own home built 3dof tracker with 3 gyros, 3 accels and 3 magnetometers, you can get lost in what it takes to get a nice 3dof tracker. I spent hundreds of hours on this, got something decent, but then you still don't get accurate positional tracking. I gave up with I got the Razer Hydra which does a whole lot more.
But maybe you are already well on your way to finishing the tracker, having it inbuilt would be great, but I think it would need to have positional tracking too. Just my thoughts...
Quick Links
- Horizon Developer Support
- Quest User Forums
- Troubleshooting Forum for problems with a game or app
- Quest Support for problems with your device
Other Meta Support
Related Content
- 6 months ago
- 14 days ago
- 2 years ago