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