Display Oled Dados De Temperatura E Umidade Exemplo Arduino Esp32 – Display OLED: Dados de Temperatura e Umidade com Arduino ESP32 é um projeto que explora a integração de sensores, microcontroladores e interfaces gráficas para monitoramento ambiental. O Arduino ESP32, com sua capacidade de processamento e conectividade Wi-Fi, se torna a plataforma ideal para coletar dados de temperatura e umidade e exibi-los em uma tela OLED.

Este projeto demonstra como o Arduino ESP32 pode ser utilizado para criar um sistema de monitoramento de temperatura e umidade preciso e versátil, abrindo portas para diversas aplicações práticas, como controle de ambientes, agricultura de precisão e automação residencial. A tela OLED, por sua vez, oferece uma interface gráfica intuitiva e de fácil leitura, proporcionando uma experiência de usuário aprimorada.

Monitoramento de Temperatura e Umidade com Arduino ESP32 e Tela OLED: Display Oled Dados De Temperatura E Umidade Exemplo Arduino Esp32

A capacidade de monitorar temperatura e umidade com precisão é crucial em diversos contextos, desde aplicações industriais e agrícolas até o controle ambiental em residências e escritórios. O Arduino ESP32, com sua versatilidade e capacidade de comunicação sem fio, se torna uma ferramenta poderosa para essa tarefa, permitindo a coleta de dados em tempo real e a visualização intuitiva através de telas OLED.

Neste artigo, vamos explorar um projeto prático que demonstra como utilizar o Arduino ESP32 em conjunto com sensores de temperatura e umidade, e uma tela OLED para construir um sistema de monitoramento completo e eficiente. Abordaremos desde a seleção dos componentes e montagem do circuito até a programação do ESP32 e a configuração da tela OLED.

Introdução

A medição precisa de temperatura e umidade é essencial em diversos campos, como:

  • Indústria:Controle de processos de produção, monitoramento de equipamentos e prevenção de falhas.
  • Agricultura:Otimização de irrigação, controle de pragas e doenças, e monitoramento do crescimento das plantas.
  • Saúde:Monitoramento de condições ambientais em hospitais e clínicas, controle de temperatura corporal e armazenamento de medicamentos.
  • Residências e Escritórios:Controle de temperatura e umidade para conforto, segurança e eficiência energética.

O Arduino ESP32, com seu processador dual-core de 240 MHz, Wi-Fi e Bluetooth integrados, e GPIOs (General Purpose Input/Output) versáteis, é ideal para projetos de monitoramento de temperatura e umidade.

As telas OLED (Organic Light-Emitting Diode) oferecem uma solução de visualização de dados clara, nítida e de baixo consumo de energia. Sua capacidade de exibir texto, gráficos e imagens em alta resolução torna-as ideais para apresentar dados de temperatura e umidade de forma intuitiva e fácil de entender.

Materiais Necessários

Para construir o sistema de monitoramento de temperatura e umidade com Arduino ESP32 e tela OLED, você precisará dos seguintes componentes:

Nome Descrição Função no Projeto Link para Documentação
Arduino ESP32 Placa de desenvolvimento com processador dual-core, Wi-Fi e Bluetooth integrados. Controlador principal do sistema, responsável por ler os dados dos sensores e controlar a tela OLED. Documentação do Arduino ESP32
Sensor de Temperatura e Umidade DHT11/DHT22 Sensor digital que fornece leituras de temperatura e umidade relativa. Coleta os dados de temperatura e umidade do ambiente. Documentação do Sensor DHT11
Tela OLED 0.96″ I2C Tela de exibição com interface I2C para comunicação com o ESP32. Exibe os dados de temperatura e umidade em tempo real. Documentação da Tela OLED 0.96″ I2C
Resistor de 10k Ohms Resistor para limitar a corrente no circuito. Conectado ao sensor DHT11/DHT22 para garantir funcionamento adequado. Documentação de Resistores
Cabos Jumper Cabos para conectar os componentes do circuito. Conecta os componentes entre si e à placa ESP32. Documentação de Cabos Jumper
Fonte de Alimentação 5V Fonte de energia para alimentar o circuito. Fornece a energia necessária para o funcionamento do ESP32, sensores e tela OLED. Documentação de Fontes de Alimentação

