Pouco mais de um ano atrás eu comecei a trabalhar no projeto de uma estação meteorológica para instalar no meu quintal.
O projeto foi todo documentado por mim no website hackaday.io (
link aqui) e consistia na utilização de um Arduino UNO standalone (apenas o chip ATMEGA328 e um cristal oscilador), um DHT11 (umidade e temperatura), um LDR (nível de luz), um sensor de chuva, cartão de memória microSD e BMP180 (pressão e temperatura ambiente).
Abaixo você vê uma imagem da placa de circuito impresso que mandei fazer especialmente para o projeto. Observe também que eu previ um slot para um módulo Bluetooth, para o qual eu nem cheguei a implementar o código; a estação meteorológica guardava os dados no cartão microSD.
Também está disponível o diagrama esquemático da placa:
Clique na imagem para ampliar
A estação funcionou sem problemas, veja abaixo um exemplo dos dados coletados. Observe que a a estação é alimentada por uma bateria de lítio 3.7V, que para de funcionar caso a tensão baixe de 3V (por isso parou de gravar dados em determinado momento).
Clique na imagem para ampliar
Cheguei até a colocar o projeto dentro de uma caixa plástica para pode-lo expor à ambientes externos; repare nas únicas coisas para fora da caixa: o LDR, um painel solar e o sensor de chuva.
Toda a documentação deste projeto (inclusive código para Arduino e diagrama esquemático da placa) estão disponíveis (em Inglês) na
página do projeto no Hackaday.io.
--------------------------------------------------------------------
Porém eu não queria somente guardar os dados em um cartão de memória, eu queria poder disponibiliza-los na internet; foi aí que
surgiu a versão 2 do projeto, agora com módulo
WiFi ESP8266 e baseado em um
Teensy LC, não mais no Arduino UNO (porém ainda compatível com o ecossistema Arduino).
O diagrama esquemático da estação meteorológica está na imagem abaixo (e também disponível no
meu repositório no GitHub) e todos os detalhes desta segunda versão estão descritos
neste update do projeto original no Hackaday.io.
Observe a quantidade de sensores de temperatura (LM35, KTY81, NTC 5k e DHT11): eles não são todos necessários para o funcionamento da estação, estão ali apenas porque sim (hahahah) e porque tinha espaço.
A parte interessante deste projeto é que os dados não são mais armazenados localmente, eles são enviado à internet através de um ESP8266 e ficam no website
Thingspeak.com . A placa de microcontrolador Teensy LC foi utilizada porque eu tenho algumas disponíveis (e porque é compatível com Arduino), mas nada impede que você utilize um Arduino Nano ou Micro com pouquíssimas modificações no código.
O código completo da estação meteorológica está disponível abaixo. Ele é bem extenso porque o Tratamento do DHT11 e do ESP8266 (WiFi) exigem bibliotecas e algumas configurações. O que este código faz é inserir os valores finais de todos os sensores (temperatura em graus, umidade em percentual, etc) em apenas uma string e passa-la ao módulo WiFi, para que chegue nos servidores do ThingSpeak.
Para que os servidores do Thingspeak recebam os dados da sua estação meteorológica você vai precisar criar uma conta e um canal específico no site; para fazer isso acesse
este tutorial do DrBit (em Português) ou
este Instructables (em Inglês). Os dados serão enviados ao servidor à cada cinco (5) segundos - ou 5000 milissegundos.
Caso você queira verificar se o seu ESP8266 está funcionando (conectando á internet) antes de efetivamente conecta-lo á estação meteorológica, utilize o código abaixo. Este código verifica se existe uma rede WiFi disponível e conecta-se à ela; é baseado no código escrito pelo Augusto Campos
neste artigo.
O objetivo deste artigo não foi esmiuçar todos os detalhes necessários para você criar sua própria estação meteorológica, foi somente
uma maneira de demonstrar a estação que eu criei e documentei no Hackaday.io (
link aqui). Porém utilizando as informações deste artigo e também do hackaday você certamente será capaz de replicar e ter sua própria estação meteorológica no quintal.
Marcadores: Arduino, dht11, estação meteorológica, hackaday, hackaday.io, kty81, ldr, lm35, ntc thermistor, sensor ldr, teensy lc, termistor ntc, thingspeak, weather station