Header Ads

Frequency Counter Using Arduino - Arduino Frequency Counter with 16×2 LCD Display

Frequency Counter,  as the name indicates,  is an electronic device or component,  which is used to measure the frequency of a signal. In case of a repetitive electronic signal,  a frequency counter measures the number of pulses in that signal.arduino frequency counter circuit,arduino frequency counter mhz,arduino frequency counter sketch,arduino frequency measurement,arduino rf frequency counter,arduino frequency counter interrupt,arduino frequency counter kit freqmeasure library arduino,arduino audio frequency detection,arduino frequency counter library,arduino audio frequency measurement,arduino frequency counter sketch,arduino frequency counter circuit,arduino pulsein example,arduino frequency counter mhz,
We generally use an oscilloscope to depict the signal,  calculate the time period of the signal and finally convert it to calculate the frequency of the signal. But,  oscilloscopes are very expensive and everyone cannot afford it.
Hence,  a simple Digital Frequency Counter can be built which might come in handy to measure the frequency of a clock signal,  for example.
In this project,  an Arduino based Digital Frequency Counter is designed to measure the frequency of an incoming signal.

Circuit Diagram

Arduino Frequency Counter Circuit Diagram
Arduino Frequency Counter Circuit Diagram
Figure Arduino Frequency Counter Circuit Diagram

Components

Arduino Part
·Arduino UNO
·16 X 2 LCD Display
·Prototyping Board
·Connecting wire
·Power Supply (adapter or battery)
Signal Generator Part
·NE555 Timer IC
·10 KΩ Potentiometer X 2
·100 nF Capacitor (Code: 104)
·1 µF / 16V Electrolytic Capacitor
·5V Power Supply (12V is not suitable as it might damage Arduino board).
·Connecting wires
·Prototyping Board

Component Description

Arduino UNO: The ATmega 328P microcontroller based Arduino UNO is the main part of the project. It captures the time period of the incoming signal and calculates the frequency of the signal.
555 Timer IC: In this project,  the 555 Timer IC is used as a pulse generator i.e. it works in astable mode.
16 X 2 LCD: The 16×2 LCD module is used to display the key information like welcome (or any custom) messages and the calculated frequency of the signal.

Circuit Design

The design of the Frequency Counter using Arduino UNO can be divided in to two parts: The Arduino part,  where the processing of the signal’s information takes place and the Signal Generator part,  where the signal whose frequency to be measured is generated.

Arduino Circuit

Arduino part of the project consists of Arduino UNO board and a 16 X 2 LCD Display. Pins 1 and 2 of the LCD (Vss and Vdd) are connected to ground and 5V supply respectively. Pin 3 (Vee),  which is used to adjust the contrast of the display,  is connected a Potentiometer.
Pins 4 and 6 (RS and E) of the LCD are connected to digital I/O Pins 2 and 3 of the Arduino. Pin 5 (RW) of the LCD is connected to ground.
Pins 11 to 14 (D4 to D7) i.e. the data pins of the LCD are connected to the digital I/O pins 4 to 7 of Arduino. Pins 15 and 16 of the LCD are supply pins of the backlight LEDs and are connected to ground and 5V (Pin 16 to 5V through a 1KΩ resistor) respectively.
http://www.electronicshub.org/wp-content/uploads/2016/10/Arduino-Circuit.jpg

Signal Generator Part

A 555 Timer is used to generate a pulse in this project. Hence,  it is operated in Astable mode of operation. The connections for this mode are as follows.
Pins 4 and 8 (Reset and Vcc) are connected to 5V Supply. Pin 1 (GND) is connected to ground. Pins 2 and 6 (Trigger and Threshold) are shorted.
A 10KΩ Potentiometer is connected between the power supply and Pin 7 (Discharge). The wiper terminal of the potentiometer is connected to Pin 7.
Similarly,  another 10KΩ Potentiometer is connected between pins 7 and 6. This time,  the wiper of the potentiometer is connected to Pin 6.
A 100nF capacitor is connected between pin 6 and ground. By selecting this resistor,  the frequency of the output signal,  which can be taken from Pin 3 (Output),  will be in the range of 480 Hz to 48 KHz.
Optionally,  a 1 µF capacitor can be connected,  using which the frequency of the generated signal will be in the range of 50 Hz to 4.8 KHz.
http://www.electronicshub.org/wp-content/uploads/2016/10/Signal-Generator-Circuit.jpg
Note: The power supply to the signal generator circuit should be only 5V. This is because,  the voltage of the generated pulse will be same as that of the input voltage and the Arduino UNO board (or ATmega 328p microcontroller to be precise) can tolerate a maximum of 5.5V at its input pins.

Working Principle of the Project

