Course Name: Physical Computing
Tutor: Angel Muñoz
Teaching Assistant: Cristian Rizzuti
The Physical Computing course will give students an essential introduction to the world of open source programming languages and physical computing. In 7 weeks students will simultaneously learn about basic coding / scripting tools that complement IaaC’s digital tools and fabrication framework. This will equip students with the necessary hardware / software to integrate interfaces, visualizing methods, data sensing, and actuations to conduct more advanced research and architectural proposals with embedded technology. We will start with the basics of the Processing language, to generate interactive media and visualized data in the digital domain. Next, students will be introduced to the Arduino IDE and microcontroller as a platform to create devices that interact with their environment using sensors and actuators. The course will conclude with an exercise in data visualization over a model, as students will be pushed to create a synchronous and meaningful interaction between the digital and physical realms. Students are similarly encouraged to use the code based tools to explore data visualization and physical computing as applied to their studios, in processes that they can integrate in their projects in following months.
Structure
The course will be divided into Processing, Arduino and Resolume sessions. The goal is to
progressively build a communication channel with these tools and between the physical and digital
worlds.
- 9 January – 15:30- 18:30
Introduction to Processing – Data, Variables, Conditionals and Loops - 16 January – 15:30- 18:30
Drawing in 3D – Transformations, Functions, Drawing in 3D - 23 January – 15:30- 18:30:
Arduino Software and Board, Hello World, Inputs(Button, Potentiometer, LDR) - 30 January – 15:30- 18:30
Outputs(Led, Servo Motor, Stepper Motor, PWM) - 6 February – 15:30- 18:30
Serial communication - 13 February – 15:30- 18:30
Resolume, Projectors, Syphon, Setup, Communication - 20 February – 15:30- 17:30
Final presentation
Submissions
There will be a total of three assignments with different weight on the final grade:
- One small assignment in Arduino (2 points)
- One small assignment in Processing (2 points)
- One Final assignment (6 points)
Attendance and participation in class will also affect the grade
Bibliography
- Massimo Banzi, Make: Getting Started with Arduino: The Open Source Electronics
Prototyping Platform, 2014 - Simon Monk, Make: Action – Movement, Light, and Sound with Arduino and
Raspberry Pi, 2016 - Adam Greenfield, Everyware: New Riders, 2006
- Tom Igoe, Making Things Talk: O’Reilly, 2007.
- Joshua Noble, Programming Interactivity: O’Reilly, 2009.
- Greg Borenstein, Making Things See: 3D vision with Kinect, Processing, Arduino,
and MakerBot: O’Reilly, 2012. - Daniel Shiffman, The Nature of Code: Simulating Natural Systems with Processing,
The Nature of Code, 2012 - Daniel Shiffman, Learning Processing, Second Edition: A Beginner’s Guide to
Programming Images, Animation, and Interaction, Morgan Kaufmann, 2015