We Are Experiencing Some Turbulence

Michael Schippling
Axle Contemporary, Santa Fe, New Mexico
Control Software Architecture

The control system seems to be working just about right. In theory anyway. I have no idea how it will look or behave once everything is in place. But at that point I can only make small tweaks...so I guess we're good to go...

The idea is that there are sensors on the back of the truck which affect how long-and-strong the fans are on -- blowing stuff around -- inside. However the response to the sensors is not always 1::1, i.e., Mr. Turbulence is moody. Sometimes he gets over-excited and at other times he is asleep. He does however always respond to a new input (person wandering around) in some way, so we know he's not completely broken...

Sensors

There are four sensors on the back of the truck. One is a PIR -- porch light motion sensor -- which detects hot moving objects within a range of 10 or 20 feet. The other three are IR distance sensors that are good around 1-5 feet. So the system gets a signal when someone is nearby, and then much stronger directional signals when they are close to the back window.

ADC

The sensor values are converted to digital data in a range of 0-7, where the strength is relative to how long the PIR sensor is triggered and how close someone is to any of the distance sensors. This is done about 17 times a second.

Sensor Task

The converted sensor values are sent to a task which decides how long each output fan should be turned on. Each sensor controls two of the eight fans. A weak signal turns on only one for a short time (two seconds out of fifteen) and a strong signal operates both fans for a longer period.

Mood Map

The Mood Map modifies the sensor signals for the Sensor Task such that responses are not always the same over time. It maintains an internal counter that is incremented based on the total strength of all the inputs. If there is no input it cycles in about 30 minutes, and with full-on signal in about 2.25 minutes. The cycle is divided into five distinct moods: asleep, bored, normal, excited, and overloaded. When asleep only a very strong signal will wake it up. When overloaded a strong signal will make it shut-down and a zero signal will make it do something anyway. These anomolous responses have the convenient side-effect of making sure that something happens even if the sensors are broken. We hope.

PWM

The PWM module controls the actual output, turning ON individual fans with a 15 second cycle. It insures that the fans are OFF for about five seconds of each cycle. Each fan has an individual PWM counter which may not be synchronized with the others, so the fans can go on and off in many patterns. The Sensor Task tells the PWM module when to turn on how many fans and for how long, and the PWM module handles the rest.

Interactivity

My assertion is that this system is not merely Responsive, but rather Interactive -- see my attempt at rationalizing this here. This is because it has internal state -- the Mood Map -- which affects how it behaves and is in turn affected by what it perceives. In my taxonomy, a Responsive system has no internal state and will always respond the same way. I believe most "art" machines that are labeled interactive are actually responsive. But that's all theory under the bridge at this point in time.


Back to main page: Turbulence
Follow my so called thought process: Ich bin un Bricoleur
Or: Send Me Something