Risorse bibliografiche
Risorsa bibliografica obbligatoria
Risorsa bibliografica facoltativa
Scheda Riassuntiva
Anno Accademico 2022/2023
Scuola Scuola di Ingegneria Industriale e dell'Informazione
Insegnamento 057880 - DIGITAL SYSTEMS DESIGN
Docente Salice Fabio
Cfu 10.00 Tipo insegnamento Monodisciplinare

Corso di Studi Codice Piano di Studio preventivamente approvato Da (compreso) A (escluso) Insegnamento

Obiettivi dell'insegnamento

The aim of the course is to introduce skills for the contextualization, definition, requirements, and implementation -through system integration, data analysis, and algorithms- of a cyber-physical system. These systems, which are able to interact continuously with the physical environment in which they operate, combine the computational capacity, communication, and control capacity. Cyber-physical systems are typically based on microcontrollers, dedicated sensors and actuators, and communication means (wired and/or wireless). A cyber-physical system is a special-purpose system and is intended to be part of more complex systems. The context is the field of Ambient Intelligence (AmI) envisages a digital environment where humans interact with multiple smart electronic devices that are aware of the context they operate and are capable of adapting their response to the users' requirements, anticipating their behavior and responding to their presence. Processing power is embedded and distributed in all the devices located in the environment, in what is denoted as "ubiquitous computing" or "pervasive computing". Different application areas are currently being pursued depending on the specific environment considered: smart homes, smart buildings, smart cities, smart transportation systems, etc. Particularly interesting are the applications of AmI in such areas as people's well-being (services and support, assistive technology, ... ), mobility, commerce and marketing, enterprises and handicrafts, fashion, leisure and entertainment, tourism, healthcare, environmental management, arts and culture, agriculture.

The course also includes the practical use of boards for embedded systems and related development environments (e.g. Arduino and STM32 - Core / MBED).

Risultati di apprendimento attesi

- Knowledge and understanding (DD 1)

  • Students will learn to deal with the design process of a computer system (for example, the collection definition and refinement of requirements, the analysis of previous works, the definition of the system, the identification of sensors and actuators based on the needs of the project, the data analysis and the definition of algorithms).
  • Students will learn how to design and program a computer system, with particular emphasis on interacting with the external physical environment.

- Apply knowledge and understanding (DD 2)

  • Students will be able to independently design a digital system;
  • Students will be able to evaluate and select the elements of the digital system;
  • Students will be able to write small embedded programs that interact with the physical environment;

- Making Judgments (DD3)

  • Given a specific problem and design cases, students will have the ability to analyse functional and extra-functional characteristics and to independently compare different choices in terms of HW and SW.

- Communication Skills (DD4)

  • Students will be able to communicate the idea behind the developed project, and to justify the design choices made, to an audience made up of specialists and non-specialists.

- Lifelong learning skills (DD5)

  • Students will be able to understand how to develop a real embedded system project;
  • Students will be able to independently learn how to use and program state-of-the-art embedded computer systems;
  • Students will be able to independently learn the new micro-architectural features of computer systems.

Argomenti trattati


  • Ambient Intelligence: structure and classification; life cycle; design constraints, examples

Embedded System Design and Programming

  • Embedded Programming: the concept of embedded C; introduction to PYTHON; interacting with the environment: usage of digital and Analog I/O, PWM, timers and Interrupts; communication protocols; debouncing and calibration.
  • Microcontroller Boards: Arduino and STM32 boards and development environments; EPS32 board; introduction to Raspberry; extension shields for managing sensors, actuators and communication networks.
  • Real-world perspectives and sensing: designing digital systems for controlling real-world devices: from the idea to the prototype. Overview of sensors and signal conditioning. 

Sessions are performed in presence according to the teaching schedule. The course is composed of a mix of lecture sessions and design support. Students directly learn, apply and test their acquired knowledge on the design problem to be solved. Learning modes consist of critique analysis of previous/existing works, lecture presentations, own design exercise (programming, integration of systems, verification and test of the prototype, data analysis, ... ), own work presentations and, the demo of the prototype. Projects with innovative and applied aspects are encouraged. 

