Check-In and Check-Out System Using Arduino Nano and LCD
by DESHBOT in Circuits > Arduino
30 Views, 0 Favorites, 0 Comments
Check-In and Check-Out System Using Arduino Nano and LCD
The objective of this project is to create a simple attendance and check-in/check-out system using an Arduino Nano, a 16×2 LCD, two push buttons, and the Serial Monitor.
The system allows a user to enter their name through the Serial Monitor and then record their check-in and check-out time using two buttons.
Supplies
Arduino Nano
16×2 LCD Display
2 × Push Buttons (inbuild in shield )
DESHBOT Shield
Jumper Wires
USB Cable
Pin Connection
LCD
LCD PinArduino Nano
RS - A4
EN - A3
D4 - A2
D5 - A1
D6 - A0
D7 - D13
Buttons
ButtonArduino Nano
Check-In - D12
Check-Out - D10
Both buttons use the Arduino's internal pull-up resistors.
Working Principle
When the Arduino starts, the LCD displays:
The user enters their name through the Serial Monitor.
For example:
The Arduino saves the name and displays it on the LCD.
Check-In
When the D12 button is pressed:
- The user's status becomes checked in.
- The LCD displays CHECK IN.
- The current time is displayed.
- The name, date, and time are sent to the Serial Monitor.
Example:
Check-Out
When the D10 button is pressed:
- The user's status becomes checked out.
- The LCD displays CHECK OUT.
- The current time is displayed.
- The name, date, and time are sent to the Serial Monitor.
Example:
Clock System
The project uses the Arduino's millis() function to create a software clock.
The clock keeps track of:
- Seconds
- Minutes
- Hours
- Days
- Months
- Years
The starting date and time can be changed in the code.
For example:
Date System
The program automatically handles the number of days in each month.
It supports:
- 28 days in February
- 29 days in February during leap years
- 30-day months
- 31-day months
- Changing from December to January
- Increasing the year automatically
Day Calculation
The program calculates the day of the week using Zeller's Congruence.
The LCD displays the date together with the short day name.
Example:
Serial Monitor
The Serial Monitor is used to:
- Enter the user's name.
- Display the saved name.
- Display check-in records.
- Display check-out records.
The Serial Monitor should be set to:
. Program Flow
Downloads
Conclusion
The Arduino Check-In and Check-Out System demonstrates how an Arduino Nano can combine an LCD, push buttons, Serial Monitor, and software-based date/time calculations to create a simple attendance system.
The project also demonstrates practical use of functions, variables, if/else, switch, millis(), strings, button inputs, and date calculations in an embedded-system application.