← All projects
Hand

Layer-jamming haptic glove

Context
UC San Diego MAE 219 (Design and Control of Haptic Systems), course project
Dates
Oct – Dec 2024
Role
Pressure-control characterization, user-study analysis and report sections, 4-person team

A glove that renders grasping force with layer jamming. One of the course projects I found most interesting.

Team: Alex Lu, Eric Leung, Vivek Pendem and David Lim.

Layer jamming is a simple way to make something stiff on demand: stack thin layers in an airtight sleeve, pull a vacuum, and friction locks the layers together. Let the air back in and the stack bends freely again. We put one jammer on the thumb and one on the index finger of a glove, so that when a virtual object is touched, the fingers stiffen and the user feels a grasp.

The glove on a right hand: layer jammers strapped to the thumb and index finger, a flex sensor over each, 3D-printed guides and Velcro straps
The glove. Layer jammers strap to the thumb and index finger with Velcro; a flex sensor rides on top of each, and 3D-printed guides keep the sensor and jammer bending together while letting them slide against each other.

How it works

  • Sensing. A flex sensor above each jammer connects to an analog pin on an Arduino Mega. Its resistance rises with bend, so the pin voltage tracks the finger angle.
  • Pressure control. The Arduino sends a voltage command to a DAC over I2C; the DAC’s 0–5 V output sets the setpoint of a ProportionAir QB1X pressure regulator. The regulator’s inlet is on a positive-pressure source, its exhaust on a vacuum source, and its outlet feeds both jammers and a gauge.
  • Jamming logic. The default setpoint is atmospheric, so the glove is free. When the summed bend of the two fingers passes a threshold, the controller commands vacuum and the fingers lock. When the bend drops back past a release threshold, the setpoint returns to atmospheric and the fingers separate.
  • Faster release. Positive pressure at the inlet was not needed to jam, but it cut the rise time from vacuum back to atmospheric, so the glove lets go faster. We also tried a momentary positive pulse at the start of each release.

Five virtual objects from one setpoint rule

Five plots of pressure setpoint against fingertip distance, one per mode
Pressure setpoint P against estimated fingertip distance d for the five modes. Solid: the default setting; dashed: how a potentiometer or the user's squeeze changes it.

Changing only how the setpoint depends on fingertip distance gave five different objects: (a) play-doh, whose threshold moves inward as you squeeze; (b) a ball with an adjustable slip force; (c) a ball with an adjustable size; (d) a “true stiffness” ball whose vacuum rises linearly as the fingers close; and (e) a balloon that pops, returning the setpoint to atmospheric past a second threshold.

A user pinching in the glove in front of a laptop showing a virtual balloon between two virtual fingertips
The balloon mode in a virtual environment. When the fingers reach the balloon the glove jams; squeeze past the bend threshold and the balloon disappears while the glove quickly unjams.

Characterizing the pressure control

I measured the regulator’s output pressure against the commanded voltage and fit a line by least squares. The mapping from command to gauge pressure came out linear, from about −86 kPa at 0 mV to +90 kPa at 1.7 V, which made the setpoints simple to program.

Scatter of pressure output against voltage command with a fitted straight line
Gauge pressure at the regulator outlet against the commanded voltage, with the least-squares line.

How small a change in grasping force can you feel?

We ran a small user study with the method of constant stimuli. The participant imagined grasping a cylinder of fixed size but adjustable stiffness, with no graphics. The standard stimulus was a jamming pressure of −45 kPa; the seven comparison stimuli ran from −48 to −66 kPa in 3 kPa steps. Each pair was presented ten times in random order, the participant could switch between the two as often as they liked, then answered whether the comparison felt stiffer or the same.

I fit a normal cumulative distribution to each participant’s proportion of “stiffer” responses in MATLAB and read off the 0.25, 0.50 and 0.75 levels to get the point of subjective equality (PSE) and the difference threshold.

Psychometric function: proportion of stiffer responses rising from about 0.2 at minus 48 kPa to 1.0 at minus 66 kPa, with a fitted sigmoid
Participant 1's psychometric function. Dashed line: the PSE at the 0.50 level; dotted lines: the 0.25 and 0.75 levels used for the difference thresholds.
  • Participant 1 gave a clean sigmoid: a PSE at −54.0 kPa and a difference threshold of about 3.5 kPa.
  • Participant 2’s curve was nearly flat (PSE −61.8 kPa, threshold about 22 kPa), and they said they were mostly guessing. The comparison range was probably too weak for their sensitivity, so a wider range would be needed to place their threshold.
  • Both found the glove comfortable enough for the session, but grasping tired the finger muscles and needed short breaks. Letting participants switch freely between stimuli likely sharpened discrimination but lengthened the session.

What we concluded

The glove could simulate pinching and render high grasping forces. The next steps we identified: more precise position sensors, the ability to jam each finger on its own, more convenient straps, a shorter protocol, and more participants, ideally after a quick preliminary study with the method of adjustment to pick a sensible pressure range.