Métricas do clima com Arduino UNO
Como esse portfólio foi criado prioritáriamente para lançar alguns projetos que eu gosto, não poderia deixar de selecionar um projetinho embarcado, envolvendo Arduino Uno
e uma plaquinha BME280
.
Mas antes, vou tentar explicar as razões de ter implementado esse serviço, vamos lá.
A ideia começou na disciplina de Iniciação à Prática Científica
(IPC) e consistia em temporizar a irrigação de uma lavoura, inclusive, esse serviço já existe a algum tempo, mas fuçar nisso foi gratificante. Enfim, para que fosse possível, uma das etapas do projeto foi a coleta da temperatura/pressão/umidade, até porque, se houvesse umidade suficiente, não seria necessário o pivo, gotejamento ou qualquer outro método de irrigação ser ativado. Após essa coleta, um protocolo
de minha preferência enviaria os dados coletados até um servidor na nuvem
.
No Arduino
, os fios/junpers foram conectados na seguinte ordem:
Arduino UNO | BME 280 |
---|---|
5V | VIN |
GND | GND |
SCL | SCL |
SDA | SDA |
Em seguida, bastava subir o código no UNO, ou assim dizendo, montar a sketch.
Foi implementado um delay de 1000ms, ou seja, intevalos de um em um segundo, até porque o dispositivo ia ficar operando direto, vide o Arduino consumir pouquíssima energia, o código abaixo apresenta as linhas que determinaram essas funções.
#include <Wire.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_BME280.h>
#define SEALEVELPRESSURE_HPA (1013.25)
Adafruit_BME280 bme;
void setup() {
Serial.begin(9600);
if (!bme.begin(0x76)) {
Serial.println("Could not find a valid BME280 sensor, check wiring!");
while (1);
}
}
void loop() {
Serial.print("Temperature = ");
Serial.print(bme.readTemperature());
Serial.println("*C");
Serial.print("Pressure = ");
Serial.print(bme.readPressure() / 100.0F);
Serial.println("hPa");
Serial.print("Approx. Altitude = ");
Serial.print(bme.readAltitude(SEALEVELPRESSURE_HPA));
Serial.println("m");
Serial.print("Humidity = ");
Serial.print(bme.readHumidity());
Serial.println("%");
Serial.println();
delay(1000);
}
As imagens abaixa ilustram como ficou as plaquinas após a conexão dos fios.
E os dados encontrados durante os testes foram estes:

Enfim, também foi utilizado o Google Cloud Platform para testar os envios e entregas dos dados, porém a pesquisa não foi finalizada, isso pela falta do próprio acesso a sistemas de irrigação complexos.