FormigaWeather: estação meteorológica IoT open-source de baixo custo com ESP8266
date
Mar 17, 2025
slug
estacao-meteorologica-baixo-custo-esp8266-formiga
status
Published
tags
Ciência
Tecnologia
Engenharia Elétrica
summary
Crie a sua própria estação meteorológica de baixo custo utilizando ESP8266 e alguns componentes fáceis de achar.
type
Post
O avanço da tecnologia IoT (Internet das Coisas) tem tornado acessíveis soluções que, até pouco tempo, demandavam investimentos e infraestrutura complexa.
O FormigaWeather descrito no presente artigo é um projeto que exemplifica essa tendência, isto é, trata-se de uma estação meteorologica de baixo custo e código-fonte aberto, capaz de medir qualidade do ar, temperatura, umidade, pressão atmosférica e detecção de chuva, com visualização dos dados por meio de um site responsivo hospedado diretamente no próprio microcontrolador.
Esse pequeno projeto destina-se tanto a makers e entusiastas quanto a educadores que buscam atividades práticas para sala de aula.
É uma proposta pedagógica e prática - montar a sua própria estação permite compreender sensores, coleta e tratamento de dados em tempo real e a relação com a natureza.
Visão Geral
A estação tem por base o microcontrolador NodeMCU ESP8266, e integra um conjunto de sensores que coletam informações ambientais essenciais:
- MQ-135 - Sensor de qualidade do ar, detecção de gases e poluentes através de medida qualitativa/indicativa.
- BM180 - Medição barométrica, ou seja, que fornece o valor da pressão atmosférica e permite também estimativas de altitude.
- DHT11 - Medição de temperatura e umidade relativa do ar.
- MH-RD - Detecção de chuva, isto é, indica presença de precipitação.
Assim, todos os dados coletados são exibidos na interface web hospedada na própria estação e podem ser acessados via Wi-Fi, Bluetooth ou exportados em formato de planilha (CSV) para posterior estudo.
A interface também permite o monitoramento de gráficos em tempo real 🙂
O que vamos precisar?
Veja a lista de materiais e componentes utilizados em nossa estação. O custo total estimado é de R$ 143,48 (em Março de 2025). E todos os componentes foram adquiridos em sites de compras conhecidos na web.
Componente | Descrição | Qtd. |
Placa NodeMCU ESP8266 | Microcontrolador com Wi-Fi e bluetooth | 1 |
MQ-135 | Monitoramento da qualidade do ar | 1 |
BMP180 | Medição de pressão e altitude | 1 |
DHT11 | Temperatura e umidade | 1 |
Resistor 10 kΩ | Pull-up para o DHT11 | 1 |
Protoboard | Placa de prototipagem | 1 |
Fios jumper | Conexões elétricas | Diversos |
Cabo USB | Para ligar o microcontrolador ao computador e programar | 1 |
Montagem do circuito
A montagem é simples e direta, cada sensor conecta-se ao NodeMCU conforme os pinos indicados na imagem abaixo.

Conexões:
- DHT11 → D4 (use resistor de 10 kΩ entre VCC e sinal como pull-up).
- BMP180 → SDA: D2, SCL: D1 (Conexão I²C).
- MQ-135 → A0 (entrada analógica).
- MH-RD → D5 (entrada digital).
Estas ligações permitem que o NodeMCU leia os valores dos sensores e disponibilize os dados no site hospedado localmente.

