Índice:

Módulo de medição de energia DIY para Arduino: 9 etapas (com imagens)
Módulo de medição de energia DIY para Arduino: 9 etapas (com imagens)

Vídeo: Módulo de medição de energia DIY para Arduino: 9 etapas (com imagens)

Vídeo: Módulo de medição de energia DIY para Arduino: 9 etapas (com imagens)
Vídeo: ARDUÍNO #5: Conheça o Arduíno UNO 2024, Novembro
Anonim
Módulo de medição de energia DIY para Arduino
Módulo de medição de energia DIY para Arduino
Módulo de medição de energia DIY para Arduino
Módulo de medição de energia DIY para Arduino
Módulo de medição de energia DIY para Arduino
Módulo de medição de energia DIY para Arduino

Olá a todos, espero que estejam bem! Neste instrutível, vou mostrar como fiz este módulo medidor de energia / watímetro para uso com uma placa Arduino. Este medidor de energia pode calcular a energia consumida por uma carga DC. Junto com a alimentação, este módulo também pode nos fornecer leituras precisas de tensão e corrente. Ele pode medir facilmente tensões baixas (cerca de 2 V) e correntes baixas, tão baixas quanto 50 mA com um erro não superior a 20 mA. A precisão depende da escolha dos componentes com base em seus requisitos.

Suprimentos

  • IC LM358 OP-AMP duplo
  • Base IC de 8 pinos
  • Resistência de derivação (8,6 miliOhms no meu caso)
  • Resistores: 100K, 10K, 2,2K, 1K (1/2 watt)
  • Capacitores: capacitores de cerâmica 3 * 0.1uF
  • Veroboard ou placa zero
  • Terminais de parafuso
  • Ferro de solda e solda
  • Arduino Uno ou qualquer outra placa compatível
  • Display OLED
  • Conectando fios de pão

Etapa 1: reunir os componentes necessários

Reunindo os componentes necessários
Reunindo os componentes necessários

Este projeto usa componentes muito simples e fáceis de obter: eles incluem resistores, capacitores de cerâmica, amplificador operacional e um veroboard para prototipagem.

A escolha e o valor dos componentes dependem do tipo de aplicação e da faixa de potência que você deseja medir.

Etapa 2: o princípio de funcionamento

O princípio de funcionamento
O princípio de funcionamento
O princípio de funcionamento
O princípio de funcionamento
O princípio de funcionamento
O princípio de funcionamento
O princípio de funcionamento
O princípio de funcionamento

O funcionamento do módulo de potência é baseado em dois conceitos da teoria do circuito e eletricidade básica: O conceito do divisor de tensão para medição da tensão de entrada e a Lei de Ohm para calcular a corrente que flui através do circuito. Estamos usando um resistor shunt para criar uma queda de tensão muito pequena nele. Essa queda de tensão é proporcional à quantidade de corrente que flui pelo shunt. Esta pequena tensão quando amplificada por um amplificador operacional pode ser usada como uma entrada para um microcontrolador que pode ser programado para nos dar o valor da corrente. O amplificador operacional é usado como um amplificador não inversor onde o ganho é determinado pelos valores do feedback resistor R2 e R1. Usar a configuração não inversora nos permite ter um aterramento comum como referência de medição. Para isso, a corrente está sendo medida no lado de baixa do circuito. Para minha aplicação, escolhi um ganho de 46 usando o resistor de 100K e 2,2K como rede de feedback. A medição da tensão é feita usando um circuito divisor de tensão que divide a tensão de entrada em proporção à rede de resistores usada.

Tanto o valor da corrente do OP-Amp quanto o valor da tensão da rede divisória podem ser alimentados em duas entradas analógicas do arduino para que possamos calcular a energia consumida por uma carga.

Etapa 3: juntando as peças

Juntando as peças
Juntando as peças
Juntando as peças
Juntando as peças
Juntando as peças
Juntando as peças

Vamos começar a construção de nosso módulo de potência decidindo a posição dos terminais de parafuso para conexão de entrada e saída. Depois de marcar as posições apropriadas, soldamos os terminais de parafuso e o resistor de derivação no lugar.

Etapa 4: adicionar as peças para a rede de detecção de tensão

Adicionando as peças para a rede de detecção de tensão
Adicionando as peças para a rede de detecção de tensão
Adicionando as peças para a rede de detecção de tensão
Adicionando as peças para a rede de detecção de tensão
Adicionando as peças para a rede de detecção de tensão
Adicionando as peças para a rede de detecção de tensão

Para detecção de tensão de entrada, estou usando uma rede divisora de tensão de 10K e 1K. Eu também adicionei um capacitor de 0,1 uF ao longo do resistor de 1K para suavizar as tensões. A rede de detecção de tensão é soldada perto do terminal de entrada