Montagem do Circuito

O diagrama esquemático do circuito é apresentado abaixo. Siga as etapas descritas para montar o circuito:

[Imagem do diagrama esquemático do circuito]

  1. Conecte o sensor DHT11/DHT22 à placa ESP32, utilizando os seguintes pinos:
    • DHT11/DHT22- Data: Conecte ao pino GPIO 21 do ESP32.
    • DHT11/DHT22 – VCC: Conecte ao pino 5V do ESP32.
    • DHT11/DHT22 – GND: Conecte ao pino GND do ESP32.
  2. Conecte o resistor de 10k Ohms entre o pino Data do DHT11/DHT22 e o pino VCC do ESP32.
  3. Conecte a tela OLED à placa ESP32, utilizando os seguintes pinos:
    • Tela OLED – SDA: Conecte ao pino GPIO 21 do ESP32.
    • Tela OLED – SCL: Conecte ao pino GPIO 22 do ESP32.
    • Tela OLED – VCC: Conecte ao pino 5V do ESP32.
    • Tela OLED – GND: Conecte ao pino GND do ESP32.
  4. Conecte a fonte de alimentação 5V ao conector de alimentação da placa ESP32.
[Imagens de cada etapa da montagem do circuito]

Código do Arduino

O código do Arduino ESP32 para ler os dados dos sensores, formatá-los para exibição na tela OLED e atualizar a tela periodicamente é apresentado abaixo:

 
// Bibliotecas necessárias
#include 
#include 
#include 
#include 

// Definição dos pinos
#define DHTPIN 21 // Pino GPIO conectado ao sensor DHT11/DHT22
#define DHTTYPE DHT11 // Tipo do sensor DHT (DHT11 ou DHT22)
#define OLED_RESET 4 // Pino GPIO conectado ao reset da tela OLED (se aplicável)
#define SCREEN_WIDTH 128 // Largura da tela OLED
#define SCREEN_HEIGHT 64 // Altura da tela OLED

// Criação do objeto da tela OLED
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);

// Criação do objeto do sensor DHT
DHT dht(DHTPIN, DHTTYPE);

void setup() 
  // Inicializa a comunicação serial
  Serial.begin(115200);

  // Inicializa a tela OLED
  display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
  display.clearDisplay();
  display.setTextColor(WHITE);
  display.setTextSize(1);

  // Inicializa o sensor DHT
  dht.begin();


void loop() 
  // Lê os dados do sensor DHT
  float humidity = dht.readHumidity();
  float temperature = dht.readTemperature();

  // Formata os dados para exibição
  String humidityStr = String(humidity) + " %";
  String temperatureStr = String(temperature) + " °C";

  // Limpa a tela OLED
  display.clearDisplay();

  // Exibe os dados na tela OLED
  display.setCursor(0, 0);
  display.print("Umidade: ");
  display.print(humidityStr);
  display.setCursor(0, 10);
  display.print("Temperatura: ");
  display.print(temperatureStr);

  // Atualiza a tela OLED
  display.display();

  // Aguarda 2 segundos antes de atualizar novamente
  delay(2000);

 

O código utiliza as seguintes bibliotecas:

  • Wire.h:Biblioteca para comunicação I2C, utilizada para comunicação com a tela OLED.
  • Adafruit_GFX.h:Biblioteca gráfica para a tela OLED, utilizada para desenhar texto, gráficos e imagens.
  • Adafruit_SSD1306.h:Biblioteca específica para a tela OLED SSD1306.
  • DHT.h:Biblioteca para o sensor DHT11/DHT22, utilizada para ler os dados de temperatura e umidade.

O código define os pinos GPIO conectados ao sensor DHT11/DHT22 e à tela OLED, além das dimensões da tela OLED. Em seguida, ele inicializa a comunicação serial, a tela OLED e o sensor DHT. Na função loop(), o código lê os dados do sensor DHT, formata-os para exibição e atualiza a tela OLED periodicamente.

Configuração da Tela OLED

A tela OLED é configurada utilizando a biblioteca Adafruit_SSD1306.h. A configuração da tela inclui a definição do tamanho, orientação e outras propriedades. O código do Arduino demonstra como inicializar a tela OLED, definir a cor do texto e desenhar texto na tela.