Hora de Programar
Antes de começarmos a digitar o código da nossa estação, é importante configurar o ambiente de desenvolvimento, ou seja, instalar todos os programas e bibliotecas necessários para que nosso código possa ser carregado no microcontrolador.
Primeiro, instale a IDE do Arduino (versão 1.8.18 ou superior) no seu computador. Saiba como instalar aqui.
Instalar a biblioteca do NodeMCU ESP8266
Após a instalação, execute a IDE do Arduino a acesse o menu Arquivo → Preferências.
No campo “URLs adicionais para gerenciadores de placas”, adicione:
http://arduino.esp8266.com/stable/package_esp8266com_index.json
Clique em Ok.
Em seguida, vá no menu Ferramentas → Placa → Gerenciador de Placas, pesquise por “ESP8266” e instale o pacote correspondente.
Por fim, vá no menu Ferramentas → Placa e selecione a opção “NodeMCU 1.0 (ESP-12E Module).
Instalar a biblioteca Adafruit BMP085
Agora, faça o download da biblioteca Adafruit_Sensor-master.zip.
Na IDE do Arduino, vá no menu Sketch → Incluir Biblioteca → Adicionar Biblioteca .ZIP e selecione o arquivo que você baixou.
Instalar a biblioteca DHT
De forma parecida, faça também o download da biblioteca DHT-sensor-library.zip.
Em seguida, na IDE do Arduino, novamente vá no menu Sketch → Incluir Biblioteca → Adicionar Biblioteca .ZIP e selecione o arquivo que você acabou de baixar.
Após os passos acima, a IDE estará pronta para rodar e carregar o código para o nosso microcontrolador.
Modifique o Código
Você pode acessar o código diretamente através do repositório descrito abaixo, ou pode baixá-lo diretamente aqui, “código-fonte.zip”. Extraia o arquivo para uma pasta de sua preferência.
Certifique-se que você concluiu corretamente os passos anteriores. E, através da IDE do Arduino, abra o arquivo “estacao_formiga.ino”.
Modifique o conteúdo das linhas 17 e 18, conforme o exemplo:
const char* ssid = "NOME_DO_SEU_WIFI_AQUI"; const char* password = "SUA_SENHA_WIFI_AQUI";
Lembre-se de trocar NOME_DO_SEU_WIFI_AQUI pelo nome de identificação da rede WiFi onde você estiver e SUA_SENHA pela senha de acesso correspondente.
Importante: se não houver rede WiFi disponível, deixe como está e não faça nada, pois o ESP8266 irá criar a própria rede WiFi chamada Estacao_Formiga, com senha padrão senha123. Nesse caso, basta aguardar por alguns instantes e, com seu computador ou celular, buscar por essa rede e se conectar a ela. E tudo irá funcionar normalmente também.
Carregue o Código na Placa
Após as modificações, conecte o ESP8266 ao seu computador através da porta USB.
Vá no menu Ferramentas → Porta e selecione a porta em que está conectada a sua placa.
Em seguida, vá no menu Sketch → Verificar/Compilar e aguarde finalizar a compilação do código.
Por fim, vá em Sketch → Carregar e espere que sua compilação (firmware) seja carregada na placa.
Se tudo ocorrer bem, abra o Monitor Serial da IDE do Arduino, disponível no menu Ferramentas → Monitor Serial, e você poderá acompanhar as informações da estação para verificar se está tudo certo.
Acessando os Site
Após a instalação, se não houver nenhum erro, os dados da sua estação estarão acessíveis via navegador do celular ou do computador.
Para isso, basta se conectar à mesma rede WiFi do ESP8266.
Mas lembre-se, se você modificou o código, será a rede que você adicionou, do contrário, será a rede que a estação mesmo cria.
Quando tudo estiver conectado na mesma rede WiFi, digite na barra de endereços do seu navegador:
http://estacaoformiga.local
E o site exibirá todos os dados que estão sendo coletados pela estação. Veja o resultado final abaixo.

Como Contribuir?
Sendo um projeto de código-fonte aberto, qualquer contribuição é sempre bem-vinda! Para colaborar, abra uma pull request no repositório em https://github.com/jancarauma/FormigaWeather.
FormigaWeather
jancarauma • Updated Apr 14, 2025
Licença
O projeto é distribuído sob a licença MIT, permitindo uso e modificações sem restrições. Confira o arquivo
LICENSE
no código-fonte do repositório para mais detalhes.Agradecimentos
Este projeto não seria possível sem a iniciativa do caro colega, músico e professor Dr. Paulo Marotti, da Universidade Federal de Roraima, em suas atividades com os alunos, em especial, do município do Uiramutã, em Roraima. Agradeço também o apoio da comunidade Arduino/ESP8266 e desenvolvedores open-source, sempre dispostos em ajudar. Também agradeço a todos os desenvolvedores das bibliotecas utilizadas e a todos que contribuem para a disseminação do conhecimento gratuito.