This is a tantalizing glimpse; do tell what you're up to!
Look into electronic drums for potential solutions, a few use a resistive
rubber of some kind. Most use a piezo disk as a sensor.
Mostly analog solution:
A piezo disk mounted to a flexible lattice, which in turn is embedded in
vinyl foam (or similar) might do just the trick. Add a couple more piezo
sensors on the same lattice and you could triangulate any surface contact.
Electronic drums do a similar thing to detect different "zones" (pad and rim
shot to be exact) they do a differences function to see which sensor had
the greatest impact then cut the output of the NON hit zone, so it doesn't
sound, anyway I digress.
The key to above is that the piezo's must have a solid coupling with the
lattice, as this extends there effective base size, thereby making them
sensitive over a larger area. I suppose it wouldn't need to be a lattice
structure, any semi rigid material would work, but I was imagining something
Seems to me, you need to have one sensor for every 12" x 12" chunk of skin.
If you make several "zones" you'll need to do the same sort of thing that
the e-drums do to avoid cross talk between sensors. If the sensors are
physically linked, you will need to do solve the crosstalk problem with
electronics and/or logic.
Hey, is there a market for such a product? Maybe I should make some up and
sell it here?
That's an interesting idea. The nature of the piezo sensor would make it
ideal for simply gluing it to the inside of a shell. Unfortunately, to
cover any given area, you'd need Length*Width number of sensors.
Granted, that's still somewhat acceptable at those prices, but the
wiring would be a nightmare.
My initial plan was to overlay strips of conductive rubber, creating an
x-y array of contacts out of multiple strips. By applying voltage to an
x strip and measuring a y strip with an a2d, you could have a fairly
robust, yet simple pressure sensitive sensor network. This would have
the advantage of requiring only Length+Width number of sensors for any
given area. This is the method used in most keyboards and other large
arrays of buttons.
Thanks for the interesting tangent you put me on! Iv had a lot of mind fun
thinking about this problem.
I see the merit in a x,y matrix, you might find a way to do something
similar to the resistive film used in touch screens. These only use 4
connections points and based on the relative resistance between the four can
figure out the x,y location.
Playing with this idea. makes me want to try something like this.
I assume that the conductive rubber has some measurable resistance over
distance, i.e. a 1 inch piece has less electric resistance than a 2 inch
piece. This property is analogous to the resistive film used in touch
screens. Now let's take a square sheet of conductive rubber, and place it
over a sheet of some flexible conductor (will metallized Mylar balloons
work?) the two can't touch (until you want them to) so you'll need to figure
out a spacing method. (Maybe a thin plastic mesh between the two layers)
Anyway we will call the bottom conductor the anode and the top sheet of
rubber the electrode. The middle piece, non-conductive we will call the
"spacer." Now if we simply connect a lead somewhere on the perimeter of the
electrode(the rubber sheet) and another lead to the anode (the bottom
conductor) we would have a simple normally open switch that when closed,
should have increased resistance as you get further away from the electrode
connection point. Clear? Now, if we add a second lead to the electrode on
a different axis to the first we should be able to measure resistance
between that electrode contact and the anode too! Do you see it? You now
have increased resistance as you get further away from electrode connection
A and a different resistance value as you get further away from electrode
connection B! Make A your "x" and "B" your "y" and you effectively have the
coordinates of contact with only three wires! Of course you'll need to
figure out how to convert these resistance values into real locations on the
skin, but that should be pretty trivial. (famous last words!)
Regarding the piezo disk method.
I somewhat disagree to needing very many piezo disks for a largish area.
Piezo disks are very sensitive. Seems to me, if you have a 3 or 4 foot
square surface, and have three piezos attached and disperse locations, you
should then be able to use some math to triangulate impact points anywhere
on the surface. The same impact would arrive at different times and
strengths to each sensor.
But, better yet, my continued research (thank you internet!) has led me to
conclude that the best skin sensor would be made using Metallized Piezo
Film. It has many wonderful attributes that would be useful for robot skin.
This site has some interesting info, particularly interesting is the method
they have of creating custom etchings on full metallized sheets using a 9v
battery and dull scalpel to vaporized the metallized layers this allows for
complete custom etching.
Restive rubber supplier!
Ah how bout this stuff.. they even have a liguid form for casting custom
skin! Dont need to build your own layered thing like I sugested above...
A great idea, with only one major problem. Triangulating a contact point
only works if you're making contact with just one point. That's why I
thought my method had more merit, since it could sense multiple contacts
within the array simultaneously.
I thought the same thing just a little while ago...weird..
regarding the conductive rubber method. I can see how a single point
detection is a problem. What if you had two contact points for each axis,
one on either end of the axis. This should give you a "square" of contact..
Picture a square, with connections on the perimeter. The connections are on
the center line of each axis. I.e. contacts on the top middle, right
middle, bottom middle and left middle.
if you place your whole hand any where on the surface you will create a
"bounding box" that is as long as your hand and as wide as your hand, though
the shape of your hand will be lost. This is even more like the resistive
film in touch screens method.
Ok, we've talked abstract.. why on earth do you need robot skin? Inquiring
minds want to know! lol
I think you followed fine.. My design presuposes a singel touch event... if
you want to track multiple touches at the same time then you will need some
sort of switch at every location (logic, infered, contacts or otherwise)
I supose it realy depends on what you expect the skin to do.
Id want my skin to tell my micro where and how hard it was touched. Just
like a touch mouse, But YMMV.
Heck, my robots are still just modifed RC toys. So Im not even thinking
about skin (other than as this thought experiment)
Polytechforum.com is a website by engineers for engineers. It is not affiliated with any of manufacturers or vendors discussed here.
All logos and trade names are the property of their respective owners.