In this project, we are going to make a voltmeter using Arduino Uno. We will explain two configurations of a digital voltmeter in this article. In the first configuration, the microcontroller will be able to measure voltage in the range of 0 – 5V. In the second configuration, the microcontroller will be able to measure the voltage in the range of 0 – 50V.
How To Make a Digital Voltmeter?
As we know that there are two types of voltmeters, analog voltmeter, and digital voltmeter. There are some further types of Analog voltmeters that are based on the construction of the device. Some of these types include Permanent Magnet Moving Coil Voltmeter, Rectifier Type Voltmeter, Moving Iron Type Voltmeter, etc. The main purpose of introducing the Digital Voltmeter in the market was due to the greater probability of errors in analog voltmeters. Unlike analog voltmeter, which uses a needle and a scale, the digital voltmeter shows the readings directly in digits on the screen. This removes the possibility of Zero Error. The percentage of error is reduced fro 5% to 1% when we have shifted from analog voltmeter to digital voltmeter. Now as we know the abstract of this project, let us gather some more information and start making a digital voltmeter using Arduino Uno.
Step 1: Collecting The Components
The best approach to start any project is to make a list of components and going through a brief study of these components because no one will want to stick in the middle of a project just because of a missing component. A list of components that we are going to use in this project is given below:
Step 2: Studying The Components
Arduino UNO is a microcontroller board which comprises of a microchip ATMega 328P and is developed by Arduino.cc. This board has a set of digital and analog data pins that can be interfaced with other expansion boards or circuits. This board has 14 Digital pins, 6 Analog pins, and programmable with the Arduino IDE (Integrated Development Environment) via a type B USB cable. It requires 5V to power ON and a C Code to operate. LCDs are seen in every electronic device which has to display some text or digit or any picture to the users. An LCD is a display module, in which liquid crystal is used to produce a visible image or text. A 16×2 LCD Display is a very simple electronic module that displays 16 characters per line and a total of two lines on its screen at a time. A 5×7 pixel matrix is used to display a character in these LCDs. A Breadboard is a solderless device. It is used to make and test temporary prototype electronic circuits and designs. Most of the electronic components are simply connected to a breadboard just by inserting their pins in the breadboard. A strip of metal is laid down the holes of the breadboard and the holes are connected in a specific way. The connections of the holes are shown in the diagram below:
Step 3: Circuit Diagram
The first circuit whose range of measurement is from 0 to 5V is shown below: The second circuit whose measurement range is from 0 to 50V is shown below:
Step 4: Working Principle
The working of this project of Arduino based digital DC voltmeter is explained here. In the digital voltmeter, the voltage that is measured in the analog form will be converted to its corresponding digital value using an Analog to Digital Converter. In the first circuit whose measurement range is from 0 to 5V, the input will be taken on Analog pin0. The analog pin will read any value from 0 to 1024. Then this analog value will be converted to digital by multiplying it by total voltage, which is 5V and dividing it by total resolution, which is 1024. In the second circuit, as the range is to be increased from 5V to 50V, a voltage divider configuration must be made. The voltage divider circuit is made by using a 10k-ohm and a 100k-ohm resistor. This voltage divider configuration helps us to bring the input voltage to the range of Arduino Uno’s analog input. All the mathematical calculations are done in the programming of Arduino Uno.
Step 5: Assembling the Components
The connection of the LCD module to the Arduino Uno board is the same in both of the circuits. The only difference is that in the first circuit, the input range is low, so it is directly sent to the analog pin of the Arduino. In the second circuit, a voltage divider configuration is used on the input side of the Microcontroller board.
Step 6: Getting Started With Arduino
If you are not familiar with Arduino IDE before, don’t worry because below, you can see clear steps of burning code on the microcontroller board using Arduino IDE. You can download the latest version of Arduino IDE from here and follow the steps mentioned below: You can download the code by clicking here.
Step 7: Code
The code is quite simple and well commented. But still, some it is explained below.
- At the start, the library is used so that we can interface the LCD module with the Arduino Uno board and program it accordingly. Than pins of Arduino board are initialized that will be used to connect with the LCD module. Then different variables are initialized to store values on the run time which will be used later in calculations.
- void setup() is a function that runs only once when the device starts or the enable button is pressed. Here we have initialized the LCD to start. When the LCD will start the text “Arduino Based Digital Voltmeter” will be displayed. Baud Rate is also set in this function. Baud Rate is the speed in bits per second by which the Arduino communicates with the external devices.
- void loop() is a function that runs continuously in a loop. Here the analog value is being read on the input side. Then this analog value is converted to digital form. A condition is applied and the final measurements are displayed on the LCD screen
Applications
Some of its applications of a digital voltmeter include:
How To Make A Digital Thermometer Using Arduino?How To Make A Digital Air Pollution Meter Using Arduino?How To Make A Smoke Alarm For Your Kitchen Using Arduino?How To Make Obstacle Avoiding Robot Using Arduino?