tactile feedback
← Back
12 November 2020

The tactile module comprises two complimentary subsystems: vibration feedback and skin-stretch feedback. Simplified software stack In developing the tactile feedback module, we encountered competing constraints: the module should be as small and lightweight as possible, so as not to restrict or encumber finger movement; it should also, however, contain as many degrees of freedom as possible, so as to maximize the space of reproducible tactile sensations. It was natural that we find these two features at odds — most haptics engineers do. Luckily, many in academia have interested themselves in developing devices that artificially provoke tactile sensations, so we were able to draw from a vast and deep body of literature when designing our own device. After much consideration, we deduced that a vibration motor acting in conjunction with a 2-DOF skin-stretch manipulator would be capable of recreating a wide array of tactile experiences while still fitting in a sufficiently convenient form factor.

Skin Stretch Feedback

Our skin-stretch unit has two degrees of freedom. It can press into the fingerpad, simulating a contact force, and it can shear the fingerpad, simulating tangential forces. Shown below is a simplified model for the skin-stretch element of our tactile feedback module.
Simplified model of our device
While our device takes cues from this paper, both our mechanical design and embedded control software have undergone significant evolution such that they cannot be revealed here, for intellectual property reasons. Nevertheless, we can still discuss the fundamental operating principal. One of the primary findings of the referenced paper, which it shares with a number of other papers, is that our sensation of skin stretch is essential to our perception of holding physical objects. Specifically, the deformation of the fingertips is primarily what gives rise to our perception of weight. Consider the case of a hand holding a glass of water. As the glass fills up and its weight increases, the pads of the fingertips in contact with the glass begin to deform downwards. By providing an artificial shearing stress to a person's fingertip pads, they will perceive a physical weight. This experience is enhanced if the rest of their senses are similarly fooled (e.g. if, via a VR headset, they see a weight in their hand).
Hand holding glass of water
The optimal skin stretch manipulator would have a complete six DOFs to account for every possible grasping posture. However, we've determined that most of the benefit of such a system can be achieved with only two DOFs, and thus adding more than that would introduce unnecessary complexity (cost), weight, and size to the device.

Vibration Feedback

Implementing vibration feedback is incredibly simple from a mechanical standpoint. In fact, I even feel comfortable revealing the secret behind our method of providing vibration feedback: we take a vibration motor, and — wait for it — put it in contact with the user's fingertip. The real complexity in implementations of vibration feedback come from the control system, which is tasked with faithfully replicating the vibrotactile profiles of physical materials. Consider the materials shown below.
Various materials with different textures
You can probably imagine the sensation of touching each of these materials. What makes these sensations unique? According to this awesome paper, "each surface has unique microscopic details that induce distinctive vibrations." To make matters more complicated, these vibration profiles depend not only on the textures themselves, but also on the normal force and scanning speed between the finger and the surface. The aforementioned paper does a bunch of really cool things, including: building a device to record the 3D vibration profiles of different materials; reducing those profiles to "perceptually equivalent" one-dimensional signals; using linear predictive coding to compress the profiles into a "database of fequency-domain texture models"; and rendering those models in real time with a finger-mounted vibration motor.

Our long term goal is to follow in their footsteps and produce a database of texture models that can be accessed by anyone programming an application for our glove. All a programmer would have to do is define the material of a given object, and the tactile feedback module would automatically replicate its vibration profile. The whole predictive linear coding step might be unnecessary for us, but the idea of representing materials by their frequency domain spectrum is a compelling idea, and one that we believe will underpin the implementation of realistic haptics in the future.