|
Andrew@Milmoe.com
|
|
| |
Introduction to Physical
Computing
Adjunct Professor Andrew
G. Milmoe
Wednesdays 6:30pm - 9:00pm
H79.2301.05 - Fall 2004
- Course Description
- Projects
- The ITP Physical Computing
Homepage
- Links
to (nearly) all things Physical Computing
- Recommended
reference and reading material
- Student Journals
Stuff to Get:
- Parts you'll
need for Intro. to Physical Computing
- A useful starter
toolkit
- Parts,
suppliers and part numbers of some items in the lab
- Parts
sold at the NYU computer store:
(242 Greene Street. Phone: 212.998.4672)
Class topics and assignments by week:
1 - 2 - 3
- 4 - 5 - 6
- 7 - 8 -
9 - 10 - 11
- 12 - 13 - 14
Office hours
Monday 6:00pm to 9:00pm
by appointment. Schedule appointments in advance by e-mail
|
Note: This page
contains links out to some of the extensive Physical Computing resources
on the ITP web site rather than reproducing their content here...
Students enrolled in this course should bookmark this page and check
back weekly as information is subject to change.
|
| Top
|
Course Description
This course expands the students' palette for physical interaction
design with computational media. We look away from the limitations of
the mouse, keyboard and monitor interface of today's computers, and
start instead at the untapped expressive capabilities of the the human
body. We consider uses of the computer for more than just information
retrieval and processing, and at locations other than the home or the
office. The platform for the class is a microcontroller, a single-chip
computer the size of a postage stamp, programmed using BASIC. The core
technical concepts are digital, analog and serial input and output.
Students have two large projects to build skills with the microcontroller
and related tools, and a final assignment in which they apply the principles
from weekly assignments in a creative application. There are also weekly
readings on related topics, and students are expected to maintain an
online journal of their progress in the course.
|
|
| Top
|
Lab Assignments:
There is a lab activity for nearly every class in the semester. They
are very short, simple activities. These are the basic steps you need
to go through to understand the principle discussed in class each week.
They're designed to help you not only to understand the technical details,
but also to get a feel for what the technologies we're discussing can
do, so that you can incorporate them into actual applications. There
are application suggestions in many of them as well. I expect that each
student will at least complete the steps outlined in the lab activity
each week, so that you understand practically what it is we're talking
about. Document any discoveries you make, pitfalls you hit, and details
not covered in the class or the lab that you think will be useful for
your fellow students and future students in this class.
Projects
There are three assigned projects during the semester. These are three-week
assignments in which you observe a possible situation in which you might
use physical computing, develop and build a prototype to fit the situation,
test it, and report on it.
For one of the first two projects, you will be assigned to work in
a group. For the other project, and for the final, you may work alone
or in groups, as you choose. There will be four to seven assigned groups,
depending on class size. Half the groups will be featured on the first
project, and half will be featured on the second. When your group is
one of the featured groups, you'll present during all three weeks of
the project. Even when you're not featured, you should complete the
project and document your work online (see journal, below).
Each week, the featured groups will present their work on the project.
In the first week, you'll present the location or situation you observed,
and what you propose to do there. In the second week, you'll present
your prototype, at least partially working. You should also explain
the technologies used in this week, particularly if you're using a new
sensor or device. In the third week, you'll present the working prototype
and report on what you observed when people used it.
More details on the projects can be found in the project
brief.
|
My Notes:
|
| Top
Student Journals:
Chia
Hao Cheng
Dimitri Darras
Richard
Hauck
Lamar
Hines
Wlodek
Koss
John
Schimmel
Jennifer
Tran
David Yates
|
Journal & Documentation:
You will be expected to keep an online journal of your work in this
class. Think of it as a letter to the next group to take this class:
the tricks you found that work, the pitfalls you hit, ways around them,
sources for materials, reference material, etc. It can be no-frills
HTML, no pictures necessary, just notes. Blogs and wikis are fine. A
Moveable
Type installation is available for all students to use on the ITP
server. Feel free to use it to set up a blog if you don't have much
experience making websites. No flash, shockwave, or other sites that
are not text-searchable, please. Here's a template
you can use. Ideally, it will give you a head start on documenting your
projects for future portfolio reference, and those who come after you
a place to look for advice.
A journal entry is part of the assignment for each project you do,
at the least. Feel free to do more entries as you see fit. These will
be added as links to the class site.
Work on this as you go, don't put it off until the end. Your fellow
classmates will find your notes as useful too.
See the HTML
template with areas you should consider for each project.
You should document your projects thoroughly. Plan in advance, and
perhaps as a group, to have what you need to document each project.
Photos, video, drawings, schematics, and notes are all valuable forms
of documentation.
A few good recent sample journals:
- Lisa
Cohen
- Ray
Cha
- Sasha
Harris-Cronin (see the Constructions link)
- Jen Lewin's Blueink site
- Kari
Martin
- Many
others
Grading:
- Participation & Attendance: 15%
- Lab Assignments: 15%
- Project 1: 15%
- Project 2: 15%
- Final: 20%
- Journal: 20%
|
My Notes:
You have the option of using Moveable Type as a way of recording you
journal. More details to as they become available...
I find journals challenging, but especially crucial. If you don't document
it then it never happened.
|
| Top
|
Participation &
Attendance
Showing up on time, engaging in the class discussion, and offering advice
and critique on other projects in the class is a major part of your grade.
Please be present and prompt. Lateness will hurt your grade, as I use
the "ghost rule." Show up late, and you can stay, but you can't
talk or ask questions. Late attendance affects your grade adversely. If
you're going to be late or absent, please email me in advance. If you
have an emergency, please let me know.
Please turn in assignments on time as well. For every week an assignment
is late, it loses a letter grade, e.g. 1 week late means a maximum possible
grade of A-, 2 weeks is a maximum B+, and so forth.
Laptops
I'm all for people taking notes on laptops in class, and there will be
occasions when it'll be useful to connect to the net in class for classwork,
but please don't check email, or IM, or surf the net on unrelated topics,
or do your work for other classes in class. That's rude to everyone else
in the class.
Parts
A list
of parts needed for the first few weeks follows. You will end up spending
money on materials in this class. It can be done reasonably inexpensively,
by scavenging parts, reusing parts, and so forth, but more ambitious projects
inevitably make demands on your budget.
Books
Below are recommended texts for the course in general. Individual instructors
may have their own recommendations as well. All of them are good inspirational
guides for physical computing and computing in general. They are not assigned,
but pick up at least one of them and incorporate it in your midterm journal,
if nothing else.
Physical Computing: Sensing and Controlling the Physical World
with Computers
Dan O' Sullivan and Tom Igoe ©2004
Thompson Course Technology PTR;
ISBN: 159200346X
A book on Physical Computing written by...
um... the guys who wrote the book on Physical Computing. Includes all
the stuff covered in class and lots of advanced examples as well.
The Design of Everyday Things
Donald A. Norman ©1990 Doubleday Books; ISBN: 0385267746
If you design at all, or work with people who do, read this. A lucid approach
to the psychology of everyday interaction and how the objects we deal
with could be better designed to match the strengths and weaknesses of
the way we think. His predictions about physical interaction design and
information design, some accurate and some not, are interesting history
lessons eleven years after the first edition.
The User Illusion: Cutting Consciousness Down to Size
Tor Nørretranders ©1998 Viking Press; ISBN: 0670875791
Makes the case that much of our experience of the world does not come
to us through our consciousness; in fact, the majority of it dealt with
pre-consciously.
Understanding Interactivity
Chris Crawford, ©2000
Self-published and written in a very casual style, this book nevertheless
is an excellent and concise summary of what interaction design is, why
it is important, and what problems it brings with it. Anyone seriously
interested in interaction design, physical or not, should read this book.
The following are good references for electronics hobbyists. Take a look
at both, and get one or the other as a general reference, or find an electronics
reference of your own (a few more are listed in the books
section of the site).
Getting Started in Electronics
Forrest M. Mims III, ©1983, Forrest M. Mims III
A very basic introduction to electricity and electronics, written in notebook
style. Includes descriptions of the basic components and what they do,
and how they relate to each other.
Practical Electronics for Inventors
1st Edition. Paul Scherz, ©2000, McGraw-Hill Professional Publishing;
ISBN: 0070580782
A more in-depth treatment of electronics, with many practical examples
and illustrations. An excellent reference for those comfortable with the
basic topics. The use of plumbing systems as examples to demonstrate electric
principles makes for some very clear illustrations of how different components
work. Good chapters on sound electronics and motors as well.
A longer list of books for inspiration and reference is available online
at the books
link.
|
|
Dates
|
Class Topics
|
Details
|
Week 1
September 8th Top |
Presentation
- Introductions
- Cover the syllabus and class structure
- Digital vs. Analog
- Logic vs. Power Circuits
- Introduction to Electronics: Definition
of electronic components, reading a volt/amp meter, reading a schematic,
relationships between the basic elements.
- Soldering
(thanks to Jeff Feddersen for the link)
Assignments for next week
- Join the PhysComp
listserv
- Start your journal and e-mail
me the URL
- Lab assignment: Basic
Electronics
- Pick up the reading packet from the book store
- Read Buxton "Less
is more, More or less"
|
You should
be able to order up to three sample chips directly from Microchip by registering
with their website.
The chip we will be using in class is a
PICmicro Microcontroller
PIC 18F452-IP
We'll get in to more details about what this is and how it works soon,
(the site is a bit intimidating at first) but you should place your request
for samples so that they arrive in time to use them later in the semester.
In the mean time they should be available in the computer store.
|
Week
2
September 15th Top |
Presentation
-
Microcontrollers: what they are, different types, levels.
- Intro
to PIC and PIC
Programming
- Digital
input and output
- Serial
Output (for debugging, more detail in Week 6)
- Introduction to Project
1, assign groups (Kind of like "The Apprentice")
Assignments for next week
- Lab Assignment: Digital
input and output using the PIC microcontroller
- Begin Project 1
- Reading for Week 3: Crawford, Understanding Interactivity, chapters
1 and 2. (Now for Week 5)
- Sign up for mandatory tool safety secession in the workshop
to be completed by week 3 or 4
|
|
Week
3
September 22nd Top |
Presentation
- Memory
and variable types: bianary, decimal, hexadecimal (hex)
- Analog
input: what an analog to digital converter (ADC) is.
Assignments
- Project work: Present location and observations.
- Lab Assignment: Variables
and Analog Input Analog in; tracking changes with variables; practical
jokes
- Reading for week 4: Myron Krueger, "Responsive Environments",
in Packer & Jordan, Multimedia: From Wagner to Virtual Reality,
ch. 12, pp104-120.
|
|
| Week
4
September 29th
Top |
Presentation
- Analog
Output : Sending a signal to devices that create analog motion or
sound... servos, freqout, pulse width modulation (PWM)
Assignments
- Show prototype of Project 1
- Lab assignment: servo/analog
out
- Reading for Week 3: Crawford, Understanding Interactivity, chapters
1 and 2.
|
The reading for week 3
was moved to this week. It is also available
online. |
Week
5
October 6th Top |
Presentations
- Project 1: everyone presents their results to the class.
Assignments
- Reading for Week 6: Norman, Design of Everyday Things, ch. 1
|
|
Week
6
October 13th Top |
Presentations
- Serial
communication: Sending bytes out
- Serial
interpretation: Understanding the bytes (ASCII)
- Serial to desktop: Data
in to Processing
- Introduction to Project
2
Assignments
- Begin Project 2
- Lab Assignment: Serial
output and Talking
to Processing
- Reading for week 7: Nørretranders, User Illusion, ch. 6, "The
Bandwidth of Consciousness"
|
Note: use the Serial Out
assignment to get yourself setup and then proceed with Talking to Processing.
|
Week
7
October 20th Top |
Presentations
- Musical Instrument Digital Interface (MIDI)
and other control protocols
Assignments
- Project 2: present instrument, show observations
- Lab Assigment: Talk
to a MIDI device
- Reading Assignment: Applications: ThinkCycle
|
|
Week
8
October 27th Top |
Presentations
- Digital Output: Transistors and relays: Controlling
higher-current electrical devices (light bulb and switch)
- Motors
and inductance
- Controlling
DC motors and Stepper
motors
Assignments
- Project 2: Demonstrate Prototype
- Lab Assignment: DC
Motor control
- No reading assignment
|
|
Week
9
November 3rd Top |
Presentations
- Project 2: everyone presents their results to the class.
Assignments
- Think about your final, be prepared to
talk about it next week.
- Reading for week 10: Hoffman, Visual Intelligence, ch. 7, pp.172-184
|
|
Week
10
November 10th Top |
Presentations
- Discuss Final Project
3
- Video
Tracking
- Project planning - methods and approaches (and review of methods from
previous projects)
Assignments
- Begin Final Project
|
|
Week
11
November 17th Top |
Presentations
- Final Project: show observations (five to eight projects, chosen
at random)
- Project workshop
Assignments
- Work on Final Project
|
|
Week
12
November 24th Top |
Presentations
- Final Project: Demonstrate prototype (five to eight projects, chosen
at random)
- Project workshop
Assignments
- Finish your final project, then make it better, then document it
in your journal.
|
|
Week
13
December 1st Top |
Presentations
Final Project Presentation: First half
|
|
Week
14
December 8th Top |
Presentations
Final Project Presentation: Second Half
|
|
 |
Happy Holidays

|
 |