Publicação em Diário da República: Despacho n.º 7795/2021 - 09/08/2021
6 ECTS; 3º Ano, 1º Semestre, 28,0 T + 42,0 PL , Cód. 911253.
Docente(s)
- Ana Cristina Barata Pires Lopes (1)(2)
(1) Docente Responsável
(2) Docente que lecciona
Pré-requisitos
N/A
Objetivos
Pretende-se que os alunos desenvolvam capacidades e competências de projeto, desenvolvimento e manuseamento de sistemas embebidos em tempo real. Estes sistemas serão baseados em microcontroladores ESP32.
No final da Unidade Curricular os alunos deverão conhecer e saber aplicar os conceitos que suportam o projeto e desenvolvimento de sistemas embebidos em tempo real, em particular, os conceitos (suportados por sistemas operativos em tempo real) de: tarefas, filas, gestão de tempo, recursos e eventos.
Pretende-se que durante a Unidade Curricular os alunos desenvolvam vários projetos baseados no microcontrolador ESP32 e o sistema Operativo em tempo real FreeRTOS.
Programa
1 - Introdução aos Sistemas Embebidos e em Tempo Real
i) - Definições e conceitos gerais
2 - Introdução ao FreeRTOS
i) - Distribuição do FreeRTOS
ii) - Criar um projeto FreeRTOS
3 - Gestão de Tarefas
i) - Funções e estados de uma tarefa
ii) - Criação de uma tarefa
iii) - Prioridade de uma tarefa
iv) - Temporização e interrupções de ticks
4 - Filas
i) - Conceito e características de uma fila
ii) - Como usar as filas
iii) - Gestão de filas
5 - Gestão de Tempo
i) - Atributos e estados de um temporizador de software
ii) - Criar e usar um temporizador
iii) - Gestão de temporizadores
6 - Gestão de Interrupções
i) - Utilização da API do FreeRTOS a partir de uma ISR
ii) - Semáforos
iii) - Utilização de filas a partir de uma ISR
7 - Gestão de Recursos
i) - Suspensão do Agendador (Scheduler)
ii) - Mutex
8 - Gestão de Eventos
Metodologia de avaliação
Trabalhos laboratoriais em ambiente real e de simulação (50%); dois testes escritos em avaliação contínua ou, alternativamente, exame escrito (50%) (obrigatório classificação mínima de 40% no exame e classificação mínima de 50% nos trabalhos laboratoriais).
Os alunos só terão aproveitamento à UC se a nota final (trabalhos laboratoriais + testes escritos ou exame) for superior ou igual a 9,5 Valores em 20 Valores.
Bibliografia
- Barry, R. e , . (2016). Mastering the FreeRTOS Real Time Kernel - a Hands-On tutorial Guide. (pp. 1-371). N/A: Real Time Engineers Ltd
- Lee, E. e Seshia, S. (2017). Introduction to Embedded Systems: A Cyber-Physical Systems Approach, 2nd ed. N/A: MIT Press
Método de Ensino
Aulas teóricas com exercícios práticos e experiências e projetos laboratoriais em ambiente real e simulação.
Software utilizado nas aulas
FreeRTOS
IDE Arduino
VS Code
Git
Aprovado em Conselho Técnico Cientifico: 11 de dezembro de 2024
Download da Ficha da Unidade Curricular (FUC)