Haptics Final Experiment

One of the areas for growth in technology is in haptic feedback. Only recently have we been able to provide feedback artificially through haptic motors. These motors can be attached to sensors, and they can represent certain events in the environment. 

Some practical applications with these motors could include a proximity sensor. They could be programmed to vibrate faster when the sensor is closer to an object. If the sensor is mounted to a wearable, a blind person could be alerted via vibrations when they come closer to an object. This type of application of haptics is already existent in the Sunu Band, a commercially available product. However, the cane is already a good object avoidance tool for blind people, so the application of a haptics motor along with a motion sensor has limited commercial value. 

I personally would continue searching for how haptics and sensors can be used for blind, or deaf-blind people. It may be that the National Federation of the Blind’s own blind driver challenge car uses these types of sensors and haptic feedback for the driver. Nearby object avoidance is taken care of by the cane, but maybe I want other types of object detection, or haptics to represent data.

It is worthwhile then to learn where in the body haptic feedback is perceived best.

For my haptics final experiment, I decided to apply two ERM haptics motors with velcro to the body. I attached one to the wrist, and one to the forehead. The motors are flat and small enough that they can be sandwiched between two strips of velcro.

Velcro head band

Wrist band

I connected each motor to a breadboard by way of longer wires. The board is powered by a 9-volt battery running through a power supply board that can reduce power to 5-volts. A 100 ohm. resistor runs from the power rail on the breadboard to a small button, and the button powers the motor when pressed. The button is also wired to the ground rail on the breadboard.

Long wires are soldered to the motor to create some distance between the velcro attachments and the breadboard.

9-volt battery and power supply chip powering a breadboard with two buttons

The video below shows the system working. I clap when the wrist motor vibrates, and nod when the one on the forehead vibrates.





Group Experiment 4

Group members: Antonio Guimaraes, Ayal rosenberg, Nick Wallace, and Vince Kim.

Our group set out to create different sensations like poking, scratching, and tickling to the back of the neck. We decided to attach pipe cleaners of differing shapes to servos, then attach the servos to the head. We included a servo with sand paper attached as well for a total of three head-mounted ticklers.

Haptics 6

We played a bit with how running and poking around with the pipe cleaners would feel, and tried imagining ways to fix the pipe cleaners to the servo, and the servo to the head. We were provided with some 3d-printed servo mounts, and it wasn’t hard to get the pipe cleaners, and sand paper woven to or taped to the mounts.

Haptics 1

Haptics 3

Our experimentation with different materials on different parts of the body produced different sensations. For instance, Antonio felt a more sensual feeling with the pipe cleaner rubbing on the side of the neck, just below the ear, but something between a tickle and a chill one the cleaner was dragged across the back of the neck.

Haptics 2

Nick observed using the sand paper servo behind the neck felt like you’re getting a buzz haircut.

Putting it on the ear had a feeling of a stiff brush bristle like a shoe-shining brush. running the sand paper around the front of the neck felt pretty rough.

Haptics 7

The servos were attached to an Arduino running the servo sketch to control the range and angle of the arm mounted to the servo.

Our head mount consisted of a hose cut to size, and taped to create a circumference around and above the forehead. The servo mount was held to the head mount with pipe cleaner and tape.

We found it challenging to mount the servos to the body at the same angles as we had organically holding them with our hands at the beginning of the experiment. The hand can hold the servo at an angle further away from the target, while the band is affixed to the target, ie, the neck.

We also realized this device would not work as intended for people with long hair. We didn’t have any women as part of our team, nor a guy wearing long hair to test it out on, so we turned the mount around to the nose during the class try out period.

Group Experiments 1 through 3

Group members: Antonio Guimaraes and Noah Pivnick.

Experiment 1 introduced us to the ERM haptics motor with a breadboard and Arduino. Our motor was soldered to male pins which we connected to a small breadboard. We connected pin 13 on the Arduino to power the motor, and ran a wire from the cathode of the motor to ground on the Arduino. 

Arduino Leonardo on the left, power and ground jumper cables connected to mini breadboard on the right, small button vibe motor with short leads soldered to header pins on the breadboard.

Arduino Leonardo on the left, mini breadboard with button vibe motor on the right, close up of Noah's hand holding button vibe motor between thumb and pointer finger.

We noticed the following when taping the motor to our board and touching the board to different parts of the body:

Antonio holding mini breadboard with button vibe motor to back of hand.

Antonio holding mini breadboard with button vibe motor to inner forearm, closeup.

Touching a finger to the board gives a strong sense of haptic vibration.

Touching the breadboard to the back of the hand gives a lighter vibration feeling, but still a pretty significant one.

Touching the breadboard to the lower part of the forearm give a similar sensation to the back of the hand.

Touching the motor to the bak of the earlobe produces a strong sense of vibration. Noah feels like it gives a less sharp sensation, because of fatty tissue and no bone in the earlobe.

If you need to feel something for sure, the earlobe would be a great place to put it. And the motor remains inconspicuous to others.

Using the Arduino blink sketch to activate the haptics motor, we tested the difference in a vibration lasting 50 ms. and one lasting 200 ms. We made the vibrations 2 seconds apart.

We made the following observations:

At 200 ms. felt pretty strong vibrations in the tip of the finger.

At 50 ms. felt more subtle, Antonio says more tolerable, vibrations.

placing the motor to the back of the proximal phalange of the middle finger produced a feeling similar to the intensity from that of tip of finger, at 50 ms

Still at 50 ms. we applied some pressure to the motor with the tip of the finger. The pressure made the vibrations undetectable at this rate. We could feel the vibrations when applying pressure and changing the vibrations to 300 ms.

We also noted a tingling sensation a few seconds after letting go of the motor at 300 ms.

Experiment 2

This experiment made use of the haptic motor driver, with chip DRV2065L.

We had a chip soldered to a haptics ERM motor, the same one we used for experiment 1.

Arduino Uno at top of frame, power, ground, and two signal jumper cables wired to mini breadboard toward bottom of frame, Adafruit DRV2605L Haptic Motor Controller on mini breadboard.

We connected the chip to the breadboard, and wired it properly, then ran a sketch that ran quickly through about 120 different haptic vibrations. These pulsed, hummed, clicked, and were each supposed to give a distinct feeling from the motor. However, after cycling through 123 different options of vibration, we could not differentiate between many of them, because the code moved through them very quickly.

Running through these presets did not feel very satisfying. We were not able to get results we wanted, or to find something very useful from the presets, and that we feel we could apply right away.

Maybe the sensations would be more distinguishable if the motor were loose from the chip and breadboard, and placed in the hand. At any rate, we feel the interval between each vibration in this example could be increased, so we could tell where one vibration ended, and the next one started.

Experiment 3

In this experiment, we worked with 3 of the same haptics motors as before. We taped 3 of them on the table from top to bottom, ran them through the breadboard, connecting them to pins 1, 2, and 3 on the Arduino.

Arduino Uno in upper left corner of frame, power, ground, and three output jumper cables to long breadboard in center of frame, three button vibe motors approximately 1.5 inches apart taped to the surface of the table on the right side of the frame.

We modified the blink sketch to create a pattern with these 3 motors. 

The pattern is to vibrate motor 1 and 3 together, then motor 2 alone. 

We noticed a phenomenon called sensory funnel when two motors in close proximity vibrated against the forearm. Sensory funnel is when two vibrating motors in some proximity to one another against the skin feel like they are in the same location, or feel like just one vibrating motor.