Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Manufacturing Technology >> Processo de manufatura

Sensor DHT22 de Temperatura e Umidade com Display LCD 16x2 I2C no Arduino

Componentes e Materiais

Arduino UNO 1
Sensor DHT22 (Temperatura e Umidade) 1
Display LCD 16x2 com Módulo I2C (5V) 1
Protoboard (Full Size) 1
Bateria 9V + Conector 1
Cabos USB e Jumpers (M/M, M/F) Conforme necessário

Sobre o Projeto

Meu filho (7 anos) comprou cobras e um terrário. Para manter o ambiente adequado, precisávamos monitorar temperatura e umidade. Um sensor analógico mostrou-se impreciso, então decidi usar o Arduino Uno recém-comprado para automatizar a leitura com um sensor DHT22 e display LCD I2C 16x2.

Este tutorial é a base do projeto: leitura do DHT22 e exibição no LCD I2C, sem automação ainda.

Hardware Necessário

Bibliotecas Necessárias

Antes de Começar

O LCD I2C usa apenas 4 fios (VCC, GND, SDA, SCL). O display tem um endereço I2C — no meu caso 0x3F. Se o seu for diferente, ajuste no código.

Ligação na Protoboard

Conectei 5V do Arduino à linha vermelha (+) e GND à linha azul (-) da protoboard. Cores: vermelho para 5V, azul para GND, amarelo para dados do DHT22 (pino digital 4), laranja para SDA (A4), cinza para SCL (A5).

Conectando o DHT22

O DHT22 tem 4 pinos (VCC, Data, NC, GND). Coloquei na protoboard com a frente voltada para fora. Pino 1 (VCC) à direita. VCC e GND nas linhas de alimentação. Pino de dados (pino 2) no digital 4 do Arduino.

Conectando o LCD 16x2 I2C

4 pinos (da esquerda para direita): GND, VCC (5V), SDA, SCL. GND e VCC nas linhas da protoboard. SDA no A4, SCL no A5 do Arduino Uno.

O Código

Configure o endereço I2C (0x3F no meu caso). Instale as bibliotecas na pasta libraries do Arduino. Carregue o código e monitore temperatura e umidade.

Código Completo (hygroThermo.ino)

/* Como usar sensor DHT-22 com Arduino Uno
   Mais info: https://www.ardumotive.com/how-to-use-dht-22-sensor-en.html
   Dev: Michalis Vasilakis // Date: 1/7/2015 // www.ardumotive.com */

#include <DHT.h>
#include <Wire.h>
#include <LCD.h>
#include <LiquidCrystal_I2C.h>

// Constantes
#define DHTPIN 4
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE);

// LCD I2C - Endereço 0x3F
#define I2C_ADDR 0x3F
#define BACKLIGHT_PIN 3
#define En_pin 2
#define Rw_pin 1
#define Rs_pin 0
#define D4_pin 4
#define D5_pin 5
#define D6_pin 6
#define D7_pin 7

LiquidCrystal_I2C lcd(I2C_ADDR, En_pin, Rw_pin, Rs_pin, D4_pin, D5_pin, D6_pin, D7_pin);

// Variáveis
int chk;
float hum;
float temp;

void setup() {
  Serial.begin(9600);
  dht.begin();
  lcd.begin(16, 2);
  lcd.setBacklightPin(BACKLIGHT_PIN, POSITIVE);
  lcd.setBacklight(HIGH);
}

void loop() {
  delay(2000);
  hum = dht.readHumidity();
  temp = dht.readTemperature();

  // Serial Monitor
  Serial.print("Umidade: ");
  Serial.print(hum);
  Serial.print(" %, Temp: ");
  Serial.print(temp);
  Serial.println(" Celsius");

  // Display LCD
  lcd.clear();
  lcd.setCursor(0, 0);
  lcd.print("Temp: ");
  lcd.print(temp);
  lcd.print(" ");
  lcd.print((char)223);
  lcd.print("C");
  lcd.setCursor(0, 1);
  lcd.print("Um: ");
  lcd.print(hum);
  lcd.print(" %");
  delay(2000);
}

Esquemático

Arquivo Fritzing: schema_UcHE1qRu2t.fzz e imagem do esquema disponíveis no projeto original.

Processo de manufatura

  1. Integração I2C Arduino‑Raspberry Pi 2 Perfeita para Projetos IoT de Sensores
  2. Painel de Controle para Flight Simulator 2020 com Arduino Nano – Display LCD e CDI
  3. Capture Gotas d'Água em Ação com Arduino Nano – Fotografia de Alta Velocidade DIY
  4. Registrador de Temperatura e Umidade com Arduino, DHT11 e Ethernet Shield
  5. Projeto HMI Interativo com Nextion, Arduino Mega e Sensores
  6. Como Exibir Imagens em LCD TFT 1.17" com Arduino UNO
  7. Exibir Temperatura, Umidade e Pressão do BME280 em Touchscreen Nextion
  8. Osciloscópio DIY com Arduino Nano (10 Hz–50 kHz) e LCD 128×64
  9. Módulo GPS u-blox LEA‑6H 02: Guia de Integração com Arduino e Python
  10. Construa um Relógio Despertador Confiável com RTC DS1302 e Arduino UNO