CODICE | 86985 |
---|---|
ANNO ACCADEMICO | 2020/2021 |
CFU |
|
SETTORE SCIENTIFICO DISCIPLINARE | ING-INF/01 |
LINGUA | Italiano |
SEDE |
|
PERIODO | 2° Semestre |
MATERIALE DIDATTICO | AULAWEB |
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.
L’insegnamento, 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.
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.
Lo studente deve possedere conoscenze di base di programmazione e di progettazione di sistemi digitali.
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.
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]
Ricevimento: Il docente riceve su appuntamento, per prendere appuntamento è possibile scrivere a riccardo.berta@unige.it
RICCARDO BERTA (Presidente)
ALESSANDRO DE GLORIA
FRANCESCO BELLOTTI (Presidente Supplente)
come da calendario didattico
L'orario di tutti gli insegnamenti è consultabile su EasyAcademy.
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.
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.
Data | Ora | Luogo | Tipologia | Note |
---|---|---|---|---|
04/01/2021 | 09:00 | GENOVA | Esame su appuntamento | |
08/02/2021 | 09:00 | GENOVA | Esame su appuntamento | |
05/07/2021 | 09:00 | GENOVA | Esame su appuntamento |