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

Gerenciamento de Energia com Arduino

O gerenciamento de energia é um aspecto crucial em diversos sistemas eletrônicos, desde dispositivos portáteis até grandes instalações industriais. Com o avanço da tecnologia e a crescente demanda por eficiência energética, torna-se imprescindível desenvolver soluções que permitam monitorar e controlar o consumo de energia de maneira eficiente. O Arduino, uma plataforma de prototipagem eletrônica de código aberto, oferece uma maneira acessível e flexível de implementar projetos de gerenciamento de energia. Este artigo abordará como criar um sistema básico de gerenciamento de energia utilizando Arduino, com exemplos práticos e detalhados.

Projeto: O projeto consiste em desenvolver um sistema de gerenciamento de energia que monitore o consumo de energia de um dispositivo elétrico e controle sua operação com base em limites predefinidos. O objetivo é fornecer uma solução que possa ser facilmente implementada em residências para reduzir o consumo de energia e aumentar a eficiência energética.

Lista de componentes:

  1. Arduino Uno - 1 unidade
  2. Sensor de corrente ACS712 - 1 unidade
  3. Módulo Relé - 1 unidade
  4. Display LCD 16x2 - 1 unidade
  5. Resistores 220 ohms - 2 unidades
  6. Potenciômetro 10k ohms - 1 unidade
  7. Protoboard e jumpers - Quantidade necessária
  8. Fonte de alimentação 9V - 1 unidade

Exemplos:

// Incluindo as bibliotecas necessárias
#include <LiquidCrystal.h>

// Definindo os pinos do display LCD
const int rs = 7, en = 8, d4 = 9, d5 = 10, d6 = 11, d7 = 12;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);

// Definindo os pinos do sensor de corrente e do relé
const int sensorPin = A0;
const int relayPin = 2;

// Definindo o limite de corrente (em amperes) para desligar o dispositivo
const float currentLimit = 2.0;

void setup() {
  // Inicializando o display LCD
  lcd.begin(16, 2);
  lcd.print("Energia:");

  // Configurando o pino do relé como saída
  pinMode(relayPin, OUTPUT);
  digitalWrite(relayPin, LOW); // Relé desligado inicialmente

  // Inicializando a comunicação serial
  Serial.begin(9600);
}

void loop() {
  // Lendo o valor do sensor de corrente
  int sensorValue = analogRead(sensorPin);

  // Convertendo o valor lido para corrente (em amperes)
  float voltage = (sensorValue / 1024.0) * 5.0;
  float current = (voltage - 2.5) / 0.185; // Sensibilidade do ACS712 5A é 185mV/A

  // Exibindo a corrente no display LCD
  lcd.setCursor(0, 1);
  lcd.print("Corrente: ");
  lcd.print(current);
  lcd.print(" A");

  // Exibindo a corrente no monitor serial
  Serial.print("Corrente: ");
  Serial.print(current);
  Serial.println(" A");

  // Verificando se a corrente excede o limite
  if (current > currentLimit) {
    digitalWrite(relayPin, HIGH); // Desligando o dispositivo
    lcd.setCursor(0, 0);
    lcd.print("Dispositivo OFF");
  } else {
    digitalWrite(relayPin, LOW); // Ligando o dispositivo
    lcd.setCursor(0, 0);
    lcd.print("Dispositivo ON ");
  }

  // Aguardando 1 segundo antes de realizar a próxima leitura
  delay(1000);
}

Comentários:

  • Este código utiliza a biblioteca LiquidCrystal para controlar o display LCD.
  • O sensor de corrente ACS712 é utilizado para medir o consumo de corrente do dispositivo.
  • O relé é controlado pelo Arduino para ligar ou desligar o dispositivo com base na corrente medida.
  • O valor da corrente é exibido no display LCD e no monitor serial para monitoramento.

Desafios comuns:

  • Calibração do sensor de corrente: É importante calibrar corretamente o sensor para obter leituras precisas.
  • Interferências eletromagnéticas: Certifique-se de que o sensor de corrente esteja bem isolado de fontes de interferência.

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.