Trabalho 2 - RoboMaster S1
Integrantes
| Nome dos integrantes | Matrícula |
|---|---|
| Gabriela de Oliveira Lemos | 170010872 |
| Joao Victor Marques Reis de Miranda | 200058576 |
| Luiz Guilherme Morais da Costa Faria | 231011696 |
| Matheus Fonseca Sousa | 170111059 |
Sumário
- Objetivo
- Seleção do Sistema Embarcado
- 2.1 Sistema
- 2.2 Seleção
- Descrição do produto selecionado
- 3.1 Funções principais
- 3.2 Público-alvo
- 3.3 Contexto de uso
- 3.4 Componentes e sensores do produto
- 3.4.1 Análise: Componentes e Sensores para a Réplica
- 3.5 Tecnologias de comunicação e controle embarcadas
- Análise técnica do funcionamento
- Proposta de reprodução com ESP32
- Pesquisa bibliográfica e tecnológica
- Comparativo com produtos similares
- Referências
1. Objetivo
O objetivo deste projeto consiste na construção de um protótipo funcional de um mini veículo robótico capaz de detectar obstáculos, realizar comunicação sem fio por meio da rede Wi-Fi integrada ao ESP32 e possibilitar o monitoramento e o controle remoto por meio de uma interface web. Este projeto será baseado no robô educacional RoboMaster S1, que será descrito nos tópicos seguintes.
Dessa forma, este trabalho visa demonstrar a aplicação prática de sistemas embarcados e proporcionar à equipe experiência no desenvolvimento e na integração de hardware e software, bem como na implementação de mecanismos de comunicação, controle e monitoramento remoto. Busca-se também explorar conceitos de concorrência e gerenciamento de tarefas por meio da utilização do FreeRTOS na plataforma ESP32.
2. Seleção do Sistema Embarcado
2.1 Sistema
O produto selecionado foi o RoboMaster S1, com documentação disponível, e consiste em um robô educacional inspirado nas competições RoboMaster, criado para ensinar conceitos de programação, visão computacional e sistemas embarcados de forma prática.
Suas principais funcionalidades consistem em movimentação omnidirecional, câmera FPV com transmissão de vídeo em tempo real para dispositivos móveis e computadores, controle remoto via Wi-Fi por meio de aplicativo, sistema de "batalha" baseado em infravermelho (semelhante ao laser tag), além de sensores de impacto e demais componentes embarcados destinados à navegação e à interação com o ambiente.
Dessa forma, o produto apresenta funcionalidades que a equipe considera interessantes de serem exploradas e reproduzidas, de forma simplificada, por meio da utilização do microcontrolador ESP32 e da lista de sensores disponibilizada para o desenvolvimento do projeto, contribuindo para o aprendizado de conceitos relacionados a sistemas embarcados, comunicação sem fio, controle de dispositivos e integração de hardware e software.
| RoboMaster S1 |
|---|
| Imagem não encontrada na origem: Imagem 1 |
2.2 Seleção
A seleção desse produto como referência para o projeto foi motivada pela disponibilidade de documentação técnica e materiais de desenvolvimento acessíveis ao público, facilitando o estudo de sua arquitetura e de suas funcionalidades. Além disso, suas características são compatíveis com os componentes disponibilizados para a disciplina, permitindo a reprodução simplificada de diversas funcionalidades por meio do microcontrolador ESP32 e de sensores e atuadores de baixo custo.
Seu caráter educacional e sua ampla utilização em atividades de ensino e robótica também contribuíram para sua escolha, assim como a existência de tutoriais e projetos semelhantes disponíveis na comunidade, que podem servir como base para o desenvolvimento da solução proposta. Cabe destacar ainda a semelhança do projeto com o trabalho que está sendo desenvolvido por um dos integrantes na disciplina de Projeto Integrador de Engenharia 2, o que favorece o aproveitamento de conhecimentos e de materiais previamente adquiridos, fator que contribui significativamente para a viabilidade da proposta.
Adicionalmente, a implementação de recursos de comunicação sem fio entre o robô e uma interface web possibilita explorar conceitos relacionados a redes, protocolos de comunicação e integração entre hardware e software em sistemas embarcados.
Diante disso, as funcionalidades inspiradas no RoboMaster S1 que se pretende implementar incluem, inicialmente, a locomoção autônoma do robô, a detecção de obstáculos por meio de sensores, a simulação de disparos utilizando emissor de laser, a exibição de informações e estados do sistema por meio de LEDs e tela OLED, além da comunicação sem fio utilizando os recursos Wi-Fi do ESP32. Ressalta-se que essas funcionalidades representam uma proposta inicial e poderão sofrer adaptações, inclusões ou remoções ao longo do desenvolvimento do projeto, em função de limitações técnicas, disponibilidade de componentes e restrições de prazo.
Pretende-se também desenvolver uma interface web que permita controlar remotamente ações como movimentação, disparos e acionamento de sinais sonoros, bem como visualizar informações relacionadas ao estado do robô. Com isso, o projeto possibilita a exploração prática de conceitos relacionados a sistemas embarcados, integração entre hardware e software, leitura de sensores, controle de atuadores e comunicação em rede.
3. Descrição do produto selecionado
3.1 Funções principais:
Como foi descrito anteriormente, o RoboMaster S1 da DJI é um robô educacional avançado que combina mobilidade de alto desempenho com sistemas de hardware imersivos. Sua base de movimentação utiliza um chassi omnidirecional equipado com rodas Mecanum, permitindo deslocamentos ágeis em qualquer direção. Acoplado a essa base, o sistema conta com uma suspensão cardã estabilizada em dois eixos que suporta uma câmera para visão em primeira pessoa (FPV) e um lançador capaz de disparar feixes infravermelhos ou esferas de gel. Para complementar a experiência interativa, o corpo do robô é revestido por uma armadura inteligente com detectores de embate integrados, projetada para registrar impactos durante os jogos de batalha.
No âmbito do software e processamento, o robô atua como uma plataforma voltada ao aprendizado de robótica, programação e visão computacional. Seu controlador inteligente integra seis módulos inteligentes que permitem o reconhecimento autônomo de linhas, marcadores de visão, reconhecimento de pessoas e de gestos e também de outros robôs S1 presentes no ambiente. Além de oferecer modos de pilotagem direta e arenas multiplayer competitivas (como Corridas e Conquistas), o RoboMaster S1 pode ser programado diretamente pelos usuários por meio das linguagens Scratch ou Python. Essa arquitetura possibilita a criação de "Competências Personalizadas" para uso durante as partidas ou a execução independente de "Programas Autônomos", estimulando o desenvolvimento prático de algoritmos de controle.
3.2 Público-alvo:
O público-alvo do RoboMaster da DJI composto principalmente por estudantes do ensino médio, universitários e jovens entusiastas de tecnologia que têm interesse em robótica, programação e ciências aplicadas. Esses usuários geralmente fazem parte de cursos de engenharia, ciência da computação, mecatrônica ou clubes de robótica, e buscam uma ferramenta prática para desenvolver habilidades em lógica, pensamento crítico e trabalho em equipe. Além disso, educadores e instituições de ensino utilizam o RoboMaster para enriquecer aulas de STEM (Ciência, Tecnologia, Engenharia e Matemática), proporcionando aprendizado interativo que envolve desde a programação em linguagens como Python até o desenvolvimento de estratégias para competições. Em competições oficiais ou torneios escolares, os RoboMasters atraem equipes que desejam testar seus conhecimentos na construção, customização e controle de robôs.
3.3 Contexto de uso
O sistema do RoboMaster da DJI tem como objetivo principal proporcionar uma experiência interativa e educativa, permitindo que o usuário aprenda sobre robótica, inteligência artificial e programação de forma prática e divertida. Ele funciona combinando hardware avançado, como motores, sensores e câmeras, com um software intuitivo que possibilita controlar e programar o robô por meio de aplicativos. Na prática, o usuário pode utilizar o RoboMaster para competições de batalha em ambientes controlados, desafios de corrida e missões de exploração, seja em cenários de aprendizado individual ou em atividades colaborativas em grupo. O funcionamento envolve a integração dos sensores para detectar obstáculos e alvos, câmeras para visão em tempo real e o uso de inteligência artificial para executar comandos programados, permitindo que se realize desde manobras simples até estratégias complexas em jogos e competições. Com isso, o RoboMaster oferece um contexto de aprendizado prático e entretenimento, onde o usuário pode experimentar o desenvolvimento de algoritmos, explorar a automação e desenvolver habilidades em ciência, tecnologia e engenharia de forma envolvente.
3.4 Componentes e sensores do produto
| DiagramaS1 |
|---|
| Imagem não encontrada na origem: Imagem 2 |
| Componente | Função |
|---|---|
| Controlador Inteligente | Unidade principal de processamento e controle do robô, usa uma CPU que suporta transmissão de imagem de baixa latência e alta definição, além de ser responsável pelas execuções dos sinais de comando. |
| Chassi com rodas Mecanum | Permite movimentação omnidirecional (frente, trás, lateral e diagonal). |
| 4 Motores Brushless | Responsáveis pela locomoção do robô. |
| Gimbal mecânico de 2 eixos | "Pescoço" do robô. Permite movimentação independente da câmera e do lançador. |
| Câmera FPV | Captura imagens e vídeos e auxilia em tarefas de visão computacional. |
| Lançador (Blaster) | Produz efeitos sonoros, que tem como objetivo simular uma batalha real. |
| Sensores de Impacto (Armor/Hit Detectors) | Detectam acertos durante partidas e competições. |
| Sensores Infravermelhos | Detectar disparos infravermelhos e possibilitar a interação com outros robôs e elementos do ambiente. |
| Motor de alta-performance | M3508I personalizado, que permite que a velocidade e os sentidos de direção do robô sejam alterados por meio da programação. Ele ainda possui sensores lineares de efeito Hall com algoritmos avançados que permitem controle com precisão. O motor também fornece segurança adicionais para a melhoria da estabilidade. |
| Armadura com sensores inteligentes | A armadura fica na parte lateral do S1, ela é composta por seis paineis blindados inteligentes para detectar o ataque de gel ou raios infravermelhos, de um S1 adversário. |
| Revestimento frontal do chassis (detector de embates integrado) | Para-choque frontal do chassi com detecção de impactos e proteção física |
| Bateria Inteligente | Alimentação do sistema. |
3.4.1 Análise: Componentes e Sensores para a Réplica
Dessa forma, selecionamos um conjunto de componentes e sensores afim de reproduzir, de forma simplificada, algumas das funcionalidades do produto.
| Componentes/Sensores | Utilização |
|---|---|
| ESP32 | Controlador principal do sistema embarcado |
| Buzzer ativo | Emissão de alertas sonoros e simulação de buzina |
| Buzzer passivo | Emissão do som de disparo do laser e emissão de sirene de alerta. |
| (3x) Led RGB 5mm | Sinalização visual de estados e eventos do robô |
| Emissor de laser | Simulação de disparos inspirados no RoboMaster S1 |
| Driver para motores L298N | Controle dos motores de locomoção |
| Kit Chassi 4wd + 4 Motores DC 3-6v | Estrutura mecânica do robô móvel, responsável pela locomoção e pela realização de manobras por meio de direção diferencial |
| Tela OLED 0.98" (I2c) | Exibição de informações e expressões visuais |
| Sensor de choque | Detecção de colisões |
| Sensor ultrassom | Detecção de obstáculos e medição de distância |
| Cabos flexíveis | Interconexão entre os componentes eletrônicos |
| Protoboard | Montagem e prototipação dos circuitos |
| Bateria | Alimentação elétrica do sistema |
| Receptor IR | Receptor para detectar o laser |
3.5 Tecnologias de comunicação e controle embarcadas
Comunicação
-
Wi-Fi e Roteador: O robô possui opções de conexão Wi-Fi direta ou através de um roteador. Esse sistema permite a comunicação com o aplicativo RoboMaster em dispositivos móveis (iOS/Android) ou em computadores (Windows/Mac).
-
Barramentos CAN: O controlador de movimento do robô utiliza portas CAN Bus para a conexão de dados com o módulo de armadura e com a suspensão cardã. A suspensão cardã, por sua vez, usa o barramento CAN para se conectar ao blaster e ao controlador inteligente.
-
Portas Auxiliares: O controlador de movimento possui uma porta de saída PWM cujo ciclo de trabalho pode ser programado via código. O sistema também dispõe de uma porta S-Bus que permite a conexão com um receptor para o uso de telecomandos de terceiros.
Controle embarcado
-
Controlador Inteligente: Este é o módulo que integra os sistemas de transmissão de vídeo, controle de jogos e programação. Ele suporta seis módulos inteligentes: reconhecimento de linhas, marcadores de visão, pessoas, gestos e outros robôs S1.
-
Controlador de Movimento: É o módulo central responsável pelo deslocamento do chassi. Ele integra o algoritmo de controle de roda omnidirecional, o sistema de gestão de energia e o sistema de gestão dos motores sem escovas.
-
Programação Customizável: O sistema pode ser programado utilizando blocos da linguagem Scratch ou escrevendo em Python. O código escrito pelo usuário pode ser executado pelo robô de maneira independente como um "Programa Autônomo" ou acionado como "Competências Personalizadas" no aplicativo.
-
Máquina de Estados de Jogo: A operação do robô é dividida através de modos lógicos geridos pelo aplicativo. O modo Solo inclui dinâmicas de seguir o usuário ou competições de prática de alvos. Já o modo Batalha ativa as lógicas para múltiplos jogadores, como corridas e arenas livre para todos.
-
Sistema de Bateria: O robô utiliza uma bateria inteligente de polímero de lítio (LiPo 3S) de 2400 mAh. A bateria faz a sua própria gestão, aplicando proteções ativas contra curto-circuito, sobrecarga, sobredescarga excessiva e limites de temperatura operacionais.
4. Análise técnica do funcionamento
4.1 Principais módulos do sistema
Sensores
- Sensor Ultrasom: Módulo responsável por emitir pulsos sonoros de alta frequência e calcular o tempo de retorno (eco). Para nós será útil porque capta a distância física até os objetos à frente, permitindo que a viatura detecte obstáculos a tempo de alterar sua rota. A partir do sinal dele, vamos freaar o carro, dar ré e virar para outra direção.
- Sensor de Choque: Detecta impactos ou vibrações abruptas no carrinho. Ele envia um sinal digital para a ESP32 indicando que a viatura colidiu com um obstáculo que não foi previsto pelo ultrassom ou que "recebeu dano" (simulando um acerto inimigo).
Atuadores
- Driver para motores L298N: É crítico para o projeto. Ponte H responsável por fornecer a corrente e a tensão necessárias para o funcionamento do motor DC da viatura. Permite o controle de direção (frente, trás, rotação) e a modulação da velocidade (via PWM) para a locomoção do robô.
- Buzzer Ativo: Dispositivo de sinalização sonora simples que opera com tensão contínua. Vai ser para simular a buzina do carrinho.
- Buzzer Passivo: Diferente do buzzer ativo, este componente permite a variação de frequências sonoras através de sinais PWM. Será utilizado para gerar o som do disparo do laser e a oscilação da sirene policial.
- LEDs RGB 5mm (3 unidades): Atuadores luminosos encarregados do feedback visual dinâmico. Eles simulam o giroflex da viatura policial e piscam indicando status críticos (como alteração de cor ao bater ou ao receber o comando de dano/laser).
- Emissor de Laser: Utilizado para disparar um feixe de luz visível, concretizando a funcionalidade de "atirar laser" do robô durante a interação com a aplicação.
Controle (Unidade Central)
- ESP32: É o cérebro do sistema. Ela processa de forma contínua as entradas dos sensores (distância do ultrassom e estado do sensor de choque). Se baseando na lógica programada, a ESP32 decide a trajetória autônoma, aciona os motores pelo Driver L298N, controla a modulação dos buzzers e LEDs, e processa as interrupções de hardware e requisições de rede para a tomada de decisão em tempo real.
Interface com o Usuário
- Tela OLED 0.98" (I2C): Vai ser o "rosto" do caarrinho. A proposta é ele exibir expressões visuais bem simples para gamificar a experiência (ex: um rosto feliz quando andando livremente e triste/bravo ao bater ou ser "baleado").
- Página Web (Dashboard Local): Interface gráfica acessada pelo navegador do usuário. A partir dela, o usuário envia comandos (atirar, buzinar) e visualiza logs reversos do sistema (notificações de morte ou impacto).
Conectividade
- O sistema faz uso do módulo Wi-Fi (802.11 b/g/n), que é nativo da ESP32. Ele permite que a viatura atue como um servidor web assíncrono (ou cliente MQTT) conectado à rede local. Essa conectividade estabelece um canal de comunicação bidirecional de baixa latência, fundamental para que os comandos do usuário cheguem instantaneamente pros atuadores e para que os eventos físicos (bater) sejam notificados na interface web em tempo real.
5. Proposta de reprodução com ESP32
Tabela de Limitações e Desafios do Sistema
O sistema opera de forma autônoma, delegando o controle de navegação e defesa a Tasks independentes gerenciadas pelo FreeRTOS no ESP32, enquanto o ataque funciona de maneira contínua:
Navegação Autônoma e Evasão (Sensor de Choque): A mobilidade consiste em mover o robô para frente utilizando o Driver L298N controlado pelo periférico MCPWM. Nas extremidades do chassi, Sensores de Choque (ou Sensores de Impacto) são conectados aos pinos de GPIO configurados como interrupções externas (GPIO_INTR_NEGEDGE). Quando o robô colide, a interrupção avisa a Task de motores para parar, recuar e rotacionar o chassi por um tempo determinado antes de voltar a avançar.
Ataque Contínuo (Emissão de Laser): A implementação do ataque é direta e não requer processamento concorrente. O módulo Emissor de Laser é conectado a um pino de GPIO configurado como saída (GPIO_MODE_OUTPUT). Na rotina de inicialização do sistema (app_main), o ESP-IDF define esse pino para nível lógico ALTO (1), mantendo o feixe constantemente ligado. Dessa forma, o robô ataca passivamente realizando uma "varredura" com o laser sempre que rotaciona ou se desloca.
Defesa e Detecção de Acerto: A detecção de dano utiliza o Sensor Foto Resistor (LDR) - (Analógico). Uma Task dedicada faz leituras contínuas do nível de luz ambiente através do ADC do ESP32. Se houver um pico repentino de tensão (caracterizando que o feixe de laser constante do oponente cruzou o sensor), a Task registra o acerto.
Feedback Visual de Dano: Ao detectar o acerto no LDR, o sistema aciona imediatamente o Led RGB 5mm através de sinais de GPIO, acendendo-o na cor vermelha por alguns segundos. Opcionalmente, o sistema pode pausar o L298N momentaneamente para simular que o robô foi "destruído" ou atordoado.
Diagrama Conceitual do Sistema
+-----------------------------------+
| ESP32 (Core) |
|-----------------------------------|
| - FreeRTOS (Tasks/Interrupts) |
| - Módulos: MCPWM, GPIO, ADC |
+-----------------------------------+
^ ^ | | |
(Sinais Digitais/ADC) | | | | | (Sinais PWM/Digitais)
+------------------------+ | | | +-----------------------+
| | | | v
+-----------------------+ +-----------------------+ | | +-----------------------+
| Sistema de Navegação | | Sistema de Defesa | | | | Sistema de Mobilidade |
|-----------------------| |-----------------------| | +-------------->| - Driver L298N |
| - Sensores de Choque /| | - Sensor Foto Resistor| | (Sinal | - Motores DC |
| Impacto | | (LDR) - Analógico | | Digital) +-----------------------+
+-----------------------+ +-----------------------+ |
v
+-----------------------+
| Sistema de Ataque |
|-----------------------|
| - Emissor de Laser |
| (Sempre Ligado) |
| - Led RGB 5mm (Dano) |
+-----------------------+
Limitações e Desafios esperados
Consumo de Energia e Risco Visual: Manter o Emissor de Laser ligado continuamente consumirá mais bateria do que se fosse utilizado em disparos isolados. Além disso, como o robô se movimenta e rotaciona de forma imprevisível, um laser constante varrendo o ambiente tem alta probabilidade de atingir os olhos das pessoas ao redor. Será estritamente necessário garantir que o laser seja de baixa potência para evitar acidentes.
Saturação de Acertos (Friendly Fire / Acertos Acidentais): Com lasers ligados 100% do tempo, as chances de um robô atingir o LDR do oponente apenas "passando a luz por cima" durante uma manobra de desvio são muito altas. O jogo pode acabar rápido demais sem uma lógica de "tempo de imunidade" (cooldown) implementada após cada acerto no código do ESP-IDF.
Navegação Cega e Desgaste Mecânico: Como a locomoção depende de Sensores de Choque, o robô é obrigado a colidir para mudar de rota. Isso gera desgaste na estrutura e risco do robô ficar batendo repetidamente no mesmo canto se a lógica de evasão (tempo de ré e ângulo de rotação da ponte H) não for bem calibrada.
Interferência de Luz no LDR e Falsos Positivos: O LDR analógico lerá qualquer mudança brusca na luz do ambiente (uma pessoa passando na frente de uma lâmpada, reflexos em superfícies). O código do ADC precisará de filtros rigorosos para diferenciar a luz ambiente do brilho concentrado do laser, caso contrário, o robô registrará "dano" sem ter sido atingido.
Debounce Mecânico: Ao bater na parede, o Sensor de Choque pode vibrar e enviar múltiplos sinais para a interrupção do ESP32 em milissegundos. Sem um filtro (debounce) via software, o robô pode entrar em colapso tentando processar várias ordens de desvio simultâneas.
6. Pesquisa bibliográfica e tecnológica
Matriz — Tecnologias que viabilizam o produto (4 artigos)
ESP32-Powered Web-Controlled Surveillance Robot with Camera
Este artigo detalha o desenvolvimento de um robô de vigilância controlado via web, utilizando o microcontrolador ESP32. O trabalho destaca como o servidor web nativo do ESP32 elimina a necessidade de instalações de softwares complexos, permitindo que os usuários enviem comandos de direção, velocidade e monitorem o sistema diretamente de um navegador padrão com conexão à internet. No contexto de sistemas embarcados, a pesquisa demonstra o potencial do ESP32 como uma opção boa e de baixo custo para aplicações de IoT e robótica, provando ser perfeitamente capaz de gerenciar a comunicação sem fio, o acionamento de motores e o processamento de sensores em uma arquitetura unificada. Além disso, explicita dificuldades e soluções associadas a elas que podem nos ajudar a resolver problemas no contexto de Fundamentos de Sistemas Embarcados.
Design and Implementation of ESP32-Based Edge Computing for Object Detection
Este artigo detalha o desenvolvimento de um sistema de computação de borda para detecção de pessoas em tempo real utilizando o microcontrolador ESP32-CAM, que integra o processador ESP32 dual-core a 240 MHz, 520 KB de SRAM, 4 MB de PSRAM e câmera OV2640 (até 1600×1200 pixels), além de um display TFT-LCD ST7735S de 1,8 polegadas para exibição local dos resultados. O sistema executa localmente um modelo MobileNet v1 embarcado via TensorFlow Lite, treinado com ~9000 imagens pela plataforma Edge Impulse, eliminando a necessidade de envio contínuo de dados à nuvem e reduzindo latência e consumo de banda. A comunicação com o servidor em nuvem é feita pelo módulo Wi-Fi nativo do ESP32 via protocolo MQTT, testado em três brokers de diferentes distâncias geográficas, com latências variando de ~2 ms (local) a ~450 ms (internacional). A abordagem híbrida — inferência na borda com MobileNet e verificação na nuvem com YOLOv8 — reduz em até 93% o tempo total do ciclo frente ao envio irrestrito de imagens. O trabalho expõe limitações práticas relevantes para sistemas embarcados, como a restrição de memória que força redimensionamento das imagens para 96×96 pixels, a instabilidade no processamento em lote e a necessidade de converter imagens para JPEG antes da transmissão, com soluções como Transfer Learning e envio seletivo de imagens apenas quando uma pessoa é detectada.
Development of an Arduino-Controlled Robotic Cart in Maker Culture
O artigo “Desenvolvimento de um Robô Móvel Controlado por Arduino na Cultura Maker” apresenta a construção de um carrinho robótico de baixo custo utilizando o microcontrolador ESP32 e a IDE Arduino. Inicialmente, os autores pretendiam desenvolver o projeto utilizando Arduino, porém, devido às limitações de processamento, memória e conectividade, optaram pelo ESP32, realizando uma comparação técnica entre as duas soluções. O trabalho descreve tecnologias fundamentais para a robótica móvel, como microcontroladores embarcados — com ênfase no ESP32 —, programação em C/C++, sensores ultrassônicos e infravermelhos, comunicação Bluetooth, controle de motores por meio do driver L298N e utilização de sinais PWM para controle de velocidade. O robô desenvolvido é capaz de detectar obstáculos e executar manobras para evitá-los, porém não realiza navegação totalmente autônoma, seguindo um caminho previamente definido pela lógica implementada. Os testes demonstraram a integração eficiente entre hardware e software, validando o uso do ESP32 em aplicações robóticas de baixo custo. Dessa forma, o artigo foi incluído na categoria de tecnologias que viabilizam a existência do produto por detalhar os componentes, mecanismos de controle, sensores e sistemas embarcados responsáveis pelo funcionamento do robô. Tais tecnologias também compõem a base do produto proposto neste trabalho, ainda que este contemple funcionalidades adicionais.
Design and Development of an Autonomous Mobile Robot for Unstructured Indoor Environments
Este artigo descreve a arquitetura de um robô móvel autônomo, detalhando o uso do microcontrolador ESP32 na gestão e interface de hardware de baixo nível. O estudo demonstra a utilização do sistema operacional FreeRTOS no ESP32 para agendar e executar tarefas em tempo real, gerenciando as interfaces dos motores e a leitura dos sensores. A pesquisa exemplifica tecnicamente que o microcontrolador é o responsável por gerar sinais de modulação por largura de pulso (PWM) para o controle motor enquanto recebe simultaneamente os dados sensoriais físicos. Essa fonte é ideal para embasar como a ESP32 da nossa viatura consegue dividir o processamento entre andar, tocar a sirene e ler o sensor de colisão ao mesmo tempo, graças a um sistema operacional de tempo real.
Matriz — Aplicações/uso do produto (4 artigos)
IoT-Based Sensor Technologies for Object Detection in Low-Visibility Environments: Development and Validation of a Functional Prototype
Esse artigo apresenta um robo projetado para missões de busca e resgate operando remotamente. O sistema utiliza o microcontrolador ESP32 juntamente com módulos de comunicação para transmitir dados de telemetria e alarmes para a nuvem em tempo real (via plataforma ThingSpeak, além de permitir o recebimento de comandos remotos. Para a navegação do robô, o projeto emprega sensores ultrassônicos responsáveis pelo desvio contínuo e autônomo de obstáculos. Essa aplicação é um excelente paralelo para o nosso carrinho, pois demonstra na prática a arquitetura de integração entre processamento embarcado, conectividade sem fio para envio de status e leitura de sensores ultraasom para locomoção independente.
Dynamic Modeling and Disturbance-Observer-Enhanced Control for Mecanum-Wheeled Vehicles Under Load and Noise Disturbance
Este artigo apresenta o desenvolvimento de um modelo dinâmico completo e uma estratégia de controle robusto para veículos com quatro rodas Mecanum, integrando a dinâmica do motor DC com sinal PWM e a dinâmica do chassi omnidirecional através da mecânica Lagrangiana — exatamente o tipo de sistema de locomoção presente no RoboMaster S1 da DJI. O modelo em espaço de estados resultante trata os sinais PWM como entradas controláveis e o torque de carga como perturbação separada, resolvendo uma limitação crítica dos modelos cinemáticos tradicionais que não conseguem desacoplar o sinal de controlo da perturbação. Para o controlo, é proposto um controlador híbrido IMC + DOB (Internal Model Control com Disturbance Observer), onde o IMC garante precisão em regime permanente e o DOB estima e compensa perturbações em tempo real, atingindo estabilização 97,6% mais rápida que o IMC tradicional e 98,3% mais rápida que o PID — analogamente ao que seria necessário num carrinho com raio laser baseado em ESP32 para a disciplina de Sistemas Embarcados, onde o controlo preciso dos motores DC via PWM é essencial para que o sistema de mira funcione corretamente. A validação experimental numa plataforma ROSMASTER X3 Plus demonstra erro DTW de trajetória de apenas 0,2662 m frente a 0,3198 m do modelo cinemático convencional, evidenciando que considerar a dinâmica completa do motor — resistência de armadura, indutância, constante de torque e atraso PWM — é indispensável para que um robô omnidirecional de baixo custo como o baseado em ESP32 consiga rastrear trajetórias com a estabilidade necessária para operações de mira e disparo precisos, tal como ocorre no sistema de blaster e gimbal do RoboMaster S1.
Lightweight Tennis Ball Detection Algorithm Based on Robomaster EP
O artigo “Lightweight Tennis Ball Detection Algorithm Based on RoboMaster EP” apresenta o desenvolvimento de um sistema de detecção de bolas de tênis utilizando a plataforma RoboMaster EP como base para uma aplicação robótica voltada à automação da coleta de bolas em quadras esportivas. Os autores destacam que métodos tradicionais de coleta apresentam limitações de eficiência e exigem significativa intervenção humana. Como alternativa, o trabalho propõe a utilização do RoboMaster EP, um robô educacional dotado de câmera monocular, sensor de profundidade infravermelho, braço robótico e elevada capacidade de programação, para realizar a identificação automática de bolas de tênis em diferentes cenários. Para isso, foi desenvolvido um algoritmo de visão computacional otimizado para execução em dispositivos embarcados. O sistema foi treinado e avaliado utilizando um conjunto de 1180 imagens obtidas em diferentes condições de iluminação e ambientes, permitindo a detecção precisa de bolas de tênis mesmo em situações de oclusão e variação de cenário. Os resultados demonstraram melhorias na precisão de detecção e redução significativa dos requisitos computacionais do modelo, possibilitando sua implantação no RoboMaster EP. O artigo foi incluído na categoria de aplicação e uso do produto por demonstrar uma utilização prática da plataforma RoboMaster EP na resolução de um problema real, explorando seus recursos de sensoriamento, processamento e programação para o desenvolvimento de um sistema robótico inteligente destinado à coleta automatizada de bolas de tênis.
Hybrid Development of a Multimodal Mobile Robot via Vibe Coding Approach
Este estudo apresenta a concepção de um robô móvel educacional modular capaz de atuar em múltiplos modos de operação, unindo o desvio de obstáculos e o controle sem fio. A aplicação prática baseia-se em sensores ultrassônicos (como o HC-SR04) para permitir que o robô ajuste sua trajetória em tempo real ao identificar bloqueios físicos no percurso. Além de controlar a locomoção, a plataforma também possibilita exibir informações operacionais e a telemetria dos sensores em tempo real. Essa aplicação funciona como um forte referencial para o nosso projeto, pois apresenta uma arquitetura muito semelhante ao carrinho policial, cruzando a navegação reativa de sensores ultrassônicos com comunicação externa e visualização de telemetria.
7. Comparativo com produtos similares
Nossa ideia de projeto tem vários produtos robóticos similares presentes no mercado, variando de kits educacionais básicos a robôs comerciais e de pesquisa de alto desempenho. A tabela abaixo apresenta essa comparação embasada nas referências bibliográficas do projeto.
| Característica | Nosso Projeto (Viatura ESP32) | Kit Robô Educacional (Base Arduino) (TRONTO et al., 2024) | ROSMASTER X3 Plus (LI; LI, 2025) | DJI RoboMaster S1 (Premium) (DJI, 2020) |
|---|---|---|---|---|
| Foco da Aplicação | Robótica IoT com gamificação (batalha e evasão) | Cultura maker e introdução à robótica de baixo custo | Pesquisa em controle dinâmico robusto e rastreamento de trajetória | Educação imersiva, competições e visão computacional |
| Microcontrolador / Processamento | ESP32 (Dual-core, suporta processamento concorrente) | ATmega328P (Descrito com limitações de processamento e memória frente à ESP32) | Controlador capaz de processar algoritmos complexos em tempo real (IMC + DOB) | Controlador Inteligente com processador dedicado à IA |
| Locomoção | Autônoma (ultrassom/choque, com inteligencia limitada) | Limitada (segue um caminho previamente definido na lógica) | Omnidirecional (Rodas Mecanum) com compensação de distúrbios de carga | Omnidirecional (Rodas Mecanum) com suspensão cardã (gimbal) |
| Conectividade | Wi-Fi nativo (Dashboard Web/IoT) | Comunicação via Bluetooth | Focado em dinâmica de motores via sinais PWM precisos | Wi-Fi direto ou via Roteador (App Dedicado) |
| Mecânica de Batalha / Interação | Emissor de Laser constante, LDR para dano e LED RGB | Inexistente (Apenas desvio de obstáculos) | Focado na estabilidade essencial para operações de mira | Lançador (Blaster) infravermelho/gel e armadura com sensores de impacto |
Referências
CHANG, Yeong-Hwa; WU, Feng-Chou; LIN, Hung-Wei. Design and implementation of ESP32-based edge computing for object detection. Sensors, Basel, v. 25, n. 6, p. 1656, 7 mar. 2025. DOI: 10.3390/s25061656. Disponível em: https://doi.org/10.3390/s25061656. Acesso em: 10 jun. 2026.
DÍAZ-BRITO, Erick-David et al. Hybrid Development of a Multimodal Mobile Robot via Vibe Coding Approach. Algorithms, v. 19, n. 6, p. 459, 2026.
DJI. RoboMaster Developer Guide: RoboMaster SDK Documentation. [S. l.]: DJI, [s. d.]. Disponível em: https://robomaster-dev.readthedocs.io/en/latest/introduction.html. Acesso em: 11 jun. 2026.
DJI. RoboMaster S1: User Manual v1.8. Shenzhen: DJI, 2020. Disponível em: RoboMaster S1 User Manual v1.8 (PT-PT). Acesso em: 11 jun. 2026
ESCUDERO-VILLA, Pedro; ESCUDERO, Cristian. IoT-Based Sensor Technologies for Object Detection in Low-Visibility Environments: Development and Validation of a Functional Prototype. MDPI (Eng. Proc.), v. 124, n. 1, p. 28, fev. 2026. Disponível em: https://www.mdpi.com/2673-4591/124/1/28. Acesso em: 10 jun. 2026.
GARGOURI, Ameur et al. Design and Development of an Autonomous Mobile Robot for Unstructured Indoor Environments. Machines, v. 13, n. 11, p. 1044, 2025.
LI, Chensheng; LI, Zhi. Dynamic modeling and disturbance-observer-enhanced control for mecanum-wheeled vehicles under load and noise disturbance. Mathematics, Basel, v. 13, n. 5, p. 789, 27 fev. 2025. DOI: 10.3390/math13050789. Disponível em: https://doi.org/10.3390/math13050789. Acesso em: 10 jun. 2026.
MUNDO CONECTADO. DJI lança RoboMaster S1, robô educacional que ensina física, matemática e programação. 12 jun. 2019. Disponível em: https://www.mundoconectado.com.br/gadgets/dji-lanca-robomaster-s1-robo-educacional-que-ensina-fisica-matematica-e-programacao/. Acesso em: 11 jun. 2026.
THULASI, P. R.; KUMAR, S. V.; SANDEEP, Y.; SHIVA, G.; RAJULU, M. G. ESP32-Powered Web-Controlled Surveillance Robot with Camera. In: INTERNATIONAL CONFERENCE ON COMPUTER SCIENCE AND COMMUNICATION ENGINEERING (ICCSCE), 2025. Proceedings [...]. Atlantis Press, 2025. DOI: https://doi.org/10.2991/978-94-6463-858-5_282. Disponível em: https://www.atlantis-press.com/article/126017466.pdf. Acesso em: 10 jun. 2026.
TRONTO, Mateus et al. Desenvolvimento de um robô móvel controlado por Arduino na cultura maker. Ciência & Tecnologia, v. 16, n. 1, p. e16117-e16117, 2024.
ZHAO, Yuan et al. Lightweight tennis ball detection algorithm based on Robomaster EP. Applied Sciences, v. 13, n. 6, p. 3461, 2023.
LI, Chensheng; LI, Zhi. Dynamic modeling and disturbance-observer-enhanced control for mecanum-wheeled vehicles under load and noise disturbance. Mathematics, Basel, v. 13, n. 5, p. 789, 27 fev. 2025. DOI: https://doi.org/10.3390/math13050789. Disponível em: https://www.mdpi.com/2227-7390/13/5/789. Acesso em: 11 jun. 2026.
TRONTO, Mateus et al. Desenvolvimento de um robô móvel controlado por Arduino na cultura maker. Ciência & Tecnologia, Jaboticabal, v. 16, n. 1, p. e16117, 2024. Disponível em: https://publicacoes.fatecjaboticabal.edu.br/citec/article/view/406. Acesso em: 11 jun. 2026.
