Sense glove

 

Fingerless glove with adjustable proximity dector

Fingerless glove with adjustable proximity dector

This is an investigation of how we might use interactive technology to extend our senses. I mounted the Arduino (with mini project board) on a wrist brace, along with an ultrasonic range-finder, a custom-built flexible rotary input device, a thermistor (embedded on the inside), an LED, a piezo element and a small pager buzzer. In addition, a thermistor (mounted in soft foam) was connected by a length of flexible cable so that it could be placed in the wearer’s armpit. The Arduino was programmed to periodically “chirp” the piezo with two tones corresponding to the levels of the wearer’s core (armpit) and distal (hand) temperatures. Secondly, when the range-finder detects an object closer than the distance set by the rotary input device, the pager buzzer vibrates and an LED lights up.

 

Sensors and Arduino mounted on a wrist brace.

Sensors and Arduino mounted on a wrist brace.

My first goal was to mount all of the hardware on the glove so that the user experience was unencumbered by any tethering to external components such as the Arduino or battery pack. This required building mounting brackets for the Arduino and battery pack out of popsicle sticks and twine. The mini project board was mounted to the top of the Arduino using another stick to support one side. That stick was further used as a strain-relief for some of the wires, and as a mounting platform for two RJ-11 jacks (salvaged from small inline DSL filters). The rangefinder and rotary input device were fitted with RJ-11 plugs on short tails so they could be securely connected but easily detached. The thermistor was threaded into a channel on the inside of the wrist (which previously held a metal stiffener) and fed through a slit, then sewn into the inside of the glove. The pager buzzer was inserted into the same channel and both sets of wires were run along the outside of the glove to the project board. The rangefinder was glued and wired to a stiff piece of plastic with velcro on the back, to mate with the existing velcro covering the back of the glove. The rotary input device (a small potentiometer with a short length of flexible rubber tubing slid over the knob) was mounted to a clothespin so it could be clipped into position and adjusted until the end was just in reach of the wearer’s fingers.

Glove mount for Arduino and battery pack
RJ-11 jacks

Glove mount for Arduino and battery pack (above) and RJ-11 jacks

While this configuration allowed the hardware to be fully mounted on the glove, there were several lessons learned:

  • wires must be run so that they allow full movement, including opening and closing the item; in this case, that was complicated by the way the Arduino was mounted on the strap, which ran through grommets so that the apparent length of the strap changed as it was pulled tight. However, if the wires at least ran in the same direction as the strap, it could have been fully loosened without detaching the wires. As it was, I ran the wires in the opposite direction, so there was barely enough slack to loosen the strap enough to remove my hand.
  • comfortable wearables demand much smaller/lighter components, and would benefit from embedded wiring so you can move freely without fear of everything falling apart–ideally the user is thinking about the function of the item, not the implementation.
  • RJ-11 connectors are a little bulky for wearables, but it’s easy to find extension cables; perhaps these connectors are better used for household installations (for example, I don’t use any land-line phones in my house, so the in-wall phone wiring could be used for other purposes, such as a one-wire network.)
  • (and on a related topic) RJ-11 connectors are not consistent about the position of different colors of wire.
range-finder (upper left), Arduino (upper right), and rotary input

Side view: range-finder (upper left), Arduino (upper right), and rotary input

The range-finder presented some challenges when I first began communicating with it through the Arduino. While I could detect objects placed with a few inches of the device, once it was more than about 6 inches away from the nearest object it consistently reported the same distance. Eventually I concluded that the receiver must be “hearing” the transmitter directly, without the signal first bouncing off of any object. I placed a small piece of open-cell foam between the two ultrasonic elements and extending approximately 1/2″ beyond the ends of those elements, which solved the problem. I also had intermittent trouble with the thermistors; the one mounted in the glove seemed to occasionally lose contact with the wearer’s hand (causing a temperature drop), and might have benefitted from some foam placed behind it in the channel to maintain pressure (though this might have caused discomfort if it pressed too hard on the wrong part of the wrist). The thermistor in the armpit sometimes seemed to give erratic readings, which I suspect may have been caused by perspiration on the wearer’s skin shorting the conductors and lowering the resistance. The foam thermistor mount was also a little to thick, and could be uncomfortable in the armpit; again, wearable devices place a high premium on small form-factor.

Schematic

Schematic

Another challenge was how to get enough information to the user through ambient buzzing and beeping. The pager buzzer was supposed to buzz more strongly as it detected objects closer to the glove, but it was difficult to perceive the different levels of buzzing, so the rotary input was used to set a minimum distance threshold. I believe that modulating the buzzer and mapping distance to the rate of buzzing would have been easier to interpret, but I did not test this theory. Similarly, the core-distal chirping did not succeed at giving clear feedback about the relative temperature of the two sensed points. It’s possible that mapping a smaller temperature range to a larger tonal range would make it easier to detect different conditions (chiefly, out-of-norms conditions like too-cold hands). Additionally, since the core temperature is unlikely to change (unless the wearer is getting sick), the tone or tones could simply indicate the difference between core and distal temperatures. Perhaps the first tone could be set to a pre-calibrated “normal” difference, an the second tone could indicate the current difference. Also, mounting the distal temperature sensor on a fingertip rather than the wrist might have exposed it to greater fluctuations and produced a more sensitive indicator, but it seemed awkward to mount on a fingerless “glove”. Perhaps a short study with armpit, wrist, and fingertip temperature sensors could be conducted to establish the relationship between the three.

Thermistor in foam block (aprox. 1"x1"x4") for armpit-mounting

Thermistor in foam block (aprox. 1

 

 

You will be sensed...

You will be sensed...

The clearest conclusion from this project is that walking around with a small computer, numerous wires, and assorted strange-looking hardware strapped to one’s wrist and beeping at regular intervals–basically, your typical cyborg getup–is a good conversation-starter. However, it was not clear from the beginning of the project exactly what extra-sensory information was needed and how it would be used, so the project was more of a guided exploration of several interesting pieces of hardware and programming notions.

View sense_glove code for Arduino

Advertisements

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s