Offerta Didattica

 

ENGINEERING AND COMPUTER SCIENCE

EMBEDDED SYSTEMS

Classe di corso: LM-32, 18 - Classe delle lauree magistrali in Ingegneria informatica
AA: 2020/2021
Sedi: MESSINA
SSDTAFtipologiafrequenzamoduli
ING-INF/05CaratterizzanteLiberaLiberaNo
CFUCFU LEZCFU LABCFU ESEOREORE LEZORE LABORE ESE
64024824024
Legenda
CFU: n. crediti dell’insegnamento
CFU LEZ: n. cfu di lezione in aula
CFU LAB: n. cfu di laboratorio
CFU ESE: n. cfu di esercitazione
FREQUENZA:Libera/Obbligatoria
MODULI:SI - L'insegnamento prevede la suddivisione in moduli, NO - non sono previsti moduli
ORE: n. ore programmate
ORE LEZ: n. ore programmate di lezione in aula
ORE LAB: n. ore programmate di laboratorio
ORE ESE: n. ore programmate di esercitazione
SSD:sigla del settore scientifico disciplinare dell’insegnamento
TAF:sigla della tipologia di attività formativa
TIPOLOGIA:LEZ - lezioni frontali, ESE - esercitazioni, LAB - laboratorio

Obiettivi Formativi

OF1 (Conoscenza e comprensione) - Fornire le conoscenze di base sugli aspetti teorici e pratici legati alla progettazione e all’analisi dei sistemi embedded con particolare riferimento alle tecniche di programmazione dei microcontrollori, all’acquisizione dati da sensori analogici e digitali e al controllo di sistemi di attuazione. Fornire un quadro generale delle varie categorie di sensori e attuatori disponibili sul mercato e i principi di base del loro utilizzo. OF2 (Capacità di applicare conoscenza e comprensione) - Consentire agli studenti di essere in grado di realizzare prototipi di sistemi embedded funzionanti mediante l’applicazione delle metodologie apprese. OF3 (Autonomia di giudizio)- Favorire l’autonomia dello studente che sarà messo in grado di avere una visione critica sulle principali problematiche riguardanti i sistemi embedded quali la presenza di requisiti real-time, i tradeoff tra costi e prestazioni ed il consumo di potenza e di essere in grado di progettare in autonomia un sistema embedded tenendo conto dell’insieme dei requisiti presenti. OF4 (Abilità comunicative) - Far acquisire la terminologia di base e la capacità di interloquire con linguaggio tecnico appropriato alla disciplina. Lo studente sarà messo in grado di comunicare le motivazioni delle scelte tecniche adottate e di rappresentare adeguatamente i risultati ottenuti. OF5 (Capacità di apprendimento) - Sviluppare nello studente un metodo di studio individuale adeguato a consentire l’approfondimento delle conoscenze acquisite. Fornire una capacità di aggiornamento autonomo rispetto all’avanzamento delle tecnologie con particolare riferimento ai linguaggi di programmazione di alto livello utilizzati nell’ambito dei sistemi embedded e alle principali componenti hardware.

Learning Goals

OF1 (Knowledge and understanding) - Provide basic knowledge on the theoretical and practical aspects related to the design and analysis of embedded systems with particular reference to microcontroller programming techniques, data acquisition from analog and digital sensors, and control of actuation systems. Provide an overview of the various categories of sensors and actuators available on the market and the basic principles of their use. OF2 (Ability to apply knowledge and understanding) - Allow the students to be able to create working prototypes of embedded systems by applying the learned methodologies. OF3 (Autonomy of judgment) - Encourage the development of students' autonomy. Students will be able to have a critical view on the main problems concerning embedded systems such as the presence of real-time requirements, the tradeoffs between costs and performances, and the constrains on power consumption and to independently design an embedded system taking into account all the requirements. OF4 (Communication skills) - To acquire basic terminology and the ability to speak with technical language appropriate to the discipline. The student will be able to communicate the reasons for the technical choices made and to adequately represent the results obtained. OF5 (Learning skills) - Develop in the student an individual study method suitable to allow the deepening of the knowledge acquired. Provide an independent capacity of knowledge update with respect to the advancement of technologies with particular reference to the high-level programming languages used in the embedded systems and to the main hardware components.

Metodi didattici

Lezioni frontali. Esercitazioni in aula. Esercitazioni in laboratorio.

Teaching Methods

Frontal lessons. Classroom exercises. Laboratory exercises.

Prerequisiti

Conoscenze di reti logiche, elettronica di base, architettura dei calcolatori, programmazione assembly, programmazione C.

Prerequisites

Knowledge of logic networks, basic electronics, computer architecture, assembly programming, C programming is required.

Verifiche dell'apprendimento

Il corso prevede una prova orale atta a valutare il livello di apprendimento raggiunto. Inoltre, è richiesta una attività di progettazione (opzionale) sotto forma di realizzazione di un prototipo e di un elaborato scritto (tesina) da presentare e discutere il giorno della prova orale. L'argomento della tesina dovrà essere concordato con il docente.

Assessment

The course includes an oral test aimed at assessing the level of learning achieved. In addition, a project activity (optional) is required in the form of the implementation of a prototype and a written report (paper) to be presented and discussed during the oral exam. The topic of the project must be agreed with the teacher.

Programma del Corso

Introduzione ai sistemi embedded. Microprocessori e Microcontrollori. Le schede Arduino. L’ambiente di sviluppo Arduino. L’utilizzo del linguaggio C per la programmazione dei sistemi embedded. La scheda Arduino Uno. Il microcontrollore Atmel ATmega 328p. Hardware Abstraction Layer (HAL). HAL Atmel. L’ambiente Atmel Studio. Sensori analogici e digitali. Interfacciamento di sensori e attuatori. GPIO. Polling. La gestione degli Interrupt. I Timer. Uscite analogiche PWM. Protocolli di comunicazione. UART/USART. SPI. I2C. Accelerometri. Giroscopi. Magnetometri. Motori DC. Servo motori. Motori stepper.

Course Syllabus

Introduction to embedded systems. Microprocessors and microcontrollers. Arduino boards. The Arduino development environment. The use of the C language for programming embedded systems. The Arduino Uno board. The Atmel ATmega 328p microcontroller. Hardware Abstraction Layer (HAL). Atmel HAL. The Atmel Studio environment. Analog and digital sensors. Interfacing sensors and actuators. GPIO. Polling. Interrupt management. The Timers. Analog PWM outputs. Communication protocols. UART / USART. SPI. I2C. Accelerometers. Gyroscopes. Magnetometers. DC motors. Servo motors. Stepper motors.

Testi di riferimento: ALI MAZIDI, NAIMI, NAIMI “The avr microcontroller and embedded systems using assembly and c” - Pearson Prentice Hall BARNETT, O’CULL, COX “Embedded C Programming and the Atmel AVR 2e” - Delmar Cengage Learning

Elenco delle unità didattiche costituenti l'insegnamento

Docente: FRANCESCO LONGO

Orario di Ricevimento - FRANCESCO LONGO

GiornoOra inizioOra fineLuogo
Martedì 15:00 16:007° piano blocco B del Dipartimento di Ingegneria
Giovedì 15:00 16:007° piano blocco B del Dipartimento di Ingegneria
Note:
  • Segui Unime su:
  • istagram32x32.jpg
  • facebook
  • youtube
  • twitter
  • UnimeMobile
  • tutti