Smart Objects (6 CFU)
This course introduces the basics of smart objects, i.e., objects able to interact with an external environment and with other objects.
The aim of the course is to provide students with the background needed to develop a product prototype featuring interaction capabilities.
The topics covered in the first part include the notion of smart object, principles of object-environment interaction, and some basics
on programming, with emphasis on command execution.
The second part of the course is devoted to the prototyping platform Arduino, and covers aspects of elementary circuit design and Arduino
programming. Students will learn how to make a product prototype able to interact with the external environment, through a simple circuit
controlled by Arduino.
- Course taught from Oct 9, 2016 to Jan 21, 2018
- Lectures will be held on Mon 14.30 - 16.30, 17.00 - 19.00 in classroom F7
- Student hour: please check
- Smart Objects: Overview
- The Sense-Think-Act Interaction Paradigm
- Overview of the Arduino Structure
- Basics on Programming (Sketch for Arduino)
- Sensors and Actuators
- Interfacing with Sensors and Actuators
- Elementary Circuit Assembly
- Arduino Projects
- Oct 9, 2017: Course starts
- Oct 23, 2017: Today's lecture is postponed to Thu 26, at 14.30 in Room F4.
- Nov 13, 2017:
- Today's lecture (Mon 13) is cancelled.
- The lecture of Mon 20 is postponed to Thu 23, 9.00 - 13.30, in Room F4.
We will be using the "Arduino Project Book", i.e., the standard book that comes with the
Arduino Starter Kit. You don't have to buy any of these (of course, you can, if you want).
For Arduino and the respective hardware, please take a look at our
For the book, you can photocopy any of the copies that I will circulate
(without violating the copyright as the book
is released under a
Creative Commons License
Students are required to buy the Arduino platform together with some components that will
be used during the course. Teams (of max 3 people) can buy a single platform (+ components)
to use in their project. A basic shopping list is reported below. This will be used to learn the
basics of Arduino programming and circuit assembly. Additional components
may be needed, as the course progresses. These will be announced as well.
Of course students can buy additional components, if needed by their prototype.
Oct 9, 2017: Welcome lecture joint with the other courses of Product Design.
Oct 16, 2017: Introduction. Smart Object overview,
Arduino structure, Sketch program structure.
Basic Sketch Instructions: pinMode, digitalWrite, delay.
Variables, comments. Exercises.
Oct 26, 2017: constants, digitalRead, if-then-else. Exercises.
Oct 30, 2017: conditions, loops: while, for. Exercises.
Nov 6, 2017: 1st delivery review.
Nov 13, 2017: Lecture cancelled.
Nov 20, 2017 (moved to Nov 23):
Textual output. AnalogRead, AnalogWrite.
Basics on Electric circuits (current, voltage, breadboard).
Nov 27, 2017:
Basic components: buttons, resistors, diodes, LEDs.
Basic components: LDRs.
Basic principles of circuit assembly (decoupling of sensor and actuator circuits).
Exercises. (Slides 104 - 127)
Dec 4, 2017: 2nd delivery review.
Dec 11, 2017: Lab.
Dec 18, 2017: Lab.
Jan 8, 2018: Lab.
Jan 15, 2018:
Information about exam
The exam consists in a set of 2-4 questions about all the topics of the program.
Students are required to implement, in teams, a prototype that features interaction capabilities.
This will be done through 3 deliveries.
During the final delivery, questions about interaction aspects (including Arduino and programming) will be asked
to all team members and will contribute to the final mark.
Marking (1st delivery; 2nd delivery; final project and exam): 10% 10% 80%
Course attendance is compulsory and will contribute to marking.
(For exam registration please check Infostud two weeks before the exam date)
24/01/2018, h. 9.30, Classroom F7
5/02/2018, h. 14.30, Classroom F4
16/02/2018, h.10.00, Classroom G31 (Via Gianturco, 2, 3rd floor)
14/06/2018, h.10.00, Classroom F7
26/06/2018, h.12.00 Professor room (ground floor)
10/07/2018 (class and time to be defined)
07/09/2018 (class and time to be defined)
21/09/2018 (class and time to be defined)