FAVORITAR
FecharPlease login

Projeto | Estação Meteorológica

Introdução

Unindo todo o conhecimento em Micropython que foi construído até agora, podemos criar uma estação meteorológica personalizada utilizando toda a variedade de sensores que já vínhamos utilizando: 

  • O DHT11 para medir temperatura e umidade, 
  • O BMP180 para medir pressão atmosférica e altitude, 
  • O MQ135 para avaliar a qualidade do ar
  • O sensor de chuva para monitorar as condições climáticas.

Essa estação permitirá a coleta de dados meteorológicos em tempo real e o fornecimento de informações precisas sobre as condições climáticas em locais específicos. 

Estação Meteorológica

Montagem da placa

Para esse projeto vamos precisar de:

  • 1 x Raspberry Pi Pico
  • 1 x Protoboard
  • 1 x Cabo micro USB
  • 1 x Sensor DHT11
  • 1 x Sensor BMP180
  • 1 x Sensor MQ-135
  • 1 x Sensor de chuva
  • 1 x Protoboard
  • 1 x Resistor de 10 kΩ
  • Jumpers

Utilizando a protoboard, conecte o pino GND do Raspberry Pi Pico à linha de terra da protoboard usando um jumper a partir do pino 38 da placa Pico. Da mesma forma, alimente a proto conectando o pino VCC do Pico à linha de alimentação da protoboard através de um jumper a partir do pino 36.

Para realizar a montagem correta, confira o mapa de pinos da Pico na Figura 2.

Figura 2 – Raspberry Pi Pico pinout.

Após isso, um a um conecte os sensores ao Raspberry Pi Pico.

Assim, pegue o DHT11 e insira-o na protoboard. Ele possui quatro terminais:

  • O terminal 1 será conectado a linha de alimentação da protoboard
  • O terminal 2 deve ser conectado a uma entrada digital, nós escolhemos o pino 6 (GP4). Além disso, um resistor de 10 kΩ deve ser inserido no pino 2 e também deve ser conectado ao VCC
  • O terminal 3 não será utilizado
  • E o terminal 4 deve ser conectado a linha do GND (terra) da protoboard

Já o BMP180 possui 4 pinos: VCC, GND, SCL (Serial Clock) e SDA (Dados seriais), em que os dois últimos são utilizados na comunicação I2C. A identificação de cada um deles está impressa na parte inferior do sensor. Assim:

  • Os pinos VCC e GND devem ser conectados ao 3,3 V e GND da protoboard, respectivamente;
  • O pino SCL do sensor BMP180 deve ser conectado ao pino SCL da Raspberry Pi Pico, aqui optamos por utilizar o GP1;
  • O SDA deve ser conectado ao pino SDA da Raspberry Pi Pico, aqui optamos por utilizar o GP0.

O MQ135 possui 4 pinos: VCC, GND, A0 (saída analógica) e D0 (saída digital).  A identificação de cada um deles está impressa na parte inferior do sensor. Assim:

  • Os pinos VCC e GND devem ser conectados ao 3,3 V e GND da protoboard, respectivamente;
  • O pino A0 do sensor MQ135 não será utilizado nesta aplicação;
  • O pino D0 do sensor MQ135 deve ser conectado a uma das entradas digitais da Raspberry Pi Pico, aqui optamos por utilizar o GP22.

Por fim, o sensor de chuva possui 4 pinos: VCC, GND, A0 (saída analógica) e D0 (saída digital).  A identificação de cada um deles está impressa na parte inferior do sensor. Assim:

  • Os pinos VCC e GND devem ser conectados ao 3,3 V e GND da protoboard, respectivamente;
  • O pino A0 do sensor de chuva não será utilizado nesta aplicação;
  • O pino D0 do sensor deve ser conectado a uma das entradas digitais da Raspberry Pi Pico, aqui optamos por utilizar o GP15.

Figura 3 – Montagem do projeto com componentes físicos.

Programa

Utilizando o Thonny IDE, vamos iniciar importando as bibliotecas “machine” e “utime” para poder acessar os pinos da placa e para adicionar atrasos ao programa. Não há necessidade de importar toda a biblioteca “machine”, então dela vamos importar apenas o I2C e o Pin. Além disso, importamos a biblioteca dht e bmp180 para utilizar os sensores de mesmo nome.

Neste primeiro momento vamos indicar a que pinos os sensores estão conectados e os demais detalhes para que eles operem corretamente.

Em seguida, no loop principal, Primeiro chamamos a função “.measure()” para realizar a leitura do sensor, depois atribuímos às variáveis “h” e “t” os valores de umidade e temperatura lidos, respectivamente. Onde a temperatura é coletada em Celsius e a umidade em porcentual.

De maneira análoga, chame as funções do sensor bmp180 para obter a pressão e altitude do local. Em seguida, definimos que quando o sensor detectar algo uma mensagem será exibida no shell informando que algum gás foi detectado, do contrário uma mensagem certificando a normalidade do ar será mostrada.

Por último, definimos que se o valor lido pelo sensor for 1 significa que não está chovendo (lembrando que esse sensor considera a ausência de chuva em nível lógico alto) e o led deve ficar apagado. Por outro lado, se o valor lido indicar presença de chuva, o LED é aceso e uma mensagem é exibida, informando que está chovendo.

A verificação dos sensores será feita a cada 5 segundos. Abaixo temos o código completo utilizado:

Conclusão

Utilizando componentes acessíveis e facilmente disponíveis, como o DHT11, BMP180, MQ135 e um sensor de chuva, foi possível criar nossa própria estação meteorológica caseira.

Através da conexão e configuração desses sensores, fomos capazes de medir temperatura, umidade, pressão atmosférica, qualidade do ar e detectar chuva. A programação do microcontrolador nos permitiu coletar, processar e exibir esses dados de maneira organizada e compreensível.

É importante lembrar que este projeto pode ser expandido e personalizado ainda mais, adicionando mais sensores, conectando-se à Internet das Coisas (IoT) ou criando alertas personalizados com base nas condições climáticas. As possibilidades são infinitas.

Outros artigos da série

<< Projeto | Monitoramento com Sensor de Detecção de Chuva
Licença Creative Commons Esta obra está licenciada com uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional.
Home » Maker » Projeto | Estação Meteorológica

JUNTE-SE HOJE À COMUNIDADE EMBARCADOS

Comentários:
Notificações
Notificar
0 Comentários
Inline Feedbacks
View all comments
Talvez você goste:
Nenhum resultado encontrado.