Visitor counter project using Arduino

visitor-counter-project-using-arduino

People  or Visitor counters are pretty famous embedded application that was widely used in places like theaters, malls, Transport stations and so. High end counters uses sophisticated hardware to do the process of counting. Today we are about to see building of simple Visitor counter project using Arduino which uses IR as a tool for sensing people. This project can also be used to count objects as well provided that the surface of the object capable of reflecting IR signal.

PARTS REQUIRED:

  1. Arduino Uno
  2. IR sensor Module
  3. LCD display
  4. Connecting Wires

IR SENSOR MODULE:

IR-infra-red-sensor-module

IR sensor module uses IR signal to detect the people entering through a pathway or entrance. This was done by sending a Pulse of IR signal from IR LED and detecting the reflected signal by using a photodiode. The IR signal will get only reflected back when there is a people or object going through that path. The module you are seeing above is bought from a local merchant and gives out high logic 1 when reflected signal is detected. You can buy from any online store or make one on your own, this tutorial “Making your own IR sensor” might help you.

DESIGN:

people-counter-schematic-design

Take a look at the given design of Visitor counter project using Arduino. Here the IR sensor output was connected to the external interrupt pin 2 of the Arduino. So whenever the sensor gives output high Arduino increases the count by 1. A 16×2 LCD was used as a display here for the number of visitor counts. A pull down resistor was used to keep the output low when there is no people encountered by the sensor.

ALGORITHM TO CODE:

  1. Initialize LCD display to print your data.
  2. Set up external interrupt on either pin 2 or 3 of the arduino with suited mode for your sensor.
  3. Write the ISR routine to increase the count by 1 whenever an interrupt is encountered.
  4. Display the count value in the LCD for the user.

CODE:

#include <LiquidCrystal.h>

LiquidCrystal lcd(8, 7, 6, 5, 4, 3);
unsigned int count=0; 
char converted_value[6];

void setup() {
  lcd.begin(16, 2);
  lcd.print("Number of People:");
  attachInterrupt(digitalPinToInterrupt(2), counter,HIGH);  //Initializing external interrupt
}

void loop() 
{
  lcd.setCursor(0,1);
  lcd.print(converted_value);             //Printing count values
}

void counter()
{
  count++;                              //Incrementing visitor count
  sprintf(converted_value,"%d",count);  //int to char conversion
}

 NOTE:

  • Make sure to understand all the specs of sensor if you are going to buy, since they might vary in their output ( active low or active high).
  • Make sure to allow people or objects to pass through within the range of the sensor.
  • Also only certain objects reflect IR signals back, make sure your object does if you are about to use this project to count objects.

 

The following two tabs change content below.
Frank Donald

Frank Donald

Junior Network Engineer at Tata Communications
Frank Donald is an Electronics and Communication Engineer who loves building stuff in his free time. Video games, blogging and programming are the things he loves most

26
Ask your query

avatar
12 Comment threads
14 Thread replies
3 Followers
 
Most reacted comment
Hottest comment thread
16 Comment authors
AnonymousStudentmicaAnonymousFrank Donald Recent comment authors
  Subscribe  
newest oldest most voted
Notify of
Anonymous
Guest
Anonymous

digitalPinToInterrupt(2), counter,HIGH …. dosen’t work why???

Student
Guest
Student

Can this counter count mutiple people entering at the same time accurately? Because the sensor can detect a group of people as one only…

mica
Guest
mica

Hello! My LCD didn’t display any of the increment. Can you help me with this?

maxwell
Guest
maxwell

Hi i’m maxwell im doing a project on bidirectional visitor countre using arduino and pir seensor, my problm is that the code is not working perfectly.. so please can some one help me wich the code using pir sensor? please i need help.

ivan
Guest
ivan

how to add GSM ? any idea pls.

Eman
Guest
Eman

hello sir!
can you plz give me algo code in assembly language??

Vijay
Guest
Vijay

Can I use Arduino Mega2560 instead of Arduino UNO?

ebrahim
Guest
ebrahim

hey bro i completed it but the increment is of 2 instead of 1

ebrahim
Guest
ebrahim

What is that silver thing connected beside the lcd

ADRIAN
Guest
ADRIAN

I cant find the sensor in my library,any help please.