513
edits
| No edit summary | No edit summary | ||
| (5 intermediate revisions by the same user not shown) | |||
| Line 190: | Line 190: | ||
| [https://vimeo.com/170147174 ===> VIDEO] | [https://vimeo.com/170147174 ===> VIDEO] | ||
| == Finishing the Prototype == | |||
| <br> | |||
| The plan was to implement more switches into the carpet-matrix in order to allow playing with more output possibilities.<br><br> | |||
| I achieved that by changing the design:<br><br> | |||
| 1) Layout<br> | |||
| 2) Switch Design<br> | |||
| 3) Programming<br><br> | |||
| 1) <br> | |||
| I designed a bigger and more complex layout of „switch holes“ inside the „distance grid“.<br> | |||
| The switch holes are VERTEILT all over the mat.<br> | |||
| I kept all the cut out pieces in order to change the design as I need it by putting them back in place.<br><br> | |||
| [[File:Raster_Styro.jpg]]<br><br> | |||
| 2) <br> | |||
| I changed the switch design: they now consist of two carpet-size cardboard pieces that are supplied with „circuit lanes“ made of aluminium foil. <br> | |||
| There are two cardboard pieces: one is equipped with the bottom part of each switch, the other one is equipped with the upper part. <br> | |||
| The bottom part features eight and the upper part features six „circuit lanes“ that are located in a way so that they form a kind of matrix-grid <br> when they are put on top of each other. <br> | |||
| [[File:Raster_Karton.jpg]] <br><br> | |||
| [[File:Zeichnung_Karton.jpg]]<br><br> | |||
| [[File:Zeichnung_Karton2.jpg]]<br><br> | |||
| [[File:Zeichnung_Karton3.jpg]]<br><br> | |||
| [[File:Alu_Karton.jpg]]<br><br> | |||
| [[File:Raster_Alu_Karton.jpg]]<br><br> | |||
| [[File:Alu_Karton2.jpg]]<br><br> | |||
| I first planned to use a resistor ladder for the Analog input pin of the arduino in order to minimize the amount of pins being used.<br><br> | |||
| [[File:Schematic_Raster_Styro.jpg]]<br><br> | |||
| [[File:Alu_Resistor_Ladder.jpg]]<br><br> | |||
| [[File:Alu_Resistor_Ladder2.jpg]]<br><br> | |||
| As this did not work out (too many delays in the code, too slow, a lot of noise) I changed the design by attaching a separate <br>wire to each of the eight „circuit lanes“ that go to the Arduinos digital input.<br> | |||
| Now there are 6 + 8 = 14 wires coming out of the carpet. 6 of them are used as „digital out HIGH signals“ and the other 8 <br>are used as „digital in, normally LOW“ pins that check if a button is pressed.<br> | |||
| [[File:Arduino_Raster_Karton.jpg]]<br><br> | |||
| 3)<br> | |||
| The resistor ladder idea did not really work.<br> | |||
| Therefore I decided to get a bit more into working with the Arduino Keypad library.<br> | |||
| The library is made for a 4x3 keypad matrix.<br> | |||
| This layout can easily be changed by adding more COLS and ROWS to the array.<br><br> | |||
| You can find more information about the library here:<br><br> | |||
| [http://playground.arduino.cc/Code/Keypad] <br> | |||
| [http://www.dummies.com/how-to/content/how-to-specify-userdefined-functions-for-your-keyp.html]<br><br> | |||
| [[File:Arduino_Raster_Matrix_Carpet.png]]<br><br> | |||
| External pullup or pulldown resistors do not need to be added.<br> | |||
| The code uses the built in IMPUT_PULLUP command. <br> | |||
| It is also configured to have a multi button press function for which you normally have to add diodes to each input<br> in order to prevent short circuits.<br> | |||
| I don’t exactly know why but the comments tell that these external diodes do not have to be added when using <br>the keypad library.<br> | |||
edits