Remember to maintain security and privacy. Do not share sensitive information. Procedimento.com.br may make mistakes. Verify important information. Termo de Responsabilidade
Sistemas embarcados são sistemas de computação especializados que realizam funções específicas dentro de um dispositivo maior. Eles são essenciais em diversas aplicações, desde automação industrial até dispositivos médicos e eletrodomésticos inteligentes. O Arduino é uma plataforma de prototipagem eletrônica de código aberto, amplamente utilizada em projetos de sistemas embarcados devido à sua simplicidade e flexibilidade. Este artigo abordará a criação de um sistema embarcado básico utilizando o Arduino, destacando sua importância e aplicabilidade.
Projeto: Neste projeto, desenvolveremos um sistema de monitoramento de temperatura e umidade utilizando um sensor DHT11 e um display LCD 16x2. O objetivo é medir e exibir continuamente a temperatura e a umidade do ambiente em tempo real. Este projeto é ideal para iniciantes, pois introduz conceitos fundamentais de leitura de sensores e exibição de dados em um display.
Lista de componentes:
Exemplos:
// Inclui as bibliotecas necessárias
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include "DHT.h"
// Define o tipo de sensor DHT e o pino de conexão
#define DHTTYPE DHT11
#define DHTPIN 2
// Inicializa o LCD com o endereço I2C (0x27) e tamanho (16x2)
LiquidCrystal_I2C lcd(0x27, 16, 2);
// Inicializa o sensor DHT
DHT dht(DHTPIN, DHTTYPE);
void setup() {
// Inicia a comunicação serial para depuração
Serial.begin(9600);
// Inicia o LCD
lcd.begin();
// Liga a luz de fundo do LCD
lcd.backlight();
// Inicia o sensor DHT
dht.begin();
}
void loop() {
// Aguarda 2 segundos entre as leituras
delay(2000);
// Lê a umidade e a temperatura
float h = dht.readHumidity();
float t = dht.readTemperature();
// Verifica se a leitura falhou e exibe mensagem de erro
if (isnan(h) || isnan(t)) {
Serial.println("Falha na leitura do sensor DHT!");
lcd.setCursor(0, 0);
lcd.print("Erro no sensor");
return;
}
// Exibe os valores no monitor serial
Serial.print("Umidade: ");
Serial.print(h);
Serial.print(" %\t");
Serial.print("Temperatura: ");
Serial.print(t);
Serial.println(" *C");
// Exibe os valores no LCD
lcd.setCursor(0, 0);
lcd.print("Umid: ");
lcd.print(h);
lcd.print(" %");
lcd.setCursor(0, 1);
lcd.print("Temp: ");
lcd.print(t);
lcd.print(" C");
}
Comentários sobre o código:
Wire.h
e LiquidCrystal_I2C.h
são usadas para controlar o display LCD via interface I2C.DHT.h
é usada para ler os dados do sensor DHT11.setup()
, inicializamos a comunicação serial, o LCD e o sensor DHT.loop()
, lemos a temperatura e a umidade a cada 2 segundos e exibimos os valores no monitor serial e no LCD.Desafios comuns: