Projetos de circuito eletrônicoProjetos de engenharia do ArduinoCircuito Medidor de Capacitância Digital Usando Arduino

Circuito Medidor de Capacitância Digital Usando Arduino

Relacionados

Neste post vamos construir um circuito medidor de capacitância digital usando Arduino que pode medir a capacitância de capacitores que variam de 1 microfarad a 4000 microfarad com precisão razoável.

Introdução

Medimos o valor dos capacitores quando os valores escritos no corpo do capacitor não são legíveis, ou para encontrar o valor do capacitor envelhecido em nosso circuito que precisa ser substituído mais cedo ou mais tarde e existem vários outros motivos para medir a capacitância.

Para encontrar a capacitância podemos medir facilmente usando um multímetro digital, mas nem todos os multímetros possuem o recurso de medição de capacitância e apenas os multímetros caros possuem essa funcionalidade.

Então aqui está um circuito que pode ser construído e usado com facilidade.

Estamos focando em capacitores com valor maior de 1 microfarad a 4000 microfarad que são propensos a perder sua capacitância devido ao envelhecimento, especialmente capacitores eletrolíticos, que consistem em eletrólito líquido.

Antes de entrarmos nos detalhes do circuito, vamos ver como podemos medir a capacitância com o Arduino.

A maioria dos medidores de capacitância do Arduino depende da propriedade constante de tempo RC. Então, o que é constante de tempo RC?

A constante de tempo do circuito RC pode ser definida como o tempo necessário para o capacitor atingir 63,2% da carga total. Zero volt é 0% de carga e 100% é a carga de tensão total do capacitor.

O produto do valor do resistor em ohm e o valor do capacitor em farad dá a constante de tempo.

T = R x C

T é a constante de tempo

Reorganizando a equação acima, obtemos:

C = T/R

C é o valor de capacitância desconhecido.

T é a constante de tempo do circuito RC que é 63,2% do capacitor de carga total.

R é uma resistência conhecida.

O Arduino pode detectar a tensão via pino analógico e o valor conhecido do resistor pode ser inserido no programa manualmente.

Aplicando a equação C = T/R no programa podemos encontrar o valor desconhecido da capacitância.

A essa altura você já deve ter uma ideia de como podemos encontrar o valor da capacitância desconhecida.

Neste post eu propus dois tipos de medidores de capacitância, um com display LCD e outro com monitor serial.

Se você é um usuário frequente deste medidor de capacitância, é melhor ir com o design do display LCD e se você não é um usuário frequente, é melhor usar o design do monitor serial, porque você economiza alguns dólares no display LCD.

Agora vamos passar para o diagrama de circuito.

Medidor de capacitância baseado em monitor serial:

IMG 62439EB3C8793



Como você pode ver, o circuito é muito simples, apenas alguns resistores são necessários para encontrar a capacitância desconhecida. tensão crescente e decrescente no pino A0 que está conectado entre resistores de 1K ohm e 220 ohm. Por favor, tome cuidado com a polaridade se você estiver usando capacitores polarizados, como eletrolíticos.Programa:
//-----------------Program developed by R.Girish------------------//
const int analogPin = A0;
const int chargePin = 7 ;
const int dischargePin = 6;
float resistorValue = 1000 // Value of known resistor in ohm
unsigned long startTime;
unsigned long elapsedTime;
float microFarads;
void setup()
{
Serial.begin(9600);
pinMode(chargePin, OUTPUT);
digitalWrite(chargePin, LOW);
}
void loop()
{
digitalWrite(chargePin, HIGH);
startTime = millis();
while(analogRead(analogPin) < 648){}
elapsedTime = millis() - startTime;
microFarads = ((float)elapsedTime / resistorValue) * 1000;
if (microFarads > 1)
{
Serial.print("Value = ");
Serial.print((long)microFarads);
Serial.println(" microFarads");
Serial.print("Elapsed Time = ");
Serial.print(elapsedTime);
Serial.println("mS");
Serial.println("--------------------------------");
}
else
{
Serial.println("Please connect Capacitor!");
delay(1000);
}
digitalWrite(chargePin, LOW);
pinMode(dischargePin, OUTPUT);
digitalWrite(dischargePin, LOW);
while(analogRead(analogPin) > 0) {}
pinMode(dischargePin, INPUT);
}
//-----------------Program developed by R.Girish------------------//

Carregue o código acima para o Arduino com a configuração de hardware concluída, inicialmente não conecte o capacitor. Abra o monitor serial; ele diz “Por favor, conecte o capacitor”.

Agora conecte um capacitor, sua capacitância será exibida conforme ilustrado abaixo.

Também mostra o tempo necessário para atingir 63,2% da tensão de carga total do capacitor, que é mostrado como tempo decorrido.

MEDIDOR DE CAPACITÂNCIA DIGITAL USANDO ARDUINO

Diagrama de circuito para medidor de capacitância baseado em LCD:

O esquema acima é a conexão entre o display LCD e o Arduino. O potenciômetro de 10K é fornecido para ajustar o contraste da tela. As demais conexões são autoexplicativas.

IMG 62439EB47809C

O circuito acima é exatamente igual ao design baseado em monitor serial; você só precisa conectar o display LCD.

Programa para medidor de capacitância baseado em LCD:

//-----------------Program developed by R.Girish------------------//
#include
LiquidCrystal lcd(12,11,5,4,3,2);
const int analogPin = A0;
const int chargePin = 7 ;
const int dischargePin = 6;
float resistorValue = 1000; // Value of known resistor in ohm
unsigned long startTime;
unsigned long elapsedTime;
float microFarads;
void setup()
{
Serial.begin(9600);
lcd.begin(16,2);
pinMode(chargePin, OUTPUT);
digitalWrite(chargePin, LOW);
lcd.clear();
lcd.setCursor(0,0);
lcd.print(" CAPACITANCE");
lcd.setCursor(0,1);
lcd.print(" METER");
delay(1000);
}
void loop()
{
digitalWrite(chargePin, HIGH);
startTime = millis();
while(analogRead(analogPin) < 648){}
elapsedTime = millis() - startTime;
microFarads = ((float)elapsedTime / resistorValue) * 1000;
if (microFarads > 1)
{
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Value = ");
lcd.print((long)microFarads);
lcd.print(" uF");
lcd.setCursor(0,1);
lcd.print("Elapsed:");
lcd.print(elapsedTime);
lcd.print(" mS");
delay(100);
}
else
{
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Please connect");
lcd.setCursor(0,1);
lcd.print("capacitor !!!");
delay(500);
}
digitalWrite(chargePin, LOW);
pinMode(dischargePin, OUTPUT);
digitalWrite(dischargePin, LOW);
while(analogRead(analogPin) > 0) {}
pinMode(dischargePin, INPUT);
}
//-----------------Program developed by R.Girish------------------//

Com a configuração de hardware concluída, carregue o código acima. Inicialmente não conecte o capacitor. O visor mostra “Por favor, conecte o capacitor!!!” agora você conecta o capacitor. O display mostrará o valor do capacitor e o tempo decorrido para atingir 63,2% da carga total do capacitor.

Protótipo do autor:

IMG 62439EB4B7A27

Hashtags: #Circuito #Medidor #Capacitância #Digital #Usando #Arduino
 

FONTE


Nota: Este conteúdo foi traduzido do Inglês para português (auto)
Pode conter erros de tradução

Olá, se tiver algum erro de tradução (AUTO), falta de link para download etc…
Veja na FONTE até ser revisado o conteúdo.
Status (Ok Até agora)


Se tiver algum erro coloque nos comentários

Mas se gostou compartilhe!!!

Relacionados

Relacionados