APPROCCIO MAKERS ALLA PROGETTAZIONE ELETTRONICA

APPROCCIO MAKERS ALLA PROGETTAZIONE ELETTRONICA

_
iten
Codice
86985
ANNO ACCADEMICO
2019/2020
CFU
6 cfu al 3° anno di 9273 INGEGNERIA ELETTRONICA E TECNOLOGIE DELL'INFORMAZIONE (L-8) GENOVA
SETTORE SCIENTIFICO DISCIPLINARE
ING-INF/01
LINGUA
Italiano
SEDE
GENOVA (INGEGNERIA ELETTRONICA E TECNOLOGIE DELL'INFORMAZIONE)
periodo
2° Semestre
materiale didattico

PRESENTAZIONE

Il corso presenta il tema generale di "Internet of Thing" come paradigma della stretta relazione tra mondo fisico e Web, in cui le tecnologie Web (HTTP, REST) possono essere impiegate per reccogliere informazioni e attuare decisioni nel mondo reale. 

OBIETTIVI E CONTENUTI

OBIETTIVI FORMATIVI

Il corso, ispirato dal “Maker Movement”, ha l’obiettivo di incoraggiare lo studente nella realizzazione di progetti che abbiamo componenti hardware e software. Gli studenti durante il corso inventeranno, progetteranno e realizzeranno (“make”) un dispositivo seguendo il processo di progettazione ingegneristico. Il corso parte da quanto gli studenti hanno appreso negli insegnamenti di “Fondamenti di Programmazione”, che introduce i concetti di programmazione procedurale C anche su microcontrollore, “Elettronica dei sistemi Digitali”, “Elettronica” e “ Architetture dei Sistemi Elettronici” per realizzare prototipi che potranno integrare parti meccaniche, circuiti elettronici di controllo (costruiti attorno alla piattaforma Arduino) e applicazioni software locali e remote.

OBIETTIVI FORMATIVI (DETTAGLIO) E RISULTATI DI APPRENDIMENTO

Scopo del corso è fornire le basi per la progettazione e lo sviluppo di sistemi hardware/software che partono dai sensori e arrivino alla memorizzaizone di informazoni su database in cloud. Lo studente viene introdotto ai concetti API REST e aiutato a comprenderli attraverso un esercizio svolto al calcolatore durante le lezioni frontali.  L'insegnamento si pone nella direzione di formare una figura professionale capace di progettare e realizzare applicazioni software su diversi dispositivi, dai sensori al cloud.

PREREQUISITI

Lo studente deve possedere conoscenze di base di programmazione e di progettazione di sistemi digitali.

Modalità didattiche

Il corso è costruito da una parte di lezione frontale e una parte di esercitazione. Durante la lezione frontale, il docente presenta gli argomenti fornendo sempre esempi di codice che vengono provati su strumenti di compilazione. Gli studenti possono utilizzare i propri calcolatori durante la lezione per mettere in pratica quanto proposto dal docente. Durante le esercitazioni, gli studenti devono affrontare al calcolatore problemi reali che possono essere risolti applicando le tecniche viste durante le lezioni frontali.

PROGRAMMA/CONTENUTO

Il seguente elenco riporta i contenuti affrontati a lezione, per ogni contenuto un link porta alle note di ogni lezione:

01 - Introduction to IoT, WoT and Physical Computing [LINK]
02 - The Arduino Platform [LINK]
03 - Serial Communication [LINK]
04 - Sensors [LINK]
05 - JavaScript and HTTP [LINK]
06 - NodeJS [LINK]
07 - REST API [LINK]
08 - Implementing Web Things [LINK]
09 - Interoperability and Semantic [LINK]
10 - Sharing & Securing [LINK]

TESTI/BIBLIOGRAFIA

  • Lecture notes
  • Michael Margolis, Arduino Cookbook, O'Reilly
  • Dominique Guinard, Building the Web of Things, Manning
  • Tom Hughes-Croucher, Node Up and Running, O'Reilly
  • Leonard Richardson, RESTful Web APIs, O'Reilly
  • Marijn Haverbeke, Eloquent JavaScript: A Modern Introduction to Programming, No Starch Press

DOCENTI E COMMISSIONI

Ricevimento: Il docente riceve su appuntamento, per prendere appuntamento è possibile scrivere a riccardo.berta@unige.it

LEZIONI

Modalità didattiche

Il corso è costruito da una parte di lezione frontale e una parte di esercitazione. Durante la lezione frontale, il docente presenta gli argomenti fornendo sempre esempi di codice che vengono provati su strumenti di compilazione. Gli studenti possono utilizzare i propri calcolatori durante la lezione per mettere in pratica quanto proposto dal docente. Durante le esercitazioni, gli studenti devono affrontare al calcolatore problemi reali che possono essere risolti applicando le tecniche viste durante le lezioni frontali.

INIZIO LEZIONI

come da calendario didattico

ESAMI

Modalità d'esame

L'esame consiste in una interrogazione orale sugli argomenti teorici presentati a lezione. In particolare, lo studente deve dimostrare di aver comprso appieno i concetti alla base dello sviluppo di API secondo il paradigma RESTful.

Modalità di accertamento

Durante l'orale, il docente chiede allo studente di illustrare alcuni concetti imparati a lezione. Per ogni concetto, lo studente deve anche presentare le condizioni per la sua applicazione, gli eventuali vantaggi e svantaggi. Durante la prova, il docente accerta che i concetti siano stati appresi ad un livello di conoscenza tale da permettere allo studente di applicarli in casi reali.