2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
Um dispositivo pode ser utilizado para medir a energia consumida. Este circuito também pode atuar como um voltímetro e amperímetro para medir a tensão e a corrente.
Suprimentos
Componentes de hardware
Arduino Uno
LCD 16 X 2
LM 358 Op-Amp
Regulador de volagem 7805
Potenciômetro 10k ohm
0,1 µF
Resistor 10k ohm
Resistor, 20 kohm
Resistor 2,21k ohm
Resistor, 0,22 ohm
Carga de teste
Fios de conexão
Componentes de software:
IDE Arduino
Etapa 1: Trabalho com Wattímetro Arduino
Construir seus próprios medidores não apenas reduz o custo dos testes, mas também nos dá espaço para facilitar o processo de teste.
Trabalhando:
Da parte do sensor, existem duas seções que são confiáveis para medir a tensão e a corrente. Para medir a tensão, um circuito divisor de tensão é executado usando um resistor de 10KΩ e 2,2KΩ.
Com a ajuda desses resistores, você pode medir facilmente tensões de até 24V. Esses resistores também nos ajudam a levar a faixa de tensão de 0 V - 5 V, que é a faixa normal na qual o Arduino funciona.
Para medir a corrente, temos que alterar os valores da corrente para os valores convencionais de tensão. De acordo com a Lei de Ohm, a queda de tensão em uma carga é proporcional à corrente.
Conseqüentemente, um pequeno resistor de derivação é disposto em relação à carga. Estimando a tensão neste resistor, podemos calcular a corrente. Usamos LM358 Op-Amp no modo de amplificador sem inversão para ampliar os valores fornecidos ao Arduino.
A rede divisora de tensão para o controle de feedback inclui um resistor 20KΩ e um resistor 1KΩ. Esses resistores oferecem um ganho de aproximadamente 21.
Saiba mais sobre o Curso de IoT, que o ajudará a construir soluções personalizadas de IoT.
Etapa 2: execute um código
#incluir
int Read_Voltage = A1;
int Read_Current = A0;
const int rs = 2, en = 4, d4 = 9, d5 = 10, d6 = 11, d7 = 12;
LiquidCrystal lcd (rs, en, d4, d5, d6, d7);
tensão flutuante = 0,0;
float Current = 0.0;
potência flutuante = 0,0;
void setup ()
{
lcd.begin (16, 2);
Serial.begin (9600);
lcd.print ("Arduino");
lcd.setCursor (0, 1);
lcd.print ("Wattímetro");
atraso (2000);
lcd.clear ();
}
void loop ()
{
Voltage = analogRead (Read_Voltage);
Current = analogRead (Read_Current);
Tensão = Tensão * (5,0 / 1023,0) * 6,46;
Atual = Atual * (5,0 / 1023,0) * 0,239;
Serial.println (Voltagem); Serial.println (atual);
Potência = Tensão * Corrente;
Serial.println (alimentação);
lcd.setCursor (0, 0);
lcd.print ("V =");
lcd.print (voltagem);
lcd.print ("");
lcd.print ("I =");
lcd.print (atual);
lcd.setCursor (0, 1);
lcd.print ("P =");
lcd.print (alimentação);
atraso (1000);
}