Remember to maintain security and privacy. Do not share sensitive information. Procedimento.com.br may make mistakes. Verify important information. Termo de Responsabilidade

Como criar um sistema de monitoramento de temperatura com Arduino

O monitoramento de temperatura é uma aplicação comum e útil em diversos projetos de automação e controle. Utilizando o Arduino, é possível criar um sistema de monitoramento de temperatura de forma simples e eficaz. Neste artigo, vamos explorar como criar um sistema de monitoramento de temperatura usando um sensor de temperatura DS18B20 e um display LCD.

Componentes Necessários

  • Arduino Uno ou similar
  • Sensor de temperatura DS18B20
  • Resistor de 4.7k ohms
  • Display LCD 16x2 com interface I2C
  • Protoboard e jumpers

Conexões

  1. Sensor DS18B20:

    • Pino VCC do sensor -> 5V do Arduino
    • Pino GND do sensor -> GND do Arduino
    • Pino Data do sensor -> Pino digital 2 do Arduino
    • Conectar um resistor de 4.7k ohms entre o pino VCC e o pino Data do sensor
  2. Display LCD 16x2 com I2C:

    • VCC do display -> 5V do Arduino
    • GND do display -> GND do Arduino
    • SDA do display -> Pino A4 do Arduino
    • SCL do display -> Pino A5 do Arduino

Código Arduino

Para este projeto, precisamos das bibliotecas OneWire, DallasTemperature e LiquidCrystal_I2C. Certifique-se de instalá-las na IDE do Arduino antes de prosseguir.

#include <OneWire.h>
#include <DallasTemperature.h>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>

// Data wire is plugged into pin 2 on the Arduino
#define ONE_WIRE_BUS 2

// Setup a oneWire instance to communicate with any OneWire devices
OneWire oneWire(ONE_WIRE_BUS);

// Pass our oneWire reference to Dallas Temperature.
DallasTemperature sensors(&oneWire);

// Set the LCD address to 0x27 for a 16 chars and 2 line display
LiquidCrystal_I2C lcd(0x27, 16, 2);

void setup() {
  // Start serial communication for debugging purposes
  Serial.begin(9600);

  // Start up the library
  sensors.begin();

  // Initialize the LCD
  lcd.begin();
  lcd.backlight();

  lcd.setCursor(0, 0);
  lcd.print("Temp Monitor");
}

void loop() {
  // Request temperature readings
  sensors.requestTemperatures();

  // Fetch the temperature in Celsius
  float tempC = sensors.getTempCByIndex(0);

  // Print the temperature to the serial monitor
  Serial.print("Temperature: ");
  Serial.print(tempC);
  Serial.println(" C");

  // Display the temperature on the LCD
  lcd.setCursor(0, 1);
  lcd.print("Temp: ");
  lcd.print(tempC);
  lcd.print(" C");

  // Wait 1 second before taking another reading
  delay(1000);
}

Explicação do Código

  1. Bibliotecas:

    • OneWire e DallasTemperature são usadas para comunicação com o sensor DS18B20.
    • LiquidCrystal_I2C é usada para controlar o display LCD via interface I2C.
  2. Configuração:

    • Inicializamos a comunicação serial para depuração.
    • Configuramos a comunicação com o sensor de temperatura e o display LCD.
  3. Loop Principal:

    • Solicitamos uma leitura de temperatura do sensor.
    • Obtemos a temperatura em Celsius e a exibimos no monitor serial e no display LCD.
    • Aguardamos 1 segundo antes de repetir o processo.

Considerações Finais

Este projeto básico de monitoramento de temperatura pode ser expandido para incluir funcionalidades adicionais, como alarmes de temperatura, registro de dados, ou integração com sistemas IoT para monitoramento remoto.

To share Download PDF

Gostou do artigo? Deixe sua avaliação!
Sua opinião é muito importante para nós. Clique em um dos botões abaixo para nos dizer o que achou deste conteúdo.