0% found this document useful (0 votes)
6 views

Computer Organisation and Application

It's a PDF for the report of smart shopping cart.

Uploaded by

Arhaan Siddiquee
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views

Computer Organisation and Application

It's a PDF for the report of smart shopping cart.

Uploaded by

Arhaan Siddiquee
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 16

SMART SHOPPING CART

MINI PROJECT REPORT


for
21CSS201T - COMPUTER ORGANIZATION AND ARCHITECTURE

Submitted by

Jagannath Saha [RA2311003010048]


Aritra Basak [RA2311003010016]
Arhaan Siddiqquee [RA2311003010045]

Under the Guidance of


Dr.G.Bhargavi
(Assistant Professor, Department of Computing Technologies)

In partial fulfillment of the requirements for the degree of

BACHELOR OF TECHNOLOGY
in
COMPUTER SCIENCE ENGINEERING

DEPARTMENT OF COMPUTING TECHNOLOGIES


SRM INSTITUTE OF SCIENCE AND TECHNOLOGY
KATTANKULATHUR- 603 203
NOVEMBER 2024
SRM INSTITUTE OF SCIENCE AND TECHNOLOGY
KATTANKULATHUR – 603 203

BONAFIDE CERTIFICATE

Certified that Computer Architecture and organization Mini Project report titled
“SMART SHOPPING CART” is the Bonafide work of Jagannath Saha
[RA2311003010048], Aritra Basak [RA2311003010016], Arhaan
Siddiquee [RA2311003010045], who carried out the project work under my
supervision. Certified further, that to the best of my knowledge the work
reported herein does not form any other work

Dr.G.Bhargavi Dr.NIRANJANA G
Guide Professor & Head
Assistant Professor Dept. of Computing
Dept. of Computing Technologies Technologies
SMART SHOPPING CART

MINI PROJECT REPORT


for
21CSS201T - COMPUTER ORGANIZATION AND ARCHITECTURE

Submitted by

Jagannath Saha [RA2311003010048]


Aritra Basak [RA2311003010016]
Arhaan Siddiqquee [RA2311003010045]

Under the Guidance of


Dr.G.Bhargavi
(Assistant Professor, Department of Computing Technologies)

In partial fulfillment of the requirements for the degree of

BACHELOR OF TECHNOLOGY
in
COMPUTER SCIENCE ENGINEERING

DEPARTMENT OF COMPUTING TECHNOLOGIES


SRM INSTITUTE OF SCIENCE AND TECHNOLOGY
KATTANKULATHUR- 603 203
NOVEMBER 2024
SRM Institute of Science and Technology
College of Engineering and Technology

SCHOOL OF COMPUTING

MINI PROJECT REPORT

ODD Semester: 2024-2025

Sub code & Sub Name : 21CSS201T & Computer Organization and Architecture

Year & Semester : II & III

Project Title :

Team Members : 1. Jagannath Saha (RA2311003010048)


2. Aritra Basak (RA2311003010016)
3. Arhaan Siddiquee (RA2311003010045)

Max
Particulars Marks Obtained
Marks

Program & Execution 20

Demo verification & Viva 15

Project Report 05

Total 40

Date :

Staff Name :

Signature :
SMART SHOPPING CART

OBJECTIVE:

The objective of this project is to design a Smart Shopping Cart that uses RFID technology
to automatically add items to a virtual cart. It displays item information and calculates the
total cost, improving shopping efficiency and reducing checkout time.

ABSTRACT:

The Smart Shopping Cart leverages an Arduino Nano microcontroller, RFID sensor
module, RFID cards, LCD display, and LEDs to allow users to scan items as they shop.
Each item has an RFID tag, which, when scanned, updates the cart’s total on an LCD display.
The cart includes a buzzer for invalid scans and green/red LEDs to signal successful or
erroneous scans. This project automates item addition, making shopping quicker and more
user-friendly.

INTRODUCTION:

In busy retail environments, checkout processes can be time-consuming and lead to long
lines. The Smart Shopping Cart addresses this problem by integrating RFID-based item
detection with real-time price updates, displayed on an LCD. Customers can directly add
items to their cart by scanning each item’s RFID tag, reducing the need for manual scanning
and speeding up the checkout process. This smart system provides a modern solution to a
common retail challenge.

HARDWARE/SOFTWARE REQUIREMENTS:

Hardware Components
1. Arduino Nano
o Description: A compact microcontroller board based on the ATmega328p,
the Arduino Nano is widely used in embedded systems for its small size,
low power requirements, and ease of programming.

o Purpose: Acts as the central processing unit (CPU) of the system,


processing RFID data and coordinating the display and indicator signals.

o Specifications:

 14 digital input/output pins

 6 analog inputs

 Runs at 5V and can operate with an external 7-12V power source


or via USB

o Function in Project: Receives input from the RFID sensor, processes tag
IDs, and controls the LCD, buzzer, and LEDs based on programmed
logic.

2. RFID Sensor Module

o Description: An RFID (Radio Frequency Identification) sensor module


reads information from RFID tags within a short range.

o Purpose: Allows the system to detect and read unique IDs from RFID
cards or tags, which are attached to items.

o Common Model: RC522 module, which operates at 13.56 MHz.

o Function in Project: Detects and transmits the unique ID of each item to


the Arduino, which then identifies the item and retrieves associated data.

3. RFID Cards

o Description: RFID cards are small tags embedded with unique IDs that
can be read by the RFID sensor.

o Purpose: Each RFID card represents a specific item with a unique


identifier.

o Function in Project: These cards act as placeholders for real shopping


items. The system reads the card to retrieve the unique ID, which is
mapped to an item’s price and description.

4. LCD Display
o Description: A 16x2 LCD display is commonly used in Arduino projects to
visually output text information.

o Purpose: Displays essential information, such as item details (name, price)


and the total cost as items are scanned.

o Specifications: Operates at 5V, can display up to 32 characters across two


lines.

o Function in Project: Shows feedback to the user, helping them keep track
of the items they’re scanning and the cumulative total.

5. Buzzer

o Description: A simple piezoelectric buzzer that produces sound when an


electric current passes through it.

o Purpose: Provides audible feedback for the user.

o Function in Project: Sounds when an invalid or duplicate item is scanned,


alerting the user to potential errors.

6. Red and Green LEDs

o Description: LEDs are small lights that turn on when current flows
through them, providing clear visual indicators.

o Purpose: Offers visual feedback on the scan result:

 Green LED: Indicates a successful scan of a valid item.

 Red LED: Indicates an error, such as an invalid scan or duplicate


item.

o Function in Project: Light up based on scan status, enhancing user


experience by quickly indicating success or failure.

7. Power Supply

o Description: The system can be powered by a portable battery pack or via


USB.

o Purpose: Supplies the required power to the Arduino Nano and attached
components.

o Specifications: Commonly, a 5V power source is used. For portable use, a


battery pack with USB output is ideal.
o Function in Project: Ensures the system is operational either through
direct USB power or battery, offering flexibility for mobile or stationary
use.

8. Jumper Wires

o Description: Flexible, insulated wires used to connect components on a


breadboard or directly to the Arduino.

o Purpose: Connect various hardware components, such as the LCD, RFID


module, LEDs, and buzzer, to the Arduino Nano.

o Function in Project: Facilitate secure and organized connections between


components, allowing signals and power to flow between them.

Software

1. Arduino IDE

o Description: The Arduino Integrated Development Environment (IDE) is


software that allows you to write, compile, and upload code to an Arduino
board.

o Purpose: Used to write the program (sketch) for the Arduino Nano,
compile it into machine code, and upload it to the microcontroller.

o Key Features:

 Code editor with syntax highlighting and auto-completion

 Libraries for handling LCDs, RFID modules, and other


components

 Serial monitor to display real-time output or debug data

o Function in Project: All programming logic, such as reading the RFID


data, managing LEDs and buzzer output, and displaying information on
the LCD, is written and tested in the Arduino IDE before being uploaded
to the Arduino Nano.

CONCEPTS/WORKING PRINCIPLE

Block Diagram Description


1.Arduino Nano

Description: The Arduino Nano is the core controller of the system, managing all data
processing and control signals. As the main processor, it communicates with the RFID
module to read item tags, processes data to check if the scanned item is valid, and controls
outputs like the LCD, LEDs, and buzzer.

Function: When an RFID tag is scanned, the Arduino receives the tag’s unique ID from the
RFID module. It then verifies the ID, retrieves the corresponding item’s name and price, and
displays this information on the LCD. Based on the result, it activates either the green or red
LED and, if needed, the buzzer to alert the user.

2.RFID Module

Description: The RFID module reads RFID tags, which contain unique identifiers for each
item. In this system, the RFID module typically operates on the 13.56 MHz frequency (e.g.,
using an RC522 module).

Function: When a tag is brought within range, the RFID module captures the unique ID and
sends it to the Arduino. The Arduino then processes this ID to identify the item and
determine the action to be taken. The module enables seamless communication between the
tag and the system without needing direct contact.

3.LCD Display

Description: A 16x2 LCD display shows information about the scanned items, including the
item name, price, and a running total cost.

Function: The LCD provides real-time feedback to the user by displaying the item name and
price whenever a valid tag is scanned. It also shows the total cost, allowing the user to keep
track of the cumulative amount as more items are scanned. This helps create a
straightforward and interactive interface for the user.

4.LEDs and Buzzer

Description: Two LEDs (green and red) and a buzzer act as feedback indicators for the
scanning process. They provide both visual and auditory signals to the user.

Function:
Green LED: Lights up when a valid item is successfully scanned. This indicates that the
scanned item has been recognized and added to the total.
Red LED and Buzzer: Triggered if an invalid or duplicate item is scanned. The buzzer
sounds along with the red LED, alerting the user that the scan is unsuccessful. This feedback
helps reduce errors by notifying the user immediately if there’s an issue.

5.Power Supply:
Description: The power supply can be a portable battery pack or a USB connection that
supplies power to the Arduino Nano and other connected components.
Function: It provides the required voltage and current to power the entire system, ensuring
the Arduino and all connected peripherals (RFID module, LCD, LEDs, and buzzer) operate
continuously. Using a battery pack makes the system portable, allowing it to function in
different environments without needing a constant power outlet.

Working Principle

1. Item Detection: The RFID sensor detects each item's tag ID as it's scanned.
2. Validation and Feedback: The Arduino checks if the tag ID matches any known item. A
valid item triggers the green LED and updates the LCD, while an invalid tag triggers the red
LED and buzzer.
3. Cost Calculation: For valid items, the price is added to the total, which is shown on the
LCD.
4. Display Update: Each scan updates the LCD with the item name, price, and running total.

APPROACH/METHODOLOGY/PROGRAMS:

Circuit Diagram

Program

#include <Arduino.h>

#include <Wire.h>

#include <LiquidCrystal.h>

LiquidCrystal lcd(12, 11, 10, 9, 8, 7);

char input[12];
int count = 0;

int a;

int p1 = 0, p2 = 0, p3 = 0;

double total = 0;

int count_prod = 0;

void setup()

pinMode(A4, INPUT_PULLUP);

pinMode(4, OUTPUT);

pinMode(5, OUTPUT);

pinMode(6, OUTPUT);

lcd.clear();

Wire.begin();

Serial.begin(9600);

lcd.setCursor(0, 0);

lcd.print("AUTOMATIC BILL");

delay(2000);

lcd.setCursor(0, 1);

lcd.print("SHOPPING CART ");

delay(2000);

lcd.clear();

lcd.setCursor(0, 0);

lcd.print("WELCOME TO");
delay(2000);

lcd.setCursor(0, 1);

lcd.print("SRM SUPER MART");

delay(2000);

lcd.clear();

lcd.setCursor(0, 0);

lcd.print("PLEASE ADD ITEM:");

void loop()

count = 0;

memset(input, 0, sizeof(input));

while (Serial.available() && count < 12)

input[count] = Serial.read();

count++;

delay(5);

a = digitalRead(A4);

if ((strncmp(input, "5D00A3B8C187", 12) == 0) && (a == 1))

lcd.setCursor(0, 0);

lcd.print("Butter Added ");


delay(1000);

lcd.setCursor(0, 0);

lcd.print("Price : 10.00 ");

p1++;

digitalWrite(4, HIGH);

digitalWrite(5, HIGH);

digitalWrite(6, HIGH);

delay(2000);

total = total + 10.00000;

count_prod++;

digitalWrite(4, LOW);

digitalWrite(5, LOW);

digitalWrite(6, LOW);

lcd.clear();

lcd.print("Total Price :-");

delay(1000);

lcd.clear();

lcd.setCursor(0, 1);

if (total < 1)

lcd.print("0.000");

else

lcd.print(total);

}
}

else if ((strncmp(input, "5D00A3B8C187", 12) == 0) && (a == 0))

if (p1 > 0)

lcd.clear();

lcd.setCursor(0, 0);

lcd.print("Butter Removed! ");

digitalWrite(4, HIGH);

digitalWrite(5, HIGH);

digitalWrite(6, HIGH);

delay(2000);

p1--;

total = total - 10.0000;

count_prod--;

lcd.clear();

digitalWrite(4, LOW);

digitalWrite(5, LOW);

digitalWrite(6, LOW);

lcd.setCursor(0, 0);

lcd.print("Total Price :-");

delay(1000);

lcd.clear();

if (total < 1)

total = 0.0000;
}

lcd.print(total);

else

lcd.clear();

lcd.setCursor(0, 0);

lcd.print("Not in cart!!! ");

digitalWrite(4, HIGH);

digitalWrite(5, HIGH);

digitalWrite(6, HIGH);

delay(2000);

digitalWrite(4, LOW);

digitalWrite(5, LOW);

digitalWrite(6, LOW);

Key Functions:
1. Setup: Initializes the LCD, serial communication, and LEDs, displaying a welcome message.
2. Loop: Constantly checks for serial input and reads the state of a button (used to add or
remove items).
Operation:
 Adding an Item: If the input matches a predefined RFID tag and the button is pressed, the
code assumes a specific item (e.g., "Butter") is being added.
o It displays the item name and price on the LCD.
o Increments the item count and updates the total price.
o Activates LEDs briefly to confirm the addition.
 Removing an Item: If the same tag is scanned with the button unpressed, it assumes the item
is being removed.
o Checks if the item is already in the cart.
o Decrements the item count and updates the total, displaying feedback on the LCD and with
LEDs.

OUTPUT:

CONCLUSIONS:

Thus, the Smart Shopping Cart was successfully built and tested. The cart adds items upon
RFID scan, updates the total, and provides alerts for invalid scans, thereby streamlining the
shopping experience and reducing checkout time.

REFERENCES:

Arduino projects Archives - Engineers Garage

You might also like