• Skip to main content
  • Skip to primary sidebar

Homemade Circuit Projects

Need circuit help? Post them in the comments! I've answered over 50,000!

Blog | Categories | About | Contact | Calculators-online
You are here: Home / Meters and Testers / Simple Arduino Digital Ohmmeter Circuit

Simple Arduino Digital Ohmmeter Circuit

Last Updated on February 23, 2020 by Swagatam 10 Comments

In this post I will show how to construct a simple digital ohmmeter circuit using Arduino and 16x2 LCD display. We will also be exploring the other possible circuit ideas using the same concept.

Circuit Objective

The motto of this article is not just making an ohm meter to measure the resistance; your multimeter can better do the same.

The main objective of this project is to use the resistance value read by arduino to do some useful projects, for instance, fire alarm, where the change in resistance value of thermistor can be easily detected or automatic irrigation system where, if the resistance of soil goes high the microcontroller can trigger the water pump. The possibility of projects is up to your imagination.

Let’s see how to make an ohm meter first and then we move to other circuit ideas.

How it Works

 

Arduino Ohmmeter Circuit

The circuit consists of Arduino; you may use your favorite Arduino board, a 16x2 LCD display to showcase the unknown resistor value, a potentiometer to adjust contrast level of LCD display. Two resistors are used, one of which is known resistor value and other is unknown resistor value.

The resistance is an analogue function, but the value displayed on LCD is digital function. So, we need to do analogue to digital conversion, fortunately Arduino has built-in 10-bit analogue to digital converter.

The 10-bit ADC can differentiate 1024 discrete voltage levels, 5 volt is applied to 2 resistors and the voltage sample is taken in between the resistors.

Using some mathematical calculations, voltage drop at the node and known resistance value can be interpreted to find the unknown resistance value.

The mathematical equations are written in the program, so no manual calculation need to be done, we can read direct value from LCD display.

Author’s prototype:

Arduino Digital Ohmmeter Prototype
P 20161107 132852 2

Program for Ohm meter:

//-------------Program developed by R.Girish--------//
#include <LiquidCrystal.h>
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--------//

NOTE: float R=10000;  //Known Resistor value in Ohm

You can change the known resistor value in the circuit, but if you do so please change value in the program also.

Like a conventional multimeter, this Arduino digital ohmmeter circuit too has some ranges to measure the resistance. If you try to measure a low value resistor in mega ohm range in your multimeter, certainly you get error values.

Likewise, it is true for this ohmmeter too.

If you wish to measure resistance from 1K to 50K ohm, 10K ohm known resistor will be enough, but if you measure Mega ohm range or few ohm range you will get some garbage readings. So it is necessary to change the value of the known resistor to an appropriate range.

In the next section of this article, we are going to study the LCD display circuit for the ohmmeter; and we will see how to read the sensor value (unknown resistance) in serial monitor.

We will also state the threshold value in the program, once it crosses the pre-determined threshold, Arduino will trigger relay.

Circuit Diagram: 

 

ohm2Bmeter

Program Code:

 

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

NOTE:

•    float th=7800;    // Set resistance threshold in Ohms
Replace 7800 ohm with your value.
•    float R=10000;    //Known value Resistor in Ohm
Replace 10000 ohm with your known resistor value.
•    if(th>resistor)

This line in the program states that, if the sensor resistance goes below threshold value output turns ON and vice versa.

If you want to turn on the relay when sensor reading goes above threshold and vice versa, just replace “if(th<resistor)” with “if(th>resistor)”

By measuring the resistance of the sensor directly (LDR or thermistor or anything else) and setting a threshold, we can acquire great accuracy of control over relay, LEDs, motor and other peripherals.

It is better than comparators, where we set a reference voltage and set threshold by turning a variable resistor blindly to accomplish similar kind of projects.

You'll also like:

  • 1.  Simple LED Forward Voltage Drop Tester Circuit
  • 2.  7 Simple Continuity Tester Circuits Explained
  • 3.  6 Simple Capacitance Meter Circuits Explained – Using IC 555 and IC 74121
  • 4.  0 to 99 Digital Pulse Counter Circuit Diagrams
  • 5.  How to Check a MOSFET Using a Digital Multimeter
  • 6.  How to Make a Digital Voltmeter, Ammeter Module Circuits

About Swagatam

I am an electronics engineer with over 15 years of hands-on experience. I am passionate about inventing, designing electronic circuits and PCBs, and helping hobbyists bring their projects to life. That is why I founded homemade-circuits.com, a website where I share innovative circuit ideas and tutorials. Have a circuit related question? Leave a comment.... I guarantee a reply!

Previous Post: « Material Storage Level Controller Circuit
Next Post: 10 LED Tachometer Circuit Diagram »

Reader Interactions

