Introduction: The Matrix Mat is a down-scaled prototype for a pressure mat to help alleviate bed sores. The concept behind it is that a field of pressure sensors take in information every few seconds which is then compiled through a microprocessor to determine points of high pressure. Using this information it then creates an output response that raises or lowers corresponding actuators to alleviate and redistribute the pressure more evenly across the surface of the mat. The ultimate goal is to help prevent pressure ulcers from forming in sedentary patients.
Step 1: Gather Materials
1. Microprocessor system (Arduino, Raspberry Pi, Intel Edison)
2. Container/Box (we used an acrylic display box to more easily show the inner workings)
3. Breadboard and wire connectors
5. Wooden dowels
6. Plate spacer (allows the actuators to move straight up-and-down)
8. Pressure Sensors (Square Force- Sensitive Resistor (FSR) Interlink 406 from Adafruit.com)
9. Neoprene (Protective top layer)
Step 2: Assemble the Circuit
Following the above schematic each servo motor (output) corresponds to a pressure sensor (input).
Each servo motor must be connected to ground corresponding with the Arduino GND port, but due to their high amperage intake they are each powered separately by an external outlet. The are then each connected to their own digital pin that is PWM (pulse-width modulation) compatible (this is any of the digital pins with a '~' next to the number).
The pressure sensors are each fed from a power and ground line connected to the Arduino. The are also placed in series with a resistor on the bread board because the sensors we used are variable resistors with a starting value >10000 ohms.
All red wires represent power, all black wires represent ground, all white wires represent port connections. Different colors were used for each respective pressure sensor to make building and coding less confusing.
Step 3: Write the Code
Our code (attached to this step) computed the FSR read value to the more usable unit of pounds. (Since each pressure sensor is the same size and thus has the same surface area, just pounds gave us an accurate pressure reading since pressure is represented as Force/Area). It then determined the extreme values in the simplified 4-by-4 matrix. Whichever extreme (either the low or high pressure values) was more of an extreme, i.e. farther from the computed average, became the targeted output. The generated output would rotate the servo motors 10 degrees which corresponded to either an up or down motion. If the high pressure point was most extreme the generated response would be to move that actuator down. If it happened to already be as far down as possible, the code instead outputs the response to move surrounding actuators up, in hopes of alleviating pressure from that one point.
Step 4: Assemble "The Box"
1. Place the circuitry on the bottom of the box. To keep the microprocessor and breadboards from shifting they were attached with tape. The breadboards already had a "stickable" bottom in which we just removed the cover seal. The Arduino was attached with electrical tape. One 1'' hole was drilled by a bottom corner of the acrylic display case for the servo motor power plugs and Arduino computer USB connector to be fed through.
2. Attach the servo motors to the side of the display case. This was done by drilling small holes where the servo motor screws were located and screwing them on through the wall of the display case. This was made stronger by putting Epoxy on the servo motor screws before being screwed back into place. On each servo motor a PVC cam was attached (also with Epoxy) in order to create a wider and smother surface for the actuators to move along.
3. Place in an actuator shelf. We used wood due to available materials. About 3/4'' holes were drilled into the wood shelf overlaying where the servo motor cams were located. It was placed in on small wooden notches attached to each corner of the box all at the same height level. This allowed the shelf to be removable if need be for further prototyping.
4. Assemble the actuators. Ours were made from 3/4'' wooden dowels each 1.5'' in height with half a bouncy ball glued to the top. The only purpose of the bouncy ball was to create a rounded pressing surface.
5. Place the general foam on top of this layer.
7. Attach the pressure sensors to the foam. We did this by sewing duct tape patches to the foam directly above the servo motor cams and respectively the actuator pieces. We then attached the back of the pressure sensors to the duct tape to ensure they stayed in one place.
8. Add the protective/"mat-like" neoprene layer. This was also done by hand sewing. We placed X's where each pressure sensor was to make it easier to demonstrate at different design competitions.
Step 5: Finishing Touches
This instructable describes our first prototype of the matrix mat (of which a schematic is pictured above).
Also please check out the video of this project! The video helps explain why we chose to make the matrix mat prototype and also gives a real view of it working in action.