Pneumatic pistons for force feedback
Due to both the source of energy (air tank) and control system (valve) being elsewhere a pneumatic piston can deliver a strong force very quickly while taking up little space in the area it is mounted.
A double ended piston can provide force in both directions, i.e. keep the user's fist closed as well as preventing it from closing. This extra functionality likely won't be necessary for most users but may be supported in an enhanced version of the glove.
One interesting aspect of compressed air is that it requires more force to squeeze high pressure air than to allow it to expand. This means the wearer can release their grip on a virtual object naturally. A system which locks the joint completely would need to read the user's intent to release their grip and unlock the joint.
A gauntlet, not just a glove
The tracking sensor (Vive Tracker puck or Oculus Touch controller), electronics, air tank and compressor will be mounted on the user's forearm instead of the hand. The battery is the heaviest item and will be mounted on the upper arm. This lowers the weight of the glove part and means the other elements are not so constrained in terms of space (making design and manufacturing easier).
Early prototypes mount the Oculus Touch on the hand but this is temporary.
The design may also include force feedback on the wrist and elbow. The wrist needs to be tracked due to mounting the tracking sensor on the forearm. This could be done with the custom cylinders described below in an arrangement similar to a Stewart platform. Applying force feedback to the wrist would provide a good simulation of firearm kickback, as demonstrated by the Novint XIO.
Separate force feedback for each joint
The compact size of the cylinder means they can be mounted on each joint.. This also means the joints act independently which makes the control system simpler (compared to an alternative where the user moving one joint requires the joints above it to update in sync with it to maintain the existing angle).
Support wide range of hand sizes
Sliding connectors between the joints allow the glove to fit different sizes of hand. Ideally these connectors will contain slide potentiometers so the glove can report the hand size to software for a more accurate simulation.
Precise, reliable and cheap angle sensors
Many VR gloves use imprecise or unreliable sensors. Flex sensors are a common choice but generally only to give a bend value for the whole finger instead of each joint. They are also fairly expensive.
The pneumatic VR glove uses rotary potentiometers to sense the angle of each joint. This is a very established technology, has high accuracy and repeatability, and the sensors are available cheaply.
Instead of measuring the angle of the finger joint directly the glove measures the angle of the upper side of the joint against the angle of the piston on the lower side of the joint. This has the benefit of not requiring any hardware on the side of the user's finger where it is more likely to get in the way.
Open framework instead of enclosed fabric
The 'glove' doesn't look much like a glove at all because it is mostly mounted to the back of the user's hand, with only a few elastic straps to hold it on. As well as helping the glove fit a wider range of hand sizes this aids in preventing the hand getting too hot and sweating.
Custom cylinders including sensors
The current prototypes use Lego Technic pneumatic cylinders as these are small and light. Ideally a custom cylinder will be used that includes several sensors:
- A slide potentiometer along the rod so the extension of the cylinder can be used to measure the joint angle. This removes the need for the rotary sensor. Generally cylinders in real world applications can't mount something like a slide potentiometer as it will likely prevent the cylinder sealing completely. The VR glove doesn't need very high pressures or to apply them for long so imperfect seals may be good enough.
- Pressure sensors at each end of the piston. Modern technology allows for tiny pressure sensors, for instance the FXPQ3115BVT1 is 3mm x 5mm (but doesn't handle the required pressure). This could mean they are mounted inside the end walls of the cylinder. This will give a more accurate reading of the pressure in the cylinder.
Currently the prototype is using a servo to control a Lego Technic 3-way valve. This has some advantages over a solenoid which is more commonly used.
- Only draws power when moving. A solenoid requires constant power when in the non-resting position.
- Less current. Solenoids have a high current draw, particularly the spike when they are switched on. These SG90 servos have a maximum current draw of about 0.5A so standard USB power banks can power several of them safely, avoiding the need for more dangerous LiPo batteries.
- Tri-state valves. Solenoids are only off or on, but the servo and Technic valve combination allows the cylinder to be open to atmosphere (freely moving), closed (resists against squeezing) or open to the air tank (pushes against the user's finger).
The servos have downsides too, notably the time to move the valve and their size.
Ideally the glove will use piezo valves but these aren't widely available. These valves have lower power requirements but more importantly are proportional, which could lead to precise control of the pressure in the cylinder. The may even be small and light enough to mount parallel to the cylinder, creating an all-in-one actuator and sensor.