Comments

  1. Sharoj Al Hasan says

    November 23, 2016 at 6:01 am

    Yes . I also tought that by myself . This LED is only indicates that remote is working. ok I will try my self .

    Reply
    • Swagatam says

      November 23, 2016 at 8:07 am

      OK great thanks!

      Reply
  2. Sharoj Al Hasan says

    November 20, 2016 at 8:34 am

    Back Side of Remote Circuit

    https://drive.google.com/file/d/0B8k3jWgWe95XRDQ5V2ZtRVJLQ1k/view?usp=sharing

    Reply
    • Swagatam says

      November 20, 2016 at 11:31 am

      this side shows only the keppads, the antenna is not visible…the components side is also not showing an antenna connection distinctly.

      by the way what's that LED for, is it only for indication?

      You will have to trace the antenna by yourself,,,,it will be most probably terminating from a transistor lead….

      manually connect a wire randomly to different tracks and see which one alters the range, ….the track which helps to produce the maximum range could be attached with a external wire antenna.

      Reply
  3. Sharoj Al Hasan says

    November 19, 2016 at 2:22 pm

    Sir please click the links … I have uploaded 3 photo
    One photo is Remote Circuit and Other is Remote Out view And Another is Receiver .. please help me

    Transmitter

    https://drive.google.com/file/d/0B8k3jWgWe95XbFIycGY3OC04eEU/view?usp=sharing     

    receiver 

    https://drive.google.com/file/d/0B8k3jWgWe95XMWdRSEhMLXVlak0/view?usp=sharing

    remote  

    https://drive.google.com/file/d/0B8k3jWgWe95XVi1ramFaV25KX1U/view?usp=sharing

    Reply
    • Swagatam says

      November 19, 2016 at 4:31 pm

      Please show the other side of the transmitter PCB…..

      Reply
  4. Sharoj Al Hasan says

    November 15, 2016 at 3:16 pm

    I dont know where is the antina and where need to Connect the Wire

    Reply
    • Swagatam says

      November 16, 2016 at 4:43 am

      what kind of transmitters are you using? please show example image (link)

      Reply
  5. Sharoj Al Hasan says

    November 15, 2016 at 9:32 am

    Sir i have bought a 12 volt RF LED driver remote and receiver circuit from ebay. I have modified the Receiver Circuit and Removed the LED and Connect a Relay. its working Fine. but range is very poor. But i have noticed that whenever i touched the Remote with an iron stick or any long cable then its works from long distance. I dont know how can i Make it long distance

    Reply
    • Swagatam says

      November 15, 2016 at 1:43 pm

      Sharoj, just increase the length of the transmitter antenna using a 1 feet long wire, that will solve the issue…

      Reply

Need Help? Please Leave a Comment! We value your input—Kindly keep it relevant to the above topic! Cancel reply

Your email address will not be published. Required fields are marked *

Primary Sidebar

Subscribe to New Circuit Ideas

Categories

  • Arduino Projects (87)
  • Audio and Amplifier Projects (132)
  • Automation Projects (17)
  • Automobile Electronics (101)
  • Battery Charger Circuits (82)
  • Datasheets and Components (102)
  • Electronics Theory (143)
  • Free Energy (37)
  • Games and Sports Projects (11)
  • Grid and 3-Phase (19)
  • Health related Projects (25)
  • Home Electrical Circuits (12)
  • Indicator Circuits (14)
  • Inverter Circuits (87)
  • Lamps and Lights (142)
  • Meters and Testers (69)
  • Mini Projects (46)
  • Motor Controller (64)
  • Oscillator Circuits (27)
  • Pets and Pests (15)
  • Power Supply Circuits (108)
  • Remote Control Circuits (50)
  • Security and Alarm (64)
  • Sensors and Detectors (100)
  • Solar Controller Circuits (59)
  • Temperature Controllers (42)
  • Timer and Delay Relay (49)
  • Transmitter Circuits (29)
  • Voltage Control and Protection (37)
  • Water Controller (36)

Calculators

  • Battery Back up Time Calculator
  • Capacitance Reactance Calculator
  • IC 555 Astable Calculator
  • IC 555 Monostable Calculator
  • Inductance Calculator
  • LC Resonance Calculator
  • LM317, LM338, LM396 Calculator
  • Ohm’s Law Calculator
  • Phase Angle Phase Shift Calculator
  • Power Factor (PF) Calculator
  • Reactance Calculator
  • Transistor Astable Calculator
  • Transistor base Resistor Calculator
  • Voltage Divider Calculator
  • Wire Current Calculator
  • Zener Diode Calculator
  • Filter Capacitor Calculator
  • Buck Converter Calculator
  • Boost Converter Calculator
  • Solar Panel, Inverter, Battery Calculator
  • Wire Current Calculator
  • SMPS Transformer Calculator
  • IC SG3525, SG3524 Calculator
  • Inverter LC Filter Calculator

People Also Search

555 Circuits | 741 Circuits | LM324 Circuits | LM338 Circuits | 4017 Circuits | Ultrasonic Projects | SMPS Projects | Christmas Projects | MOSFETs | Radio Circuits | Laser Circuits | PIR Projects |

Recent Comments

  • Swagatam on Simple Delay Timer Circuits Explained
  • Swagatam on The Role of Inductor Coil in SMPS
  • Swagatam on 7 Modified Sine Wave Inverter Circuits Explored – 100W to 3kVA
  • Swagatam on 7 Modified Sine Wave Inverter Circuits Explored – 100W to 3kVA
  • Victor on 7 Modified Sine Wave Inverter Circuits Explored – 100W to 3kVA

Company

  • Privacy Policy
  • Cookie Policy
  • About Me
  • Contact
  • Disclaimer
  • Copyright
  • Videos
  • Sitemap

Social Profiles

  • Twitter
  • YouTube
  • Instagram
  • Pinterest
  • My Facebook-Page
  • Quora
  • Stack Exchange
  • Linkedin
  • © 2025 · Swagatam Innovations