The aim of the project is to design a simple digital frequency counter circuit using Arduino UNO and 555 Timer IC. The working of the project is very simple and is explained here.
As mentioned earlier,  the 555 Timer IC is configured to operate in Astable mode. Hence,  the output of the 555 Timer IC (or rather the signal generator circuit) is a pulse with variable frequency (varied using potentiometer). This pulse is given as input signal to the Arduino UNO at one of its digital I/O pins.
In the Arduino,  we make use of a function called “pulseIn ();” The function pulseIn can be used to read either LOW or HIGH pulse on a digital I/O pin and returns the length of the pulse in microseconds.
For example,  if the pulseIn function is used to read a HIGH pulse on a pin,  it waits for the pin to go HIGH. Once the pin goes HIGH,  it starts the timer and runs until the pin goes LOW. The duration (in microseconds) of this HIGH pulse is then returned.
In our project,  we are calculating the duration of the HIGH pulse and LOW pulse and by adding them together,  we get the period of the input signal. Inverse of this value gives the frequency of the signal which is displayed on the LCD.
Note:
·As mentioned earlier,  the range of frequency of the signal generated by the 555 Tier can be changed by changing the value of the capacitor.
·Arduino can only detect incoming pulses i.e. the incoming signal can be either square or rectangular. Not all test signals can be in the form of pulses. Hence,  we can use a Schmitt Trigger to convert the any incoming to a pulse.
·Also note that the output of the Schmitt Trigger IC (74LS14) is an inverted signal of the input signal.

Applications          

·A simple frequency counter,  using simple components is designed that can be used to measure the frequency of a pulse without the need of an oscilloscope.
·Multiple ranges of frequencies can be measured by selecting suitable components.
Frequencies of all types of test signals can be calculated by adding a Schmitt Trigger between the generated signal and Arduino.


Project Code

#include <LiquidCrystal.h>
LiquidCrystal lcd(2,  3,  4,  5,  6,  7);
const int pulsePin = 8; // Input signal connected to Pin 8 of Arduino
int pulseHigh; // Integer variable to capture High time of the incoming pulse
int pulseLow; // Integer variable to capture Low time of the incoming pulse
float pulseTotal; // Float variable to capture Total time of the incoming pulse
float frequency; // Calculated Frequency
void setup()
{
    pinMode(pulsePin, INPUT);
    lcd.begin(16,  2);
    lcd.setCursor(0, 0);
    lcd.print("Electronics Hub");
    lcd.setCursor(0, 1);
    lcd.print(" Freq Counter  ");
    delay(5000);
}
void loop()
{
    lcd.setCursor(0, 0);
    lcd.print("Frequency is    ");
    lcd.setCursor(0, 1);
    lcd.print("                ");
   
    pulseHigh = pulseIn(pulsePin, HIGH);
    pulseLow = pulseIn(pulsePin, LOW);
   
    pulseTotal = pulseHigh + pulseLow; // Time period of the pulse in microseconds
    frequency=1000000/pulseTotal; // Frequency in Hertz (Hz)
   
    lcd.setCursor(0, 1);
    lcd.print(frequency);
    lcd.print(" Hz");
    delay(500);
}





Tags:
arduino frequency counter circuit,arduino frequency counter mhz,arduino frequency counter sketch,arduino frequency measurement,arduino rf frequency counter,arduino frequency counter interrupt,arduino frequency counter kit freqmeasure library arduino,arduino audio frequency detection,arduino frequency counter library,arduino audio frequency measurement,arduino frequency counter sketch,arduino frequency counter circuit,arduino pulsein example,arduino frequency counter mhz,
Arduino Frequency Counter Tutorial with Circuit Diagrams & Code
https://circuitdigest.com/microcontroller-projects/arduino-frequency-counter-circuit
With that in mind we are going to design a simple yet efficient Frequency Counter using Arduino Uno and Schmitt trigger gate. ... With everything in place we will have a Frequency meter and a square wave generator. ... The circuit diagram of the Frequency Meter using Arduino is shown in ...
Arduino Frequency Counter Library - Lab3 - Laboratory for ...ace.khm.de › Lab › Interfaces Advanced
From our › Theremin Project I derived this Frequency Counter Library. The library makes it possible to measure frequencies with a high resolution and accuracy.
Arduino Frequency Counter with 16×2 LCD Display - Arduino Project -c99779
Aug 1, 2016 - The solution was a device to determine the pulse frequency emitted by the ECU against the rev counter. So, the device had to have the ability to ...
Arduino Frequency Counter - Instructableswww.instructables.com/id/Arduino-Frequency-Counter/
To find out the frequency of any signal we need to use CRO. We can also use frequency meter.But both of them are costly.Using Arduino Frequency Counter we ...
Frequency Counter Using Arduino - Electronics Hub
Oct 8, 2016 - Frequency Counter, as the name indicates, is an electronic device or component, which is used to measure the frequency of a signal. In case of ...
Frequency counter using arduino 40KHz - Circuits Today
Feb 19, 2015 - Simple frequency counter using arduino. Count up to 40KHz. Minimum number external components. Frequency is displayed on 16X2 LCD ...
FreqMeasure Library, for Measuring Frequencies in the 0.1 to 1000 Hz
FreqMeasure requires the input frequency as a digital level signal on a specific ... Serial.begin(57600); FreqMeasure.begin(); } double sum=0; int count=0; void ... Arduino Mega's pin 49 may be used by the SPI library, or SPI-based libraries like ...
Frequency counter library for Arduino | Make:
Jul 28, 2009 - Here's a great example of what makes the Arduino platform so great. In need of a basicfrequency counter on the quick, I dug up some code ...
GitHub - abdallah-ali-abdallah/Arduino-Frequency-Counter-with-LCD LCD
Arduino-Frequency-Counter-with-LCD - Arduino Frequency Counter with LCD with maximum frequency input 64 Mhz.
SparkFun Frequency Counter Kit - KIT-10140 - SparkFun Electronics
It includes everything you need to build a frequency counter capable of measuring ... If you want to program it via Arduino, you'll need a FTDI Basic Breakout.

No comments