Prototyping consists of proving/showing the validity of the proposed idea - minimum viable prototype (MVP). An MVP is an "object" with sufficient features to validate the idea early in the product development cycle. The main goal of an MVP is to receive user feedback as quickly as possible in order to iterate and improve the "product". 

The working group has to be of 2 students. Groups of 3 or more students are strongly discouraged. 

Obiettivi di sviluppo sostenibile - SDGs
Questo insegnamento contribuisce al raggiungimento dei seguenti Obiettivi di Sviluppo Sostenibile dell'Agenda ONU 2030:


Basic knowledge in computer programming and foundation of electronic circuits

Modalità di valutazione

Students are required to produce (note: percentage are indicative):

3 points: Innovativeness 100%

33 points: Final Paper 35%  – Pitch 15 % – Video Spot 10% - Prototype  35% - Innovativeness 5% 

  • Final Paper (paper - format latex – from 6 pages) [.pdf – 35%]
    • Title ( ~100 char - spaces included) & Authors
    • Abstract (~1000 chars  spaces included)
    • INTRODUCTION (3500 chars spaces included) [5%]
    • RELATED WORKS (~ 4500 equivalent chars spaces - text, tables and pictures -) [10%]
    • PROPOSED SOLUTION (5500 equivalent chars spaces included - text, tables and pictures -) [10%]
      • III - a System Specifications and Requirements
      • III - b General Architecture
      • III - c Relevant Characteristics of the System (example: III-c-1. Automatic Calibration & Initialization III-c-2. Meta Algorithm )
      • III – ? (use this if you need other space or sections) - Specify the title
      • IV-a Prototype
      • IV-b Experimental results
      • IV-? (use this if you need other space or sections) - Specify the title
  • Pitch (10 minutes – final presentation) [.pdf or .ppt 8% - presentation 7%]
  • Prototype [35%]
  • Video Spot (60 seconds) [10%]

The final presentation and video will also enable students to demonstrate their communication and technical skills.

NOTE: in the document, all sections are “mandatory” – any missing section will invalidate the entire document.

NOTE30cum Laude will be assigned when the total score is higher or equal to 31.

Risorsa bibliografica facoltativaMargolis, M., Arduino Cookbook: Recipes to Begin, Expand, and Enhance Your Projects
Risorsa bibliografica facoltativaHendr, I., ESP32 Development using the Arduino IDE (English Edition)
Risorsa bibliografica facoltativaCameron, N., Electronics Projects With the ESP8266 and ESP32: Building Web Pages, Applications, and Wifi Enabled Devices
Risorsa bibliografica facoltativaSchwartz, M., Internet of things with Arduino cookbook
Risorsa bibliografica facoltativaMonk, S., Programming Arduino Getting Started with Sketches
Risorsa bibliografica facoltativaIgoe, T., Making things talk. Third Edition
Risorsa bibliografica facoltativaGulliksson, H., Pervasive Design, fourth edition (English Edition)
Risorsa bibliografica facoltativaOsterwalder A., Value Proposition Design: How to Create Products and Services Customers Want

Software utilizzato
Nessun software richiesto

Forme didattiche
Tipo Forma Didattica Ore di attività svolte in aula
Ore di studio autonome
Laboratorio Informatico
Laboratorio Sperimentale
Laboratorio Di Progetto
Totale 100:00 150:00

Informazioni in lingua inglese a supporto dell'internazionalizzazione
Insegnamento erogato in lingua Inglese
Disponibilità di materiale didattico/slides in lingua inglese
Disponibilità di libri di testo/bibliografia in lingua inglese
Possibilità di sostenere l'esame in lingua inglese
Disponibilità di supporto didattico in lingua inglese
schedaincarico v. 1.8.3 / 1.8.3
Area Servizi ICT