Para definir o tamanho e a orientação da tela, você precisa ajustar as variáveis SCREEN_WIDTH e SCREEN_HEIGHT no código. Para alterar a orientação da tela, você pode usar a função display.setRotation(orientação).

Para desenhar texto, gráficos e imagens na tela OLED, você pode utilizar as funções da biblioteca Adafruit_GFX.h, como display.setCursor(), display.print(), display.setTextSize(), display.setTextColor(), display.drawPixel(), display.drawLine(), display.drawRect(), display.drawCircle(), display.drawImage() e outras.

Calibração dos Sensores

A calibração dos sensores de temperatura e umidade é essencial para garantir a precisão das leituras. Isso pode ser feito utilizando um instrumento de referência, como um termômetro digital ou um higrômetro.

Para calibrar o sensor de temperatura, compare as leituras do sensor com as do termômetro de referência. Ajuste o valor de calibração no código do Arduino para corrigir qualquer diferença entre as leituras.

Para calibrar o sensor de umidade, compare as leituras do sensor com as do higrômetro de referência. Ajuste o valor de calibração no código do Arduino para corrigir qualquer diferença entre as leituras.

O código de calibração pode incluir a leitura dos dados dos sensores e do instrumento de referência, cálculo da diferença entre as leituras e ajuste do valor de calibração no código.

Exemplos de Aplicações

O sistema de monitoramento de temperatura e umidade com Arduino ESP32 e tela OLED pode ser utilizado em diversos cenários, como:

  • Monitoramento de Temperatura em Incubadoras:O sistema pode ser usado para monitorar a temperatura em incubadoras de ovos, garantindo a temperatura ideal para o desenvolvimento dos embriões.
  • Controle de Umidade em Estufas:O sistema pode ser utilizado para monitorar a umidade em estufas, permitindo a otimização do sistema de irrigação e a prevenção de doenças nas plantas.
  • Monitoramento de Temperatura em Ambientes Industriais:O sistema pode ser usado para monitorar a temperatura em ambientes industriais, garantindo a segurança dos trabalhadores e o bom funcionamento dos equipamentos.
  • Controle de Temperatura e Umidade em Residências:O sistema pode ser utilizado para monitorar a temperatura e umidade em residências, permitindo o controle do sistema de ar condicionado e aquecimento e a criação de um ambiente mais confortável e saudável.

O uso de um sistema de monitoramento de temperatura e umidade com interface OLED oferece diversas vantagens, como:

  • Visualização em Tempo Real:A tela OLED permite a visualização dos dados de temperatura e umidade em tempo real, facilitando a tomada de decisões e o controle do ambiente.
  • Interface Intuitiva:A interface da tela OLED é intuitiva e fácil de entender, tornando o sistema acessível a usuários de diferentes níveis de conhecimento técnico.
  • Baixo Consumo de Energia:As telas OLED possuem baixo consumo de energia, o que as torna ideais para aplicações com baterias ou fontes de energia limitadas.
  • Flexibilidade:O sistema pode ser facilmente adaptado para diferentes aplicações, através da modificação do código e da adição de novos componentes.

O projeto pode ser expandido para integrar outros sistemas e plataformas, como:

  • Integração com a Internet das Coisas (IoT):O ESP32 pode ser usado para enviar os dados de temperatura e umidade para a nuvem, permitindo o acesso remoto aos dados e a criação de sistemas de alerta automatizados.
  • Integração com Sistemas de Automação Residencial:O sistema pode ser integrado a sistemas de automação residencial, permitindo o controle automático da temperatura e umidade em diferentes ambientes da casa.
  • Integração com Plataformas de Análise de Dados:Os dados de temperatura e umidade podem ser enviados para plataformas de análise de dados, permitindo a geração de relatórios e a identificação de tendências e padrões.

O projeto Display OLED: Dados de Temperatura e Umidade com Arduino ESP32 é um exemplo prático de como a tecnologia pode ser aplicada para monitorar e controlar variáveis ambientais de forma eficiente e precisa. Através da combinação de sensores, microcontroladores e interfaces gráficas, este projeto oferece uma solução completa para diversas necessidades, demonstrando o potencial da plataforma Arduino ESP32 para aplicações de IoT e automação.

Categorized in:

Uncategorized,

Last Update: December 20, 2024