In order to create a richer, more diverse space, designers should stimulate our many senses. The designer can control form, light, pattern, and color, providing visual stimulation. In the simplest way, architects and designers already make some use of touch and sound: materials provide tactile stimulation and environmental sounds and acoustical attenuation provide aural stimulation, but as mentioned throughout this work, design can go beyond traditional means and methods to use our other senses. In the past, one could not easily express things like excitement or worry through touch, changing market conditions through heat and cold, or provide a description of colors or smells with sound, but with the use of microcontrollers, sensors, and actuators, we can now relate one sense with another in various ways.
Before reviewing the programming and use of electronics, we should ensure we have a design objective to keep us focused on the intent, because the many combinations possible through the use of the microcontroller et cetera can obfuscate or draw attention away from the designer’s goal. For inspiration and hints, we can look at the precedents and possibilities given with each of the senses in this work, and then, we can determine the best relationship between that which is sensed and the action.
The microcontroller requires a conditional statement that will allow an action to take place. If this, then this creates a cause and effect, and the cause can either be something inherent or measured on the controller, such as time or a random number generator, or through measurements provided by a sensor. For the use of electronics in interiors and architecture, sensors are generally more likely the source for the “cause” part of the conditional statement. Sensors provided earlier in the work are options for this input, though there are other sensors available, as well.
The designer programs the microcontroller with some instruction for action, in response to the input given from the sensors. This action may simply be to measure the signal from the sensor, but for our purposes, it is more likely that the instructions will make some change or actions using actuators, displays, or other output devices. Many examples of actuators are provided in the sections on the senses earlier in this work. Because the microcontroller translates the input from the sensor as a number, the output can be mapped from the input levels in various ways. In addition, the designer can map or translate information from one sense to another. For example, we can map taste to cold thermoception or hearing to tension. As such, the designer does not only have a great number of actuators and outputs possible, but there are many ways these can interact with the values of the inputs. These will be explored through simple programs using the Arduino microcontroller.
There are many forms of microcontroller the designer can use, but the Arduino is one of the most popular. In addition, there are many different Arduino boards to suit the designer’s needs. For the examples here, any Arduino will do, or it is possible to complete the same actions with one of the many other controllers.
Arduino uses the Processing language to create sketches, which are small programs that drive the microcontroller. Here, we will look at five relationships of input and output.
First, the Conditional Statement (If/Then) is one of the most basic actions for the microcontroller. It is simply the response to some input. In addition, we can stack multiple conditional statements to have more specific or more nuanced outputs. These are explored in the options below.
Next, with Binary Mapping (On/Off), we can use the conditional statement to turn something on or off. If X, then 1. This is a simple action, but it is very useful in creating a dynamic environment.
One-to-One mapping treats the input and the output as continua, with some value, usually 0 to 127. The input and output can have either a direct relationship, where the output grows as the input grows, or it can have an indirect relationship, where the output shrinks as the input grows. In either case, one acts proportionately with the other.
When mapping the Threshold, the output will not happen until the input reaches some value. For example, the lights will not turn on until there is a minimum temperature in the room.
Mapping Thresholds adds a level of complexity where several things can happen depending on the level of the input. So, the number of tiles change color depending on the number of people in a room: 1 for 1, 2 for 2, et cetera.