Enkel Arduino Digital Ohmmeter Circuit

Prøv Instrumentet Vårt For Å Eliminere Problemer





I dette innlegget skal vi konstruere en enkel digital ohmmeter-krets ved hjelp av Arduino og 16x2 LCD-skjerm. Vi vil også utforske de andre mulige kretsideene ved hjelp av samme konsept.

Kretsmål

Mottoet i denne artikkelen er ikke bare å lage en ohm-meter for å måle motstanden multimeteret ditt bedre kan gjøre det samme.



Hovedmålet med dette prosjektet er å bruke motstandsverdien som er lest av arduino til å gjøre noen nyttige prosjekter, for eksempel brannalarm, der endringen i motstandsverdien til termistoren lett kan oppdages eller automatisk vanningsanlegg der, hvis jordens motstand går høyt kan mikrokontrolleren utløse vannpumpen. Muligheten for prosjekter er opp til fantasien din.

La oss se hvordan vi lager en ohm-meter først, og deretter går vi til andre kretsideer.



Hvordan det fungerer

Arduino Ohmmeter Circuit

Kretsen består av Arduino. Du kan bruke ditt Arduino-kort, en 16x2 LCD-skjerm for å vise frem den ukjente motstandsverdien, et potensiometer for å justere LCD-skjermens kontrastnivå. Det brukes to motstander, hvorav den ene er kjent motstandsverdi og den andre er ukjent motstandsverdi.

Motstanden er en analog funksjon, men verdien som vises på LCD er digital funksjon. Så vi må gjøre analog til digital konvertering, heldigvis har Arduino innebygd 10-bit analog til digital omformer.

10-biters ADC kan skille 1024 diskrete spenningsnivåer, 5 volt påføres to motstander og spenningsprøven tas mellom motstandene.

Ved hjelp av noen matematiske beregninger kan spenningsfall ved noden og kjent motstandsverdi tolkes for å finne den ukjente motstandsverdien.

De matematiske ligningene er skrevet i programmet, så ingen manuell beregning trenger å gjøres, vi kan lese direkte verdi fra LCD-skjermen.

Forfatterens prototype:

Arduino Digital Ohmmeter Prototype

Program for Ohm meter:

//-------------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--------//

MERK: float R = 10000 // Kjent motstandsverdi i Ohm

Du kan endre den kjente motstandsverdien i kretsen, men hvis du gjør det, må du også endre verdien i programmet.

Som et konvensjonelt multimeter, har denne Arduino digitale ohmmeter-kretsen også noen områder for å måle motstanden. Hvis du prøver å måle en motstand med lav verdi i mega ohm-området i multimeteret ditt, får du absolutt feilverdier.

På samme måte er det sant for dette ohmmeteret også.

Hvis du ønsker å måle motstand fra 1K til 50K ohm, vil 10K ohm kjent motstand være nok, men hvis du måler Mega ohm rekkevidde eller få ohm rekkevidde, vil du få noen søppelavlesninger. Så det er nødvendig å endre verdien til den kjente motstanden til et passende område.

I neste del av denne artikkelen skal vi studere LCD-skjermkretsen for ohmmeteren, og vi vil se hvordan vi kan lese av sensorverdien (ukjent motstand) i seriell skjerm.

Vi vil også oppgi terskelverdien i programmet, når den krysser den forhåndsbestemte terskelen, vil Arduino utløse relé.

Kretsdiagram:

Programkode:

//-------------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--------//

MERK:

• float th = 7800 // Still motstandsterskel i Ohm
Bytt ut 7800 ohm med verdien.
• flottør R = 10000 // Kjent verdi Motstand i Ohm
Bytt ut 10000 ohm med den kjente motstandsverdien.
• hvis (th> motstand)

Denne linjen i programmet sier at hvis sensormotstanden går under terskelverdien, slås utgangen PÅ og omvendt.

Hvis du vil slå på reléet når sensoravlesningen går over terskelen og omvendt, er det bare å erstatte “if (Thresistor)”

Ved å måle motstanden til sensoren direkte (LDR eller termistor eller noe annet) og sette en terskel, kan vi få stor nøyaktighet med kontroll over relé, lysdioder, motor og annet periferiutstyr.

Det er bedre enn komparatorer, der vi setter en referansespenning og setter terskel ved å vri en variabel motstand blindt for å oppnå lignende prosjekter.




Forrige: Material Storage Level Controller Circuit Neste: 10 LED-turtellerkrets