Etapa 5: Adicionar as peças para a rede de detecção atual

Adicionando as peças para a rede de sentido atual
Adicionando as peças para a rede de sentido atual
Adicionando as peças para a rede de sentido atual
Adicionando as peças para a rede de sentido atual
Adicionando as peças para a rede de sentido atual
Adicionando as peças para a rede de sentido atual
Adicionando as peças para a rede de sentido atual
Adicionando as peças para a rede de sentido atual

A corrente está sendo medida calculando e amplificando a queda de tensão no resistor de derivação com um ganho predefinido definido pela rede de resistores. É usado o modo de amplificação sem inversão. É desejável manter os vestígios de solda pequenos para evitar quedas de tensão indesejadas.

Etapa 6: Concluindo as conexões restantes e finalizando a construção

Concluindo as conexões restantes e finalizando a construção
Concluindo as conexões restantes e finalizando a construção
Concluindo as conexões restantes e finalizando a construção
Concluindo as conexões restantes e finalizando a construção
Concluindo as conexões restantes e finalizando a construção
Concluindo as conexões restantes e finalizando a construção

Com as redes de detecção de tensão e corrente conectadas e soldadas, é hora de soldar os pinos do conector macho e fazer as conexões necessárias de potência e saídas de sinal. O módulo será alimentado pela tensão operacional padrão de 5 volts, que podemos obter facilmente de uma placa Arduino. As duas saídas de detecção de tensão serão conectadas às entradas analógicas do arduino.

Etapa 7: Conectando o Módulo ao Arduino

Conectando o Módulo com Arduino
Conectando o Módulo com Arduino
Conectando o Módulo com Arduino
Conectando o Módulo com Arduino
Conectando o Módulo com Arduino
Conectando o Módulo com Arduino
Conectando o Módulo com Arduino
Conectando o Módulo com Arduino

Com o módulo concluído, é hora de conectá-lo a um Arduino e colocá-lo em execução. Para ver os valores, usei um display OLED que usava o protocolo I2C para se comunicar com o arduino. Os parâmetros exibidos na tela são Tensão, Corrente e Potência.

Etapa 8: Código do Projeto e Diagrama de Circuito

Código do Projeto e Diagrama de Circuito
Código do Projeto e Diagrama de Circuito

Anexei o diagrama de circuito e o código do módulo de energia nesta etapa (Anteriormente, anexei o arquivo.ino e.txt contendo o código, mas algum erro do servidor fez com que o código ficasse inacessível ou ilegível para os usuários, então escrevi todo o código nesta etapa. Sei que não é uma boa maneira de compartilhar o código:(). Sinta-se à vontade para modificar este código de acordo com seus requisitos. Espero que este projeto tenha sido útil para você. Compartilhe seus comentários nos comentários. Saudações!

#incluir

#incluir

#incluir

#incluir

# define display OLED_RESET 4 Adafruit_SSD1306 (OLED_RESET);

float val = 0;

corrente flutuante = 0;

tensão flutuante = 0;

potência flutuante = 0;

void setup () {

pinMode (A0, INPUT);

pinMode (A1, INPUT);

display.begin (SSD1306_SWITCHCAPVCC, 0x3C); // inicializa com o addr I2C 0x3C (para 128x32) display.display ();

atraso (2000);

// Limpe o buffer.

display.clearDisplay ();

display.setTextSize (1);

display.setCursor (0, 0);

display.setTextColor (WHITE);

Serial.begin (9600); // Para ver os valores no monitor serial

}

void loop () {

// tirando a média para leituras estáveis

para (int i = 0; i <20; i ++) {

corrente = corrente + leitura analógica (A0);

tensão = tensão + leitura analógica (A1); }

corrente = (corrente / 20); atual = atual * 0,0123 * 5,0; // valor de calibração, a ser alterado de acordo com os componentes usados

tensão = (tensão / 20); voltagem = voltagem * 0,0508 * 5,0; // valor de calibração, a ser alterado de acordo com os componentes usados

potência = tensão * corrente;

// imprimindo os valores no monitor serial

Serial.print (voltagem);

Serial.print ("");

Serial.print (atual);

Serial.print ("");

Serial.println (potência);

// imprimindo os valores no display OLED

display.setCursor (0, 0);

display.print ("Voltagem:");

display.print (voltagem);

display.println ("V");

display.setCursor (0, 10);

display.print ("Atual:");

display.print (atual);

display.println ("A");

display.setCursor (0, 20);

display.print ("Alimentação:");

display.print (poder);

display.println ("W");

display.display ();

atraso (500); // taxa de atualização definida pelo atraso

display.clearDisplay ();

}

Recomendado: