Projeto final

No projeto final a desenvolver pelos estudantes, pretende-se tirar partido das funcionalidades do ESP32 estudadas nas aulas, ligando-as a componentes externos disponíveis no laboratório ou outros que possam arranjar. O projeto deverá ser desenvolvido em MicroPython no ambiente integrado de desenvolvimento Visual Studio Code apresentado nas aulas.

Lista de projetos

São vários os projetos passíveis de serem escolhidos por cada grupo de estudantes, não se pretendendo contudo que haja grupos com o mesmo projeto. As propostas de trabalhos são as seguintes:

  1. Controlo dum display c/ 4 digitos de 7 segmentos através dum “rotary encoder”
  2. Interface com um LED RGB e micro joystick
  3. Emissor e/ou recetor de sinais infravermelhos dum comando remoto duma TV
  4. Controlo dum motor passo-a-passo 35L048B-2U
  5. Interface por I2C com o DAC MCP4728
  6. Interface por I2C com o DAC DAC8574
  7. Interface por I2C com o ADC MCP3424
  8. Interface por I2C com o ADC ADS1115
  9. Interface por I2C com um sensor de pressão BMP085 presente na IMU GY-80
  10. Interface por I2C com um sensor de cor RGB TCS3200
  11. Interface por I2C com o magnetómetro MAG3110
  12. Interface por I2C com o magnetómetro HMC5883L
  13. Interface por I2C com o sensor de temperatura TMP175
  14. Interface por I2C com o sensor de temperatura ADT7410
  15. Interface 1-Wire com o sensor de temperatura DS18B20
  16. Comunicação sem fios com os módulos NRF24L01
  17. Comunicação sem fios com módulos 433MHz
  18. Comunicação WiFi recorrendo ao módulo ESP-01
  19. Comunicação Bluetooth usando o módulo HC-05
  20. Interface com o leitor de RFID RC522
  21. Interface por I2C com um módulo ZS-042 (RTC DS3231 + EEPROM AT24C32)
  22. Interface com um módulo de som DFPlayer Mini
  23. Interface com o sensor de distâncias por IR GP2Y0A21YK0
  24. Interface por I2C com o sensor de distâncias por ultrassons SRF08/SRF10
  25. Interface com LEDs RGB PL9823
  26. Implementação de uma API REST
  27. Implementação de um servidor WEB simples
  28. Uso do protocolo MQTT

Uma procura na Internet pelo nome dos dispositivos acima mencionados dará uma rápida ideia das suas funcionalidades.

Escolha do projeto

Os estudantes deverão comunicar ao docente a sua escolha de entre a lista acima indicada ou um projeto próprio caso ele cumpra os objetivos pretendidos. Esta escolha será realizada preenchendo um formulário até ao final do dia 21 de maio.

Uma vez conciliadas todas as escolhas será atribuído na aula seguinte a cada grupo um projeto juntamente com o material necessário à sua realização.

Repositório GitHub

O projeto deverá ser nomeado como T0XBYY (onde X indica-se o número da turma e YY o número da bancada do grupo) e colocado no GitHub em modo Privado mas partilhado com os docentes (joao-pedro-feup e hsm-feup).

Relatório

O relatório sobre o projeto deverá ser incluído no repositório GitHub no formato Markdown a designar por README.md, usando o seguinte template:

# [T0XBYY] : [Título do Trabalho]
- Nome do aluno 1:
- Nome do aluno 2:

