Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!usc!sdd.hp.com!uakari.primate.wisc.edu!dali.cs.montana.edu!milton!almquist@cis.udel.edu From: almquist@cis.udel.edu (Squish) Newsgroups: sci.virtual-worlds Subject: Cheap Force Feedback for VR? Message-ID: <12079@milton.u.washington.edu> Date: 30 Nov 90 23:02:44 GMT Sender: hlab@milton.u.washington.edu Organization: now, EntityOS Group, U of Delaware, future, ??? Lines: 148 Approved: hitl@hardy.u.washington.edu Posting from another lurker (-: VR will certainly be a positive contribution - we all agree to this. NOW, there is considerable discussion about how to do it. I think a virtual reality operating system (kernel) will soon come into existence. There has been a lot of discussion about graphical and auditory I/O - they exist but there is considerable room for improvement. Recently there has been a lot of talk about improving positional information (polhemus, cameras, accelerometers, gyroscopes, etc.). What else do we need for VR? Sensory I/O - we got sight and sound what about taste? smell? touch? Taste looks kind of complex - well, at least I wouldn't want to put some funny tube into my mouth with some guy standing over me saying, "Trust me (-:". Smell doesn't appear to be TOO difficult (ie. a smell bank). Limited motional ques via controlled postional air streams could be very effective. How about force feedback? Unfortunately at the moment I don't possess the time or the knowledge to implement the following (perhaps in time). ALTHOUGH, perhaps some lurkers possess the time and knowledge? Limited (but perhaps effective) CHEAP force feedback: How about modifying the datagloves (eventually a datasuit) so that limited force feedback cues could be transmitted? How? Could this work? Subdivide the dataglove into segments - size would depend on the resolution you wish to obtain. Of course, make sure that joints have been subdivided properly. Now take each of these subdivision and make them into a small balloon so that when inflated, the outer surface would remain semi-flat and the balloon would inflate towards the users skin (I believe this could be done by using materials with different strengths - ie. outer material is say heavy surgical material and inner material is standard party balloon material via physics, the inner material would expand first). NOW, attach to each individual air pocket section a line to an air compressor (maybe an inert gas or liquid would work best?). The computer would then control the compressor and inflat/deflat each segment accordingly. Certainly using this scheme restricted joint movement and the sense of touch (pressure) could be obtained. Yeah, some mechanics would be need to be examined: balloon segments deflating and inflating fast enough, balloon segments don't break (would perhaps give the VR individual an interesting surprise though (-:). If this works out, how about creating a VR datasuit? Maybe just a datavest or something? With this, one could get in a VR fight and feel it (-: Now punches are the quick inflating and deflating of localized air pockets. Is this feasible? Could it be done? I think this is a good approach. I don't think we should worry about restricting movement (ie. via an exoskeleton). I think it may be too complicated, expensive, and as a dreamer, perhaps a neuro-interface might be perfected by this time (-: ALSO, if we were masochistic/evil individuals, we could simply restrict movement by making increasing pressure of air pocket(s) at or beyond pain tolerances - ie: a person touches an object - pockets turned on to indicated contact a person pushed an object - pocket pressure increased a person tries to put fingers through object - MUCHO pressure on finger tips Still, could be done but not at levels enough to cause pain. Example of simple, cheap, subdivisioning for limited force feedback: FACE UP LEFT HAND When the air pockets are created, a process could be used so that air pressure would be maximum at the joint and gradually decreases as distance from the joint increases. ALSO, all finger tips have their own segments. 000000000 000000000 000000000 |4444444| 000000000 |4444444| 000000000 000000000 |4444444| 000000000 000000000 |4444444| 000000000 |1111111| | joint | |7777777| |1111111| |4444444| |7777777| 000000000 |1111111| |4444444| |7777777| 000000000 |1111111| |4444444| |7777777| 000000000 |1111111| |4444444| |7777777| |aaaaaaa| |1111111| |4444444| |7777777| |aaaaaaa| | joint | |4444444| | joint | |aaaaaaa| |1111111| |4444444| |7777777| |aaaaaaa| |1111111| |5555555| |7777777| |aaaaaaa| |1111111| |5555555| |7777777| |aaaaaaa| |1111111| |5555555| |7777777| |aaaaaaa| |2222222| | joint | |8888888| | joint | |2222222| |5555555| |8888888| |aaaaaaa| |2222222| |5555555| |8888888| |aaaaaaa| | joint | |5555555| | joint | |aaaaaaa| |2222222| |5555555| |8888888| |bbbbbbb| |2222222| |5555555| |8888888| |bbbbbbb| |2222222| |5555555| |8888888| | joint | |2222222| |5555555| |8888888| |bbbbbbb| |2222222| |5555555| |8888888| |bbbbbbb| |2222222| |5555555| |8888888| |bbbbbbb| |2222222| |5555555| |8888888| |bbbbbbb| |3333333| |6666666| |9999999| |bbbbbbb| |3333333| |6666666| |9999999| /bbbbbbb/ | joint | | joint | | joint | /bbbbbbb/ |33333333\ /666666666\ /99999999| /ccccccc/ 000000000 |333333333\/66666666666\/999999999| /ccccccc/ 000000000 |333333333366666666666669999999999|/jo cccc/ 000000000 |33333333333666666666669999999999ccc in c/ |eeeeeee| |ddddddddddddddddddddddddddddddddddccc t/ |eeeeeee| | --- joint --- joint --- joint --- ccc/ |eeeeeee| |dddddddddddddddddddddddddddddddddddddc/ T |eeeeeee| |gggddddddddddddddddddddddddddddddddddd| H | joint | |\gggdddddddddddddddddddddddddddddddddd| U |eeeeeee| |g\gggddddddddddddddddddddddddddddddddd| M |eeeeeee| |gg\gggdddddddddddddddddddddddddddddddd| B |eeeeeee| |ggg\ggggdddddddddddddddddddddddddddddd| |eeeeeee| |gggg---gggdddddddddddddddddddddddddddd| |eeeeeee| |gggg jo\gggddddddddddddddddddddddddddd| \eeeeeeee\ |ggggg in\gggdddddddddddddddddddddddddd| \eeeeeeef\ |ggggggg t\ggggggddddddddddddddddddddd/ \eeeeffff\ |gggggggggg---gggdddddddddddddddddddd/ \fffffff \|fggggggggg jo\gggdddddddddddddddddd/ \ffff t fffggggggggg in\gggdddddddddddddddd/ \f in ffffggggggggggg t\gggdddddddddddddd| \jo fffffgggggggggggggg|gggddddddddddddd| \ fffffffgggggggggggggg|gggddddddddddddd| \ffffffggggggggggggggg|gggddddddddddddd| \ffffgggggggggggggggg|gggddddddddddddd| \ffggggggggggggggggg|gggdddddddddddd/ \gggggggggggggggggg|gggddddddddddd/ \gggggggggggggggg/gggddddddddddd| -------------------------------- (sorry for bandwidth abuse) 5 fingertip air pockets 16 subdivisions (air pockets) for face-up/palm of hand 16 subdivisions (air pockets) for face-down/opposite of palm (gory details ie. picture not included) SO, now we have 37 subdivisions/air pockets. 37 lines leading to a compressor of some type. At least 74 micro-controller unit to control: one for each subdivisions inflator unit, (at least) one for each subdivision deflator unit. My experience being inflating is faster and easier than FAST deflation without some sort of external pressure. I feel there is A LOT of dreaming in this newsgroup. Nothing wrong with that but we are maxing (reaching the edge) of our current technologies and CPU power (ie. neuro-interface - IT AIN'T FEASIBLE NOW). IMHO, we could successfully add tactial feedback to VR very cheaply. To get adventerous, how about heating/cooling our liquid/gas so that not only is tactial feedback available so is temperature sensing. WOW! I need to find an Engineering school that will let me get busy! Any thoughts? ideas? comments? anyone doing this? - Mike Almquist (almquist@cis.udel.edu) "Engineers bring ideas to reality, Virtual Reality Idealist bring reality to ideas!", squish (11/30/90) -- Michael Almquist 70 Ethan Allen Ct., Newark, DE 19711 Comp Sci Lab, 102 Smith Hall, Univ of Delaware, Newark, DE 19716 (302)451-6339 "Don't believe me, I'm only a student"