Week 8: Input devices
Our assignment this week was to measure something and display it. My goal for this week was to make a piece of paper that could sense how it was folded (both the angle and the direction) and model this in real time on the computer screen. As you fold the paper, you will see a virtual paper fold the same way.
My first thought was to make an array of capacitive sensors. I began with Neil's example capacitive sensing board. The capacitive sensing worked but proved bad for crease sensing. It only sensed "folding" when a person was interacting with the paper. As soon as I let go, even if the paper was still folded, the signal would go back to normal (the same value as no fold).
Then I began to experiment with various resistive materials. The idea was to find a material that changed resistance when creased, but would return to its original resistance when flattened out again. I started out with a carbon-based resistive paint.The resistive paint did change resistance as it was creased. However, after flattening, the resistance was permanently higher since the paint line had essentially cracked during creasing.
I continued experimenting with resistance by mixing silicone with carbon powder, both mixing powder directly into the silicone mixture as well as dipping a streak of silicone in carbon powder. Again, both of these substances increased in resistance during the initial fold but maintained the higher resistance after successive folding due to cracking of the material.
Next I tried to make a pressure/bend sensor following Hannah's design which relies on sandwiching a piezo-resistive material between two conductive materials and then laminating the sandwich with insulating tape. As the sensor is bent, the resistance between the two conductive materials decreases. While this sensor picked up bending of the paper, it also broke after being sharply creased. In this case the different layers separated due to the crease. I then tried to make a similar piezo-resistive sensor using Pelco tabs, which are carbon-based, slightly-conductive adhesives used in scanning electron microscopy. Again the layers separated after the initial crease, which essentially broke the sensor.
Finally I arrived at a sensor that didn't break from creasing: stretching resistive yarn. As the yarn is stretched, the fibers become more tightly held together, causing a drop in resistance. Using this principle, I sewed vertical stitches along the direction of the fold so that as the paper is folded, the yarn is stretched. I found that of all the sensors, this sensor was most capable of returning to its original resistance upon unfolding. To make it work, I had to super glue the yarn to the paper, so that it didn't shift with repeated foldings. However, I couldn't super glue too many places, otherwise the fibers were unable to move (become tighter or looser) so that the resistance never changed.
With the sensor design in mind, I decided to make a simple square paper in a blintz fold (where all four corners are folded toward the middle) and placed sensors on each of the four bends. I vinyl cut a circuit using copper tape and sewed the resistive yarn directly to the copper tape to make the sensor. I also used wires to extend the ftdi connector off of the paper itself. To program, I actually left the pads of the 6-pin connector exposed and instead of soldering down a six-pin header, I the header onto the pads temporarily for programming. This made the design much cleaner, since I didn't have to worry about torquing and glueing down my components.
For programming I begain with Neil's example code for the light sensor, but switched to the Attiny44 so that I had more analog sensing pins. For display I decided to use Processing to draw a simply 2D representation of an origami paper where the flaps are drawn as triangles. One point of each triangle is determined by the corresponding sensor. The project works for the most part, though I found there to be a lot of noise in the signal. My goal is to expand this sensing into a matrix format and eventually make a completely sensing (not just along pre-defined creases) paper for my final project.
Video of the paper in action:
Back to index