Bachelor Summer Program in Physical Computing

=Introduction to Physical Computing (PhyComp)=

Date: June 3 - July 13, 2013

Instructors : Maxime Besacier (main contact), Didier Donsez, David Eon, Olivier Richard, Jean-Michel Molenaar, Jean-Baptiste Joatton.

Organisation : 60 h

Code APOGEE : PPSTI301 (Main presentation of the BSP

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

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).

=Program Summer 2013=

Part I : Basics in theoretical and practical electronics
Instructors: Sophie Chareyron, David Eon, Maxime Besacier

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

Dedicated page: Introduction to Physical Computing


 * 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 : Sophie Chareyron, David Eon, Maxime Besacier

Duration: 16 hours

Location: Polytech Grenoble


 * Basics in Robotics
 * Motors driving (power electronics)
 * Object detection (interfacing sensors)
 * Programming of robot’s behaviors : path following, Labyrinth exploration, ...
 * 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: Jean-Michel 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 : Introduction to Product Design
Instructor: Jean-Baptiste Joatton (Pôle Supérieur de Design de Villefontaine)

Duration: 2 half-days

Location: CCSTI Grenoble


 * Introduction : design school of Villefontaine
 * Panorama : more than 50 design disciplines
 * Design definitions
 * Review of a few design process (Design thinking)
 * Design in business (Design ladder)
 * Interaction design short workshop ("Visit an exhibition")

Part VI : Visits of Enterprises' research labs
Instructor: Didier Donsez, Maxime Besacier

Duration: 6 half-days

Location: Grenoble' area
 * June 6th morning : CEA Show room with Maxime Besacier, Meeting point : Minatec
 * June 11th morning. ESRF with Maxime Besacier
 * June 27th morning : ST Microelectronics Crolles Center with Maxime Besacier, Meeting point : Polytech Grenoble' Cafeteria at 08:00
 * June 28th afternoon. Orange Labs' thinging fablab, with Maxime Besacier, Polytech Grenoble' Cafeteria at 13:30
 * July 3rd morning.  INRIA Rhône-Alpes Montbonnot (Senslab, Unmanned ground vehicle, Robotic wheelchair), with Didier Donsez, Meeting point : Polytech Grenoble' Cafeteria at 08:00
 * July 4th morning. Schneider Electrics Montbonnot Center, with Didier Donsez, Meeting point : Polytech Grenoble' Cafeteria at 08:00

=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=