Tudo bem galera ? Aproveitando o post anterior, no qual adaptamos uma fonte de celular antigo para carregar a bateria de lítio do monitor, aproveitei para implementar um interruptor para o monitor, fato que eu realmente deixei passar batido na montagem ...😭
O interruptor que estou usando é aqueles de fonte de CPU, também retirado de uma fonte velha queimada.
Fiz um recorte na tampa traseira do monitor, de acordo com a medida do interruptor, de maneira que o mesmo fique encaixado.
Tudo bom galera? Decorrente do projeto anterior, no qual criamos um monitor portátil para horta e estufa agrícola, surgiu a necessidade de ter um carregador de bateria de lítio, como esta acima na imagem, com formato de tablet. Como decidi utilizar este tipo de bateria recarregável, dei uma fuçada nas minhas sucatas e encontrei um carregador de celular bem antigo, porém intacto e com pouco uso. Surgiu a idéia de montar um projetinho bem simples mas funcional para carregar este tipo de bateria.
E ai pessoal tudo bem? é com grande satisfação que escrevo este post para vocês, pois confesso que ele foi um dos que mais gostei de montar, por motivo de utilizar o NodeMCU. Realmente ele é incrível no quesito de praticidade, incluindo o seu tamanho reduzido e a infinidade de aplicações possíveis a serem realizadas com ele. Seguindo o conceito de IoT, decidi criar uma aplicação portátil, para Horta e Estufa Agrícola, permitindo realizar a medições de maneira muito prática de temperatura, umidade relativa do ar e umidade do solo. Você leva a caixinha para o local onde deseja fazer a medição e ainda se houver conexão WiFi disponível ainda poderá enviar estes dados para o Site ThingSpeak, no qual serão gerados os gráficos pertinentes aos sensores. Isto poderá ser bem útil se desejar fazer um trabalho de análise mais aprofundado da sua cultura. Se até o momento não estiver entendendo muito bem do que se trata este post, recomendo que de uma olhada no meu primeiro post sobre o NodeMCU.
Considerações
Importantes
Para
a criação deste Monitor Portátil levei em consideração o
material já abordado nos outros posts e o uso de material reciclado
para viabilizar o custo. Utilizei uma caixa plástica de módulo de
carro que estava nos meus materiais reciclados para uso, de tamanho:
10 cm de comprimento, 7,5 cm de largura e 4,5 cm de altura.
Tirei
a medida do LCD16x2, fiz um pequeno gabarito para fazer o recorte em
uma das tampas da caixinha. Perfurei o desenho do gabarito já
riscado na tampa, que posteriormente permitiu o encaixedo
display.
Toda
a eletrônica deve ficar dentro da caixa com exceção os sensores
DHT11 e o Higrometro.
Para
a alimentação do sistema utilizei uma bateria de 3,7 V e 500 mA,
retirada de um rastreador veicular. Para alimentar o NodeMCU fiz a ligação do pino “VIN” no fio POSITIVO da
bateria e o “GND” no fio NEGATIVO da bateria.
Decidi
usar esta bateria por motivo de seu tamanho reduzido e sua autonomia
muito boa. Mas também poderá alimentar com baterias recarregáveis,
três (3) são ideais.
Uma
protoboard daquelas “mini” é ideal para organizar as
alimentações.
O
detalhe mais importante é acomodar toda a eletrônica de forma mais
organizada possível, para depois se necessário fazer alguma
manutenção ou mesmo retirar as baterias para recarregar.
Testando a Montagem
Montagem Eletrônica
Enviando os Dados para ThingSpeak
Para o envio das informações dos sensores para o ThingSpeak é necessário a criação de um Canal com os campos necessários para cada sensor. No nosso caso utilizamos três (3) campos: Temperatura, Umidade do Ar e Umidade do Solo. Após a criação pegue o "Write API Key" gerado pelo seu Canal e insira no seu código no NodeMCU na String " apiKey ", através da IDE do Arduino.
#include <DHT.h> #include <ESP8266WiFi.h> #include <Wire.h> // This library is already built in to the Arduino IDE #include <LiquidCrystal_I2C.h> //Biblioteca adicioada para utilizar o Display
// Insira a sua API key, criada na geração do Canal (Write API Key) String apiKey = "Sua API key"; const char* ssid = "Nome da sua rede"; const char* password = "Senha da sua rede";
const char* server = "api.thingspeak.com"; #define DHTPIN 2 // SO CONNECT THE DHT11/22 SENSOR TO PIN D4 OF THE NODEMCU
DHT dht(DHTPIN, DHT11,15); //CHANGE DHT11 TO DHT22 IF YOU ARE USING DHT22 WiFiClient client;
float h = dht.readHumidity(); float t = dht.readTemperature(); float s = analogRead(A0); // Porta de comunicação com o Sensor de Umidade do Solo (Higrometro)
/*----------- Impressões no LCD 16x2 -----------*/ lcd.clear(); lcd.setCursor(3, 0); lcd.print("WEBESTUFA"); // Start Print text to Line 1 lcd.setCursor(0, 1); lcd.print("Horta e Estufa"); // Start Print Test to Line 2 delay(2000);
if (isnan(h) || isnan(t) || isnan(s)) { // checa as variáves para envio Serial.println("Falha na leitura dos Sensores!"); return; }
if (client.connect(server,80)) { // "184.106.153.149" or api.thingspeak.com String postStr = apiKey;
// Converte as Variáveis para "String" para serem enviadas para o Canal
postStr +="&field1="; // Alimenta o campo Temperatura para geração do Gráfico postStr += String(t); postStr +="&field2="; // Alimenta o campo Umidade para geração do Gráfico postStr += String(h); postStr +="&field3="; // Alimenta o campo Umidade do Solo para geração do Gráfico postStr += String(s); postStr += "\r\n\r\n";