|
Introduction
Working with electronic technology can seem mystifying especially when
you are trying to build your own device, but like any production it can
be broken down
into a series of steps, for which there are tools to make the
work viable. In this section we will look at media artworks
both for inspiration and to glean an understanding of how they were
crafted. We also discuss the production cycle in the context
of
technology, which necessitates a different approach problem solving and
pacing.
-Instructor and Student Introductions
-Artists
in the field
-Production:
-Planning
-Research
-Sourcing
-Experimenting
-Prototyping
-Debugging.
Crack
the Whip: First Application and Demo
To get our feet
wet, we build a simple application demonstrating the basic
workflow of Physical Computing. An enhanced version of the project is
then demonstrated to show how the techniques are scaleable to more
powerful tasks.
Lab 1: Digital
Output - Blink an LED:
-Install Arduino
-Open example code
-Build Circuit with Arduino Microcontroller
-Upload program
-See results
-Demo: Blinking power outlet (same code, more power)
-Demo: LED diplay matrix (same technique, greater quantity)
Programming with Microcontrollers
Oh
blah, programming...actually it's not that bad. In fact, programming
can be amazingly interesting. We use a reduced vocabulary to instruct a
machine to perform a task. In the world of physical computing
this might be turning on a light, spinning a motor, or reading
a
sensor. The hardware is connected to a tiny computer called a
microcontroller which is program via a PC. Once programmed we can
detach the PC and leave the setup to perform the task any time the
right conditions are met.
-Microcontrollers
-what they do
-how to use them
-varieties and selection
-Basic Programming
Concepts
-Commands
-Functions
-Initializing
-Loops
including 'Main'
-Variables
-Conditional Statements: If/Then
-I/O -
input/output
-From idea to code
-Build Circuit to match code
Lab 2:
Digital Input - Reading a Switch
-Code from Scratch
Electronics
We back up at this point to learn just enough about
electricity to know what's happening
in the circuits you build, and how to debug any problems.
In this section we cover the basics: Ohm's law, schematics,
proper design, and of course how to
make things happen (blink, spin, switch, crawl). We'll also learn where
to find parts,
and basic components you'll need to continue on your own.
-Ohm's Law:
-Voltage, Resistance, Current, Power.
-Circuits
-Series Vs. Parallel
-Basic
Components:
-Resistors
-Capacitors
-Diodes
-LEDs
-Switches
-Batteries
-Basic Tools
-Multimeter
-Breadboard
-Where to find parts (Shopping)
-How to choose parts (Spec Sheets)
* Please click here for
a full list of supplies.
Sensors and Actuators
Having covered the basics, we now look at more dynamic I/O types.
Sensors are used to monitor physical
events. Tactile sensors can be attached to an object's surface to
learn how it is being touched. Video cameras can be used to track
motion in a
room. Microphones can be used to search for specific sounds. Once
you've found the pattern you're looking for, you can trigger events
such as the playback of video or audio clip, or activate an
actuator... An actuator is device such as a motor,
solenoid, speaker, or heating element which
changes its physical properties when electricity is applied.
We
learn how to make use of sensors and actuators in our creative
applications.
-Digital vs. Analog
-Analog Input - Continuous Sensors
-Passive Sensors
-Potentiometers
-Bend Sensors
-Light Sensors
-Pressure Sensors
-Active Sensors
-Ultrasonic Sensor
-InfraRed Sensor
-Accelerometer
Lab
3: Analog Input - Reading a Sensor
-Analog Output
-Lights and Brightness
-Motors and Speed
-DC Motors
-Transistors
-H-Bridges
-Stepper
-Servos
Lab
4: Analog Output - Dimming an LED
Lab 5: Controlling a Motor (Servo*)
Interfacing
with a computer
It's often useful to incorporate a PC, especially
if the project requires manipulation of audio or video. PCs have much
more computing power, and interesting and familiar software we want to
use in our work. There are simple ways to connect circuits to
PCs
such that we can have physical interaction with computer that
go
beyond the keyboard, monitor, and mouse.
-Serial Communication
-baud rate (communication speed)
-adapters
Lab 6:
Serial Communication
Programming
Graphics and Audio
Now
that we can hook up our circuits to our computers, we need to
succinctly map the data to the media of our choosing. If you work with
audio, you may want to use incoming sensor data to control the volume,
pitch or selection of an audio clip. If you work with video or
graphics, you may want to coordinate the movement of an element across
a screen with the motion of motorized object within the installation
space. How is this done? We get oriented with a couple of programming
options that allow media manipulation. We focus on Processing which
is in keeping with the Arduino
language and so not such a big jump. We look briefly at Puredata which is a
bigger leap yet a very powerful piece of software particularly for
working with audio.
-Processing: <http://www.processing.org>
-Similarities and Differences with Arduino
-2D & 3D graphics
-Vectors
-Drawing
-Color
-Geometry
-Animation
-Interaction
-Saving Media
-Video capture/manipulation
-Video tracking
-Typographics
-Particles
-Image Filters
-GUI
-Sound
-Playback
-Channels
-Sythesis
-Analysis
-Effects
-Networking
Lab 7: manipulating
audio/video with sensors
Lab 8:
transmitting data from PC to control motors
-PureData
(Pd): <http://www.puredata.info>
-Graphical Programming: Max/MSP, Puredata
-Libraries: GEM, PMPD, PiDiP
-Basic
Programming Concepts
-Objects
-Messages
-Numbers
-Working with Media
Advanced
Topics
This section introduces an array of topics that are very interesting
and extremely useful to a Physical Computing practice, but are too
difficult to learn how to practice within the timeframe of this
workshop. Instead, key techniques will be briefly explained
and resources pointed out for self-guided exploration of each topic.
-Printed
Circuit Boards
-Physics Modelling
-Machine Learning
-3D printing
Good Practice
In this final section of the workshop
we'll review the general concepts, and will look at how to implement
all this technology into diverse projects. Strategies will be taught
for designing projects that will last, and for troubleshooting in a
pinch. We'll also have a chance to discuss you're own projects.
-Sketches
-Schematics
-FlowCharts
-TroubleShooting
-Purchasing
Indendant Project Development
-class discussion
|