Projetos de circuito eletrônicoMedidores e testadoresCircuito simples de ohmímetro digital Arduino

Circuito simples de ohmímetro digital Arduino

Relacionados

Neste post vamos construir um circuito simples de ohmímetro digital usando Arduino e display LCD 16×2. Também exploraremos outras ideias de circuitos possíveis usando o mesmo conceito.

Objetivo do circuito

O lema deste artigo não é apenas fazer um ohmímetro para medir a resistência; seu multímetro pode fazer melhor o mesmo.

O principal objetivo deste projeto é usar o valor de resistência lido pelo arduino para fazer alguns projetos úteis, por exemplo, alarme de incêndio, onde a mudança no valor de resistência do termistor pode ser facilmente detectada ou sistema de irrigação automático onde, se a resistência do solo vai alto o microcontrolador pode acionar a bomba de água. A possibilidade de projetos fica a critério da sua imaginação.

Vamos ver como fazer um ohmímetro primeiro e depois passamos para outras ideias de circuitos.

Como funciona

CIRCUITO DO OHMÍMETRO ARDUINO

O circuito consiste em Arduino; você pode usar sua placa Arduino favorita, um display LCD 16×2 para mostrar o valor do resistor desconhecido, um potenciômetro para ajustar o nível de contraste do display LCD. Dois resistores são usados, um dos quais é o valor do resistor conhecido e o outro é o valor do resistor desconhecido.

A resistência é uma função analógica, mas o valor exibido no LCD é uma função digital. Então, precisamos fazer a conversão analógica para digital, felizmente o Arduino possui um conversor analógico para digital de 10 bits embutido.

O ADC de 10 bits pode diferenciar 1024 níveis de tensão discretos, 5 volts são aplicados a 2 resistores e a amostra de tensão é coletada entre os resistores.

Usando alguns cálculos matemáticos, a queda de tensão no nó e o valor de resistência conhecido podem ser interpretados para encontrar o valor de resistência desconhecido.

As equações matemáticas são escritas no programa, então nenhum cálculo manual precisa ser feito, podemos ler o valor direto do display LCD.

Protótipo do autor:

PROTÓTIPO DO OHMÍMETRO DIGITAL ARDUINO
IMG 6245BBDF8546C

Programa para ohmímetro:

//-------------Program developed by R.Girish--------//
#include
LiquidCrystal lcd(12,11,5,4,3,2);
int analogPin=0;
int x=0;
float Vout=0;
float R=10000; //Known Resistor value in Ohm
float resistor=0;
float buffer=0;
void setup()
{
lcd.begin(16,2);
lcd.setCursor(0,0);
lcd.print("----OHM METER---");
}
void loop()
{
x=analogRead(analogPin);
buffer=x*5;
Vout=(buffer)/1024.0;
buffer=(5/Vout)-1;
resistor=R*buffer;
lcd.setCursor(0,1);
lcd.print("R = ");
lcd.print(resistor);
lcd.print(" Ohm");
delay(3000);
}
//-------------Program developed by R.Girish--------//

NOTA: float R=10000; //Valor conhecido do resistor em Ohm

Você pode alterar o valor do resistor conhecido no circuito, mas se você fizer isso, altere o valor no programa também.

Como um multímetro convencional, este circuito de ohmímetro digital Arduino também possui algumas faixas para medir a resistência. Se você tentar medir um resistor de baixo valor na faixa de mega ohm em seu multímetro, certamente obterá valores de erro.

Da mesma forma, é verdade para este ohmímetro também.

Se você deseja medir a resistência de 1K a 50K ohm, um resistor conhecido de 10K ohm será suficiente, mas se você medir a faixa de Mega ohm ou a faixa de poucos ohm, obterá algumas leituras de lixo. Portanto, é necessário alterar o valor do resistor conhecido para uma faixa apropriada.

Na próxima seção deste artigo, estudaremos o circuito do display LCD para o ohmímetro; e veremos como ler o valor do sensor (resistência desconhecida) no monitor serial.

Também informaremos o valor do limite no programa, uma vez que ele cruze o limite pré-determinado, o Arduino acionará o relé.

Diagrama de circuito:

IMG 6245BBDFC9BE1

Código do programa:

//-------------Program developed by R.Girish--------//
float th=7800; // Set resistance threshold in Ohms
int analogPin=0;
int x=0;
float Vout=0;
float R=10000; //Known value Resistor in Ohm
float resistor=0;
float buffer=0;
int op=7;
void setup()
{
Serial.begin(9600);
pinMode(op,OUTPUT);
digitalWrite(op,LOW);
}
void loop()
{
x=analogRead(analogPin);
buffer=x*5;
Vout=(buffer)/1024.0;
buffer=(5/Vout)-1;
resistor=R*buffer;
Serial.print("R = ");
Serial.print(resistor);
Serial.println(" Ohm");
if(th>resistor) // if resistance cross below threshold value, output is on, if you want opposite result use '<' //
{
digitalWrite(op,HIGH);
Serial.println("Output is ON");
delay(3000);
}
else
{
digitalWrite(op,LOW);
Serial.println("Output is OFF");
delay(3000);
}
}
//-------------Program developed by R.Girish--------//

NOTA:

• float th=7800; // Define o limite de resistência em Ohms
Substitua 7800 ohms pelo seu valor.
• flutuante R=10000; // Valor conhecido Resistor em Ohm
Substitua 10.000 ohms pelo valor do resistor conhecido.
• if(th>resistor)

Esta linha no programa indica que, se a resistência do sensor ficar abaixo do valor limite, a saída liga e vice-versa.

Se você quiser ligar o relé quando a leitura do sensor estiver acima do limite e vice-versa, basta substituir “if(thresistor)”

Ao medir a resistência do sensor diretamente (LDR ou termistor ou qualquer outra coisa) e definir um limite, podemos adquirir grande precisão de controle sobre relé, LEDs, motor e outros periféricos.

É melhor do que comparadores, onde definimos uma tensão de referência e definimos o limite girando um resistor variável cegamente para realizar tipos semelhantes de projetos.

Hashtags: #Circuito #simples #ohmímetro #digital #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