projects
Estação meteorológica Pico 2W + Raspberry Pi 3
Uma estação meteorológica pessoal que combina um nó MicroPython em Raspberry Pi Pico 2W, vários sensores ambientais, publicação MQTT e um painel local em Raspberry Pi 3.
Status: Em desenvolvimento ativo
Repositório: GitHub
Documentação: Lien
Visão geral
Esta estação meteorológica pessoal se apoia em dois repositórios complementares.
O primeiro, weather_web_sensors, executa a aquisição em um Raspberry Pi Pico 2W com MicroPython. O segundo, rpi3-meteo, recebe as medições em um Raspberry Pi 3, armazena os dados, exibe tudo em uma interface local e acrescenta páginas de previsão.
O conjunto forma uma pequena cadeia autônoma de observação pensada para uso doméstico ou de proximidade, com uma arquitetura simples, reparável e fácil de fazer evoluir.

Vista do protótipo de aquisição no Pico 2W com sensores de temperatura, umidade e pressão, além de uma tela OLED.

Vista da exibição na tela do Raspberry Pi 3, com dados brutos e dados reduzidos.
Arquitetura do projeto
A cadeia atual se organiza em quatro blocos:
- aquisição local no Pico 2W
- publicação das medições em
MQTT - ingestão e armazenamento no Raspberry Pi 3
- visualização local em tela ou navegador
O nó MicroPython lê vários sensores em paralelo, calcula uma medição agregada de referência, atualiza um pequeno visor OLED e também expõe uma interface web local leve. Em seguida, os dados úteis são publicados em um broker Mosquitto e consumidos pela aplicação FastAPI, que os armazena em PostgreSQL e os restitui em um painel local.
Parte weather_web_sensors
O repositório weather_web_sensors constitui a camada embarcada do projeto. Ele se apoia em:
- um
Raspberry Pi Pico 2W - um
BME680para temperatura, umidade, pressão e gases - um
DHT22 - um conjunto
AHT20+BMP280 - uma tela
SSD1306 - um módulo
DS3231para o relógio de tempo real
O software gerencia:
- dois barramentos
I2Cdistintos - uma aquisição autônoma na inicialização
- uma sincronização
NTPcom gravação de volta para aRTC - uma página web local com comparação entre sensores
- exportação por
UDPouMQTT
Essa parte é particularmente interessante para comparar vários sensores de temperatura, umidade e pressão em um mesmo conjunto, a fim de acompanhar melhor os desvios e escolher uma referência de trabalho.

Vista da exibição do servidor web embarcado no Pico 2W, com dados brutos, dados reduzidos, estatísticas e comparações entre sensores.
Parte rpi3-meteo
O repositório rpi3-meteo constitui a camada de servidor local e a interface de visualização da estação meteorológica.
Ele se baseia em:
- um backend
FastAPI - um broker
Mosquitto - armazenamento em
PostgreSQL - uma interface adaptada a uma tela tátil
- páginas de previsão alimentadas especialmente por
Open-Meteo
A aplicação consome dois fluxos MQTT publicados pelo Pico:
- um fluxo bruto para as aquisições detalhadas
- um fluxo agregado para a exibição sintética
Ela pode então:
- historizar as mensagens e as medidas individuais
- expor os últimos valores úteis
- calcular um indicador local de qualidade do ar a partir do
BME680 - exibir páginas de previsão imediata, horária e diária
- gerar gráficos à distância a partir do
WSLconsultando o servidorPostgreSQLem Python
A seguir, alguns exemplos de capturas de tela das páginas disponíveis na interface do usuário:

Vista da página inicial do Raspberry Pi 3 com os dados em tempo real e os dados reduzidos.

Vista da página em tempo real do Raspberry Pi 3 com os dados brutos transmitidos a cada minuto pelo broker MQTT.

Vista da página de síntese do Raspberry Pi 3 com os dados reduzidos, aqui agrupados por hora.

Vista da página de informações atuais proveniente do Open-Meteo.

Vista da página de previsões de curto prazo proveniente do Open-Meteo.

Vista da página de previsões para 4 dias proveniente do Open-Meteo.
Interesse do projeto
O principal interesse desta estação meteorológica é ligar de forma limpa a eletrônica leve e o software aplicativo:
- aquisição embarcada compacta com
MicroPython - transporte das medições por
MQTT - persistência e consultas com
PostgreSQL - interface local moderna com
FastAPI - possibilidade de fazer evoluir separadamente a parte dos sensores e a parte do painel
O projeto também mantém uma dimensão experimental útil: futura adição de um anemômetro, de um pluviômetro, melhoria das heurísticas de qualidade do ar, comparação entre sensores e enriquecimento das visualizações históricas.
Também se pode considerar a fabricação de um abrigo meteorológico em PETG com uma impressora 3D, assim como a substituição da transmissão de dados por Wi-Fi por dois transmissores seriais HC-12 em 433 MHz.
Público-alvo
Esta estação meteorológica se dirige às pessoas que querem:
- construir uma estação meteorológica pessoal aberta e modificável
- manter o controle local dos dados
- comparar vários sensores ambientais
- dispor de um painel autônomo em
Raspberry Pi - reutilizar blocos simples baseados em
Python,MicroPythoneMQTT
Links
- nó de sensores
MicroPython: weather_web_sensors - painel e armazenamento
Raspberry Pi 3: rpi3-meteo