## Sumário
* [Secção 1](#tag_sec_um)
* [Secção X](#tag_sec_x)
* [Secção Y](#tag_sec_y)


## <a name="tag_sec_um"></a> Secção 1

## <a name="tag_sec_x"></a> Secção X

## <a name="tag_sec_y"></a> Secção Y

Uma breve referência sobre a escrita de ficheiros no formato Markdown pode ser vista aqui, existindo também um bom tutorial sobre o assunto aqui. O VSCode possui várias extensões para facilitar a edição deste tipo de ficheiros, nomeadamente:

  • Markdown Preview Enhanced
  • Markdown All in One
  • markdownlint

IMPORTANTE: Uma vez realizada a apresentação não é possível efetuar alterações no repositório GitHub. Se tal se verificar será aplicada uma penalização na classificação.

Sessões de apresentação

As sessões de apresentação dos projetos decorrerão no dia 23 de Junho e terão uma duração de 15 minutos a começar às seguintes horas:

Grupo T01B01 – 09h00
Ricardo Moura Costa Pinto
Nuno Raimundo Pinto Barbosa

Emissor e/ou recetor de sinais infravermelhos dum comando remoto duma TV

Grupo T01B02 – 09h15
Joana Magalhães Baptista Teixeira
Mariana Silva Barbosa Castro Ramos

Interface por I2C com um sensor de cor RGB TCS3200

Grupo T01B03 – 09h30
André Beleza
Dénise Narciso

Interface por I2C com um sensor de pressão BMP085 presente na IMU GY-80

Grupo T01B04 – 09h45
Ana Carina Linhares da Costa
João Luís Magalhães Ilhão

Interface com um LED RGB e micro joystick

Grupo T01B05 – 10h00
Mafalda Silva
Cristina Cunha

Interface com um módulo de som DFPlayer Mini

Grupo T01B06 – 10h15
Juan Silva
Francisco Salgado

Interface por I2C com o magnetómetro MAG3110

Grupo T01B07 – 10h30
Francisco Santos de Vilhena Costa
José Carlos da Rocha Pacheco

Controlo dum display c/ 4 digitos de 7 segmentos através dum “rotary encoder”

Grupo T01B08 – 11h00
Bernardo Teixeira Pires
Jorge Luís Mota Fernandes

Controlo dum display c/ 4 digitos de 7 segmentos através dum “rotary encoder”

Grupo T01B12 – 11h15
Luís Afonseca
Patrícia Soares

Interface por I2C com o sensor de temperatura ADT7410

Grupo T01B10 – 11h30
José Francisco Ribeiro
Moutinho André da Costa Miranda

Interface por I2C com o magnetómetro HMC5883L

Grupo T01B11 – 11h45
Ana Francisca Assunção
José Miguel Pereira

Comunicação WiFi recorrendo ao módulo ESP-01

Grupo T01B09 – 12h00
Juliana Pinto Costa
Beatriz Moura Gomes

Implementação de um servidor WEB simples

Grupo T02B01 – 12h15
Nuno Miguel Ferreira Vivas
Mateus Gonçalves Marta

Interface com um LED RGB e micro joystick

Grupo T02B02 – 14h30
Tomás Lopes
Brigitte Ritter

Interface por I2C com o sensor de distâncias por ultrassons SRF08 / SRF10

Grupo T02B03 – 14h45
Nuno Miguel Ferreira Capitão
João Coelho Lima Folhadela

Implementação de uma API REST

Grupo T02B04 – 15h00
Mariana Marques Peixoto
Rita Fresco Ferreira Tabau

Interface por I2C com um sensor de cor RGB TCS3200

Grupo T02B05 – 15h15
Francisco Denis de Aguiar Steinmaier
João Luís Cardoso Morais Bessa

Emissor e/ou recetor de sinais infravermelhos dum comando remoto duma TV

Grupo T02B06 – 15h30
Diogo Alexandre Rodrigues dos Santos
José Luís Santo Silva Lino

Interface por I2C com o sensor de distâncias por ultrassons SRF08 / SRF10

Grupo T02B07 – 15h45
Hugo Bernardo Santos Lebre
João Pedro da Silva Brito

Interface 1-Wire com o sensor de temperatura DS18B20

Grupo T02B08 – 16h00
Rafael Tavares Moreira
Vasco Rocha Bartolomeu

Interface com o leitor de RFID RC522

Grupo T02B10 – 16h15
Sara Barros
Eduardo Marim Rodrigues

Controlo dum motor passo-a-passo 35L048B-2U

Grupo T02B11 – 16h30
José Miguel Trovao
Alexandre Correia

Implementação de uma API REST