Trabalho 1 - 2024-2
1. Objetivos
- Este trabalho tem como objetivo realizar um estudo aprofundado sobre dispositivos embarcados disponíveis no mercado, com foco em descrever suas características, detalhes arquiteturais e funcionalidades. Em especial, destacamos o M5StickC PLUS, da fabricante M5Stack.
2. Seleção do sistema embarcado
-
O M5StickC PLUS é baseado na ESP32, oferecendo conectividade Wi-Fi e Bluetooth, além de uma arquitetura otimizada para aplicações em IoT, automação e prototipagem rápida. Suas funcionalidades incluem uma tela LCD, bateria integrada, sensores embarcados e suporte a uma ampla variedade de periféricos.
-
Por meio deste estudo, buscamos não apenas explorar as capacidades técnicas do M5StickC PLUS, mas também demonstrar sua aplicabilidade em projetos reais.
3. Informações a serem levantadas sobre o sistema
-
O M5StickC PLUS é um dispositivo compacto e versátil baseado no microcontrolador ESP32. Ele possui uma tela colorida, buzzer integrado, e é ideal para aplicações de prototipagem e IoT. Suas principais funções incluem controle de sensores, operação de atuadores e comunicação sem fio via Wi-Fi ou Bluetooth. O M5StickC PLUS é amplamente utilizado em projetos de casas inteligentes, robótica, dispositivos vestíveis e automação.
-
Na imagem, o dispositivo está acompanhado de módulos adicionais, como sensores e pequenos motores, destacando sua flexibilidade e aplicações em diferentes segmentos do mercado.

4. Listagem de características
- Unidade de processamento:
Microcontrolador (MCU) ou Microprocessador (MPU): incluir características como arquitetura, fabricante, frequência de clock.
| Tipo | Arquitetura | Fabricante | Frequência de Clock |
|---|---|---|---|
| Microcontrolador | RISC | Espressif Systems | 240Mhz |
-
Memória:
O M5StickC PLUS utiliza memória flash de 4MB. -
Sistema Operacional:
- O M5StickC PLUS utiliza como base o chip ESP32, que não possui um sistema operacional nativo por padrão. Em vez disso, ele opera sobre uma camada de firmware, como o Espressif IoT Development Framework (ESP-IDF) ou outros firmwares compatíveis. Isso permite aos desenvolvedores criar aplicativos específicos diretamente no hardware. Algumas implementações podem incluir um sistema operacional em tempo real (RTOS), como o FreeRTOS, que é integrado ao ESP-IDF, para gerenciar tarefas e recursos de forma mais eficiente.
-
Sensores e Atuadores:
-
Sensores: O M5StickC PLUS é equipado com sensores integrados e suporte para módulos adicionais, sendo ideal para monitoramento e interação com o ambiente.
- Acelerômetro: Para detecção de movimentos e inclinações.
- Sensor de Temperatura e Umidade: Pode ser adicionado como módulo externo para monitoramento ambiental.
- Sensor de Luz ou Proximidade: Disponíveis como acessórios para detecção de luminosidade ou objetos próximos.
-
Atuadores: O M5StickC PLUS permite controle de diversos atuadores, como:
- LEDs RGB: Para indicações visuais (incluindo o LED embutido na unidade).
- Motores Servo ou DC: Para movimentos mecânicos em robôs ou mecanismos automatizados.
- Relés: Para acionamento de dispositivos de alta potência.
- Buzzer: Embutido para alertas sonoros simples.
-
M5StickC PLUS utiliza o ESP32 como MCU, permitindo a conexão com sensores e atuadores por meio de:
-
GPIOs: Pinos configuráveis para entrada e saída digital.
-
Barramentos de Comunicação: Inclui I2C e SPI, ideais para múltiplos dispositivos conectados com alta eficiência.
-
Conexão sem fio: Utilizando Wi-Fi ou Bluetooth integrados no ESP32, possibilitando comunicação remota em dispositivos IoT.
-
5. Interfaces de Comunicação com fio do M5StickC PLUS
- I2C, SPI e UART.
6. Interfaces de Comunicação sem fio do M5StickC PLUS
- Wi-Fi, Bluetooth e IR (Infra-Vermelho).
7. Unidades de Entrada/Saída (I/O)
- Possui os pinos de GPIO (General Purpose Input/Output).
8. Fonte de Energia e Sistema de Alimentação
-
Tipos de Fonte de Energia:
- Bateria Interna:
- Possui uma bateria de lítion-ion recarregável integrada com capacidade de 120 mAh.
- Alimentação USB-C:
- Pode ser alimentado diretamente via a porta USB-C, com tensão de entrada de 5V.
-
Gerenciamento de Energia (PMIC):
- O M5StickC PLUS utiliza um Power Management Integrated Circuit (PMIC) para:
- Gerenciar o carregamento da bateria de lítio-ion.
- Regular a tensão para alimentar o microcontrolador ESP32 e periféricos.
- Proteger contra sobrecarga e curto-circuito.
-
Backup de Energia:
-
Capacitor Interno:
- O design inclui capacitores para sustentar breves quedas de energia, especialmente em operação Wi-Fi ou Bluetooth.
- Não possui uma bateria de backup dedicada para dados; funções de armazenamento de dados persistente podem ser implementadas via memória Flash integrada.
-
Circuitos de Reset:
Inclui circuitos de reset automáticos:- Garante que o dispositivo seja reinicializado corretamente após falhas.
- Botão físico de reset disponível para reinicialização manual.
-
Supervisores de Energia:
- Não há supervisores dedicados, mas o PMIC e o firmware gerenciam quedas de tensão e sobrecargas.
- O ESP32 integrado possui capacidade para monitorar condições de energia e executar ações corretivas, como entrar em modo de baixo consumo (Deep Sleep) durante baixa tensão.
-
9. Firmware e Atualizações
-
Firmware:
- O firmware básico do M5StickC PLUS é responsável por gerenciar o hardware, incluindo a conectividade Wi-Fi, Bluetooth e periféricos integrados.
- Utiliza uma combinação do ESP-IDF (Espressif IoT Development Framework) e bibliotecas específicas da M5Stack, facilitando o controle do dispositivo.
- Suporte completo a plataformas de desenvolvimento como Arduino e MicroPython, além de integração com ambientes IoT como AWS IoT, Google Cloud IoT, entre outros.
-
Atualizações Over-the-Air (OTA):
- O M5StickC PLUS suporta OTA (Over-the-Air Updates), permitindo que o firmware seja atualizado remotamente via Wi-Fi.
10. Unidade de Proteção e Segurança
-
Criptografia:
- O microcontrolador ESP32 integrado possui suporte a hardware para AES, SHA-2, RSA, ECC e HMAC.
-
Hardware Security Module (HSM):
- Embora o ESP32 ofereça funções para armazenamento seguro de chaves (eFuse e flash criptografado), o M5StickC PLUS não possui um HSM dedicado.
-
Outras Características de Segurança:
- Autenticação e Controle de Acesso: Implementável via software usando protocolos como OAuth2 ou certificados.
- TLS/SSL: Suporte nativo para comunicação segura via Wi-Fi.
- Firewall: Proteções contra ataques são possíveis de serem implementadas no nível do firmware.
11. Armazenamento Externo
- O M5StickC PLUS não possui suporte integrado para cartões SD. No entanto, expansões externas podem ser conectadas via I2C ou SPI para adicionar armazenamento extra, como módulos de cartão SD.
12. Interface com o Usuário (UI)
-
Displays: - O M5StickC PLUS possui um display integrado TFT LCD colorido de 1.14" com resolução 135x240 pixels. Suporte a gráficos personalizados para exibição de dados, animações e interfaces ricas.
-
Botões e Sensores de Toque:
- 2 Botões físicos (um principal e outro lateral) para entrada de comandos.
- O firmware pode personalizar a funcionalidade desses botões para diversas aplicações.
13. Artigos acadêmicos relacionados
-
Design and Implementation of ESP32-Based IoT Devices:
- Apresenta uma análise abrangente do ESP32 como plataforma para aplicações de Internet das Coisas (IoT), com foco em projetos educacionais e protótipos. O ESP32 é destacado por suas capacidades avançadas, incluindo processador dual-core, conectividade Wi-Fi e Bluetooth, e baixo consumo de energia. Estas características tornam a plataforma ideal para uma ampla gama de aplicações, desde automação residencial até monitoramento ambiental e agrícola.
- A aplicação educacional é um dos principais focos do trabalho, mostrando como a integração de ferramentas como ESP32, sensores modulares (Grove, STEMMA QT, Qwiic) e dispositivos de análise (Analog Discovery 2) podem simplificar o ensino de conceitos de IoT e microcontroladores. Os estudantes, após um curso introdutório, desenvolvem projetos como estações meteorológicas, sistemas de automação e monitoramento de fermentação de vinho, conectando sensores a plataformas online para coleta e análise de dados.
- Este trabalho ressalta a importância do ESP32 em sistemas embarcados devido à sua flexibilidade e eficiência. Aplicações práticas incluem monitoramento remoto, controle automatizado e redução do consumo de energia, com impactos significativos em educação e inovação tecnológica.
-
A smart energy monitoring system using ESP32 microcontroller:
- Aborda o desenvolvimento de um sistema de monitoramento energético baseado em ESP32 para fornecer informações em tempo real sobre consumo de energia em ambientes domésticos. A solução é projetada para enfrentar os desafios de consumidores no contexto de Gaza, onde há um déficit energético significativo. Utilizando a plataforma Blynk para IoT, o sistema coleta dados de medidores de energia, realiza cálculos e transmite informações via WhatsApp, permitindo que os usuários gerenciem seus consumos e despesas de maneira mais eficiente.
- Os resultados experimentais mostram que o sistema mede com precisão tensão, corrente, potência ativa e consumo cumulativo de energia, otimizando a administração de recursos. Este trabalho destaca o potencial do ESP32 e da tecnologia IoT em aplicações de eficiência energética, oferecendo uma solução econômica e eficiente para monitoramento energético em locais com recursos limitados.
-
Measurement and Data Processing from Internet of Things Modules by Dual-Core Application Using ESP32 Board:
- Explora o uso do ESP32, um microcontrolador de dois núcleos, para medições e processamento de dados em dispositivos de Internet das Coisas (IoT). A pesquisa foca na criação de uma arquitetura de software geral, reutilizável, que maximiza o desempenho do hardware e viabiliza soluções econômicas para aplicações embarcadas. O estudo exemplifica essas capacidades por meio de um sistema de medição de vibração com sensores MPU-9250.
- As contribuições incluem a implementação de um sistema que distribui tarefas entre os dois núcleos do ESP32, utilizando o FreeRTOS para multitarefas, suporte a MQTT para comunicação e interface remota via servidor web. A solução foi testada em condições laboratoriais, demonstrando sua aplicabilidade em aplicações industriais e domésticas, com potencial para expansão em futuros desenvolvimentos.
14. Produtos relacionados
O M5Stick Plus, baseado na arquitetura ESP32, utiliza um microcontrolador poderoso e versátil, amplamente utilizado em diversas categorias de dispositivos embarcados. Aqui estão cinco exemplos de produtos de mercado com arquiteturas semelhantes:
-
Smartwatches
- Exemplo: Amazfit Bip U
- Descrição: Utiliza microcontroladores embarcados para gerenciar sensores, conectividade Bluetooth e uma interface gráfica simples.
-
Placas de Desenvolvimento IoT
- Exemplo: NodeMCU ESP32
- Descrição: Assim como o M5Stick, é baseada no ESP32 e projetada para prototipagem rápida de dispositivos conectados à Internet das Coisas.
-
Tomadas Inteligentes
- Exemplo: TP-Link Kasa Smart Plug
- Descrição: Utilizam microcontroladores ESP para controle remoto via Wi-Fi e integração com assistentes virtuais, como Alexa e Google Assistant.
-
Controladores de Automação Residencial
- Exemplo: Sonoff Basic R2
- Descrição: Baseado no ESP8266 (similar ao ESP32), é usado para controlar dispositivos eletrônicos remotamente através de aplicativos móveis ou assistentes de voz.
-
Drones Compactos
- Exemplo: Ryze Tello
- Descrição: Pequenos drones que empregam arquiteturas embarcadas para controle de motores, comunicação por Wi-Fi e processamento de sensores, como giroscópios e câmeras.
15. Bibliografia
Especificações Produto M5STACK.
Micro Controlador ESP32-PICO.
Hercog, D., Lerher, T., Truntić, M., & Težak, O. (2023). Design and Implementation of ESP32-Based IoT Devices. Sensors, 23(15), 6739. https://doi.org/10.3390/s23156739
El-Khozondar, H. J., Mtair, S. Y., Qoffa, K. O., Qasem, O. I., Munyarawi, A. H., Nassar, Y. F., Bayoumi, E. H. E., & Abd El Halim, A. A. E. B. (2024). A smart energy monitoring system using ESP32 microcontroller. e-Prime - Advances in Electrical Engineering, Electronics and Energy, 9, 100666. https://doi.org/10.1016/j.prime.2024.100666
Foltýnek, P., Babiuch, M., & Šuránek, P. (2019). Measurement and data processing from Internet of Things modules by dual-core application using ESP32 board. Measurement and Control, 52(7-8), 970–984. https://doi.org/10.1177/0020294019857748
16. Integrantes
| Integrantes | Matrícula |
|---|---|
| Bruno Henrique Cardoso | 190134275 |
| Guilherme França Dib | 190108088 |
| João Gabriel Elvas | 190109599 |
