Bachelor Summer Program in Physical Computing

=Introduction to Physical Computing (PhyComp)=

Instructors : Didier Donsez, David Eon, Olivier Richard, Sophie Chareyron, Jean-Michel Molenaar

Organisation : 60 h

Lecture / tutorials / homeworks / lab and company visits (LIG Domus, CCSTI's fablab, Orange Labs' thinging fablab, Schneider Electrics' HOMES show room)

Prerequisites : Elementary notions of programming and electronics. Notions in C or Java languages are appriciated but not mandatory.

Topics: Computer Sciences, Electronic, Instrumentation

Physical computing (PhyComp) focuses on interactions with the physical world using a variety of sensors and actuators that are controlled by microcontrollers and computers. An important feature is that developers are not usually specialists of embedded and ubiquitous computing. This results in development tools that emphasize the simplicity of programming and developing these types of applications.

The Arduino project is a prime example of this movement. It offers both an experimental board, built around a low cost microcontroller with a few input-output ports, and an integrated development environment that simplifies its usage. This board is now extensively used in a large array of contexts, including: rapid prototyping, testing and education around physical computing.

This module introduces the technical aspects of development with the Arduino platform and presents the user community that has grown around it. It offers an opportunity to gain experience on the Arduino platform by prototyping physical computing applications with a mix of sensors and actuators including making the things shells in a fablab using laser cutters, 3D printer, ... (see pictures below).

=(Preliminary) Program (Summer 2012)=

Part I : Basics in theoretical and practical electronics
Instructors: S. chareyron/ D. Eon

Duration : 4 hours

Location: Polytech Grenoble

All you need to know to start in electronics !

Part II : Introduction to Physical Computing with Arduino
Instructor: O. Richard

Duration: 16 hours

Location: Polytech Grenoble


 * Introduction Physical Computing
 * Definition, Principles and Examples
 * Presentation Arduino Project in brief
 * Arduino Board, Environment
 * Arduino Language
 * Practicals: First Arduino Board Use


 * Components of Physical Computing
 * Microcontroller in brief
 * Sensors and Actutors
 * Arduino Language:
 * Variable, Control Structure
 * Input/Ouput Operations
 * More about Language
 * Practicals: Second Arduino Board Use


 * Communication: Computer - Arduino
 * Serial, Bluetooth, Xbee (with Android phone)
 * Language for Computer: Processing
 * Practicals: Advanced cicuits

Part III : Robotic with Arduino


Instructors : D. Eon & S Chayeron

Duration: 16 hours

Location: Polytech Grenoble


 * Basics in Robotics
 * Motors driving (power electronics)
 * Object detection (interfacing sensors)
 * Programming of robot’s behaviors
 * Communication between robots (IrDA, zigbee, bluetooth)
 * Student project (by group of two) : Design and realization of an autonomous mobile robot based on the Magician Chassis

Part IV : Introduction to Fablab (Factory Laboratory)
Instructor: JM. Molenaar

Duration: 8 hours (one morning, one afternoon)

Location: CCSTI Grenoble


 * Introduction : What is a "Fablab" (Factory Laboratory)?
 * Visit of the CCSTI Expo on Fablab
 * Introduction to the lab, the machines and the tools : laser cutters, vinyl cutter, CNC mill, reprap, 3D printers.
 * Class on digital construction (CAD / CAM)
 * Designing / cutting / adapting / expending of robot Magician Chassis.
 * ‘Homework’ : design a snap fit construction kit


 * Review of homework
 * Cutting / milling of kits
 * Construction
 * Evaluation / ideas for new projects / possible uses

Part V : Visits of Enterprises' research labs
Instructor: D. Donsez

Duration: 4 half-days

Location: Grenoble' area
 * LIG Domus
 * Orange Labs' thinging fablab
 * Schneider Electrics' HOMES show room)
 * INRIA Rhône-Alpes @ Montbonnot (Senslab, Unmanned ground vehicle, Robotic wheelchair)
 * others to be confirmed

=Books=
 * Massimo Banzi, Getting Started with Arduino, Pub. Make; 1 edition (October 15, 2008) ISBN-10: 0596155514
 * Tom Igoe, Making Things Talk: Practical Methods for Connecting Physical Objects, Make; 1 edition (September 28, 2007), ISBN-10: 0596510519 (source of examples). Second Edition, Released: August 2011 (est.)  ISBN-10: 1449392431,  ISBN-13: 978-1449392437, http://oreilly.com/catalog/0636920010920
 * Joshua Noble, Programming Interactivity: A Designer's Guide to Processing, Arduino, and OpenFrameworks, O'Reilly Media, July 2009 (source code)
 * Jonathan Oxer et H. Blemings, Practical Arduino: Cool Projects for Open Source Hardware, Apress, Janvier 2010, http://www.practicalarduino.com, http://books.google.fr/books?id=iwzo1-zmVXEC

=Ressources=
 * Physical Computing: http://www.tigoe.net/pcomp/
 * Arduino: http://www.arduino.cc/
 * Pratice support: http://www.sparkfun.com/tutorial/AIK/ARDX-EG-SPAR-PRINT-85.pdf
 * Processing: http://processing.org
 * OpenProcessing: http://www.openprocessing.org

=Gallery=