Theft Resistant Shopping Cart Project Proposal Team 25 Team Members Kevin Kong Zhi Yao (kkong7) Mei Ling Yeoh (myeoh2) XianZe Zhan (xzhan5) TA: Jacob Bryan ECE 445 Spring 2016 February 10th, 2016 1 Table of Contents 1.0 2.0 3.0 4.0 Introduction 1.1 Statement of purpose 3 1.2 Goals & Benefits 3 1.3 Technical functionality & Features 3 Design 2.1 Block Diagram 4 2.2 Block Description 5 Block Level Requirements and Verification 3.1 Requirements & Verification 7 3.2 Tolerance Analysis 10 Cost and Schedule 4.1 Cost analysis 11 4.2 Schedule 12 2 1.0 Introduction 1.1 Statement of Purpose According to National Association for Shoplifting Prevention, there are approximately 27 million shoplifters in our nation today. One of the most common techniques used in supermarket is to load up a shopping cart full of items and walk out of the store without paying. Another way of shoplifting is to load many items in the cart but only pay for certain items and then walk out the store with unpaid and paid items. Some products do not have security tags on them; therefore, it is difficult for the store to detect such act of thievery. Our project is designed to tackle the act of thievery using the shopping cart by using weight sensors, barcode scanner and RFID. The theft resistant shopping cart will help the store manager to solve the problem of shoplifting associated with the shopping cart, at the same time, improve customer shopping experience. 1.2 Goals & Benefits Prevent act of shoplifting using shopping cart in supermarket Reduce the loss of revenue in business Improve customer shopping experience Reduce checkout time 1.3 Functions & Features Sensor to gather the total weight of the items in the shopping cart Interpret sensor data and compare the weight detected by the sensor with the weight registered from barcode system Require user interaction to scan (add), de-scan (delete) items using barcode scanner Gather the information of the items in the cart from database through wifi connection Able to transfer the total price of all the items in the cart to the existing checkout system Activate the alarm and cart braking system if the act of thievery is detected Visually display the total price of items in cart through LCD display 3 2.0 Design 2.1 Block Diagram 4 2.2 Block Description Rechargeable battery The cart will have a rechargeable lithium-ion battery pack with an output rating of 5V and 1A to power all the modules of the shopping carts (sensors, control system, outputs and user interface). A battery capacity above 3000mAh would be ideal to allow the system to run for 4 to 5 hours, long enough for most shoppers to finish their shopping session. Weight Sensor There will be four weight sensors with the ability to measure up to 50kg of items on the bottom of the cart basket. Each inner corner of the shopping cart, topped by a plastic/metal sheet will have a sensor to collect the weight changes of the items in the basket. The data collected by the sensor will be passed through DSP processing to reduce noise in the measurement before transferring to the microcontroller. The sensors will be small, cheap and have low energy consumption. Barcode Scanner There will be a small barcode scanner attached to the rim of the shopping cart. The scanner is responsible for adding items into the cart or removing items from the cart. To add an item in the cart, the customer scans the item and the barcode is then fed digitally to the microcontroller through USB. If the customer no longer wants an item in the cart, to delete the item from the current shopping list, the customer needs to scan it again. The barcode scanner takes an input voltage of 5V in order to power the sensors, converter and decoder in the scanner. RFID This module consists of RFID tag, RFID reader, wifi module and microcontroller. The RFID tag will be mounted beneath the shopping cart, and it is used to track which shopping cart is allowed to leave the shopping mall. There will be a RFID reader at the exits of the shopping and when the RFID is detected (the cart is near the exits), the RFID reader will convert the radio waves from RFID tag into digital signal which is then being processed by microcontroller of the RFID system. The data will be transmitted to the microcontroller of the shopping cart through wifi and being processed by the microcontroller of the shopping cart to determine where the cart is allowed to leave the shopping mall. User Interface The customers will need a simple interface to ‘de-scan’ the barcode of items that they no longer want to buy. A simple push button is used for that user interface. When customers want to remove an item from the scanned items, they need push the button and then scan the item which they wish to remove. There will be a red LED indicating the “de-scan” process and will turn green when the process is complete. The price on the LCD display would update the new prices for making the changes. LCD Display There will be 16x2 black characters on green LCD display mounted near the handle of the shopping cart to show customers the accumulated price of the items in the shopping cart. This module takes digital inputs from the microcontroller and converts the inputs to strings of characters. 5 Buttons There will be a push buttons right beside the LCD display for user interaction. The push button is used to activate the “de-scan” process. The buttons are normally opened and act as switches. One end is tied to voltage of 5V and another end is connected to the input of the microcontroller. The input is tied to the ground with a pull up resistor of 5 kΩ so that the voltage at each input is grounded when the switch is open. The resistors will only draw power when the buttons are being pressed. When button is pressed, a HIGH signal will be sent to the microcontroller and the signal is processed to determine whether to delete the item from the shopping list. Alarm (buzzer) The piezo buzzer, acting as the alarm, is compatible with our 5V power supply and is loud enough to overcome the background noises in a mall and be heard at a moderate distance, around 10 meters. The alarm will sound when the cart detects that items are being moved out of the shopping mall without being checked out first. Cart Braking System When act of thievery is detected, the cart braking system will be activated to slow down/stop the shopping cart. To demonstrate the cart braking system, there will be an LED which will lights up to indicate that the braking system is activated. Database The cloud database will store the price and weight of each item in the store as well as their respective barcodes. There will be a simple database file built on our laptop to act as the cloud database. Wifi Module The Wifi module is an important communication media between the microcontroller and the database. It will also communicate with RFID reader’s microcontroller to ensure the shopping carts’ statuses are correct. The wifi module is also responsible in transferring the total price to be paid at the check out station. Electric Imp, which is a relatively cheap and easy to program Wifi module will be used in this project. Microcontroller The microcontroller is the brain of the whole shopping cart. It will be connected to the weight sensors, the barcode scanner, the LCD display, the LED, the alarm, the cart brake as well as the wifi module. The wifi shield and USB shield will be connected to the microcontroller and mounted on the same PCB. The microcontroller is responsible for computing price, storing data and making decision. When it detects the input from the push button and a reduction in weight from weight sensor at the same time, it will allow items to be deleted from the shopping list and update the current total price. Our microcontroller will be built based on the barbone of atmega328. Since atmega328 can share the same code with arduino, it is easier for us to program it. In addition, it has a small SRAM for us to store the temporary data so that we don’t need to build extra on chip storage component. 6 3.0 Block Level Requirements and Verification 3.1 Requirement & Verification Requirements Verifications Rechargeable battery 1. Output rating of 4.5V to 5.5V of voltage and 1A to 2A of current. 2. Have enough capacity to last for 5 to 6 hours without charging. Weight Sensors 1. Able to measure up to 50kg of weight. 2. Weight as small as 1g should be able to be detected by the sensors. 3. The weights of the shopping item have to be measured accurately no matter what location they are on the cart. 4. Able to be calibrated digitally. Barcode scanner 1. Easiness in scanning a barcode (usability). Usability of a score of 3/5 10%. (5 is the maximum score, indicating very easy to use) 2. Functions for Imax for =5V Points 10 1. Verification process for item 1: a. Measure the voltage and current output of the power supply using multimeter. 2. Verification process for item 2: a. Use a multimeter to measure the current consumption of the running circuit. The capacity needed in mAh is then calculated. 10 1. Verification process for item 1: a. Apply weights starting from 10kg up to 50kg in increments of 10kg while observing accuracy of the sensors. 2. Verification process for item 2: a. 1g of weight onto the sensors and observe the measurement of the sensors. Then apply weights from 2kg to 10kg in increments of 2kg with and without the 1g weight to see if the sensors are sensitive to the difference caused by the 1g weight. 3. Verification process for item 3: a. Use a plate (plastic/metal) that is wide enough to cover the entire area of the cart and measure the accuracy of the sensors when an item is placed on different part of the plate. 4. Verification process for item 4: a. Introduce an offset to the weight sensor by applying weights in increment of 1kg from 1kg to 10kg and then attempt to recalibrate the sensor to 0 digitally. 20 1. Verification process for item 1: a. Have 5 volunteers to use the barcode scanner and rate the usability with a score from 1 to 5. 2. Verification process for item 2: a. Connect the USB port of the barcode scanner to a USB host shield. Power the USB host shield with 5Vdc. Ensure barcode scanner can read 7 3. Able to read barcode with print contrast 30% 4. RFID Tag 1. Readable at most 2 inches from the RFID Reader User Interface 1. Able to receive input from users via push buttons 2. Able to send data to be displayed to LCD display LCD display 1. Functions Imax barcode. b. Attach 5V DC in series with ammeter to of USB host. Ensure Imax 3. Verification process for item 3: a. Print barcode with contrast of -10% to -40% (10% increment) on a sheet of paper. b. Scan the barcode printed in different contrasts and ensure the scanner is able to read the barcode 4. Verification process for item 4: a. Place the barcode and barcode scanner at 2mm apart using ruler/measuring tape. Increment the distance between the barcode and the scanner to 800mm with an interval of 100mm. b. Pass the test if the barcode reader is able to read the barcode at all measuring points. 10 1. Verification process for item 1: a. Place the RFID tag 1 inch from the RFID reader and ensure RFID tag is read by RFID reader. b. Repeat part (a) until the RFID tag is 2 inches away from the reader with an interval of 0.2 inches. 5 1. Verification process for item 1: a. Asks user to provide input to the interface via push buttons and verify that the input reaches the microcontroller. 2. Verification process for item 2: a. Sends data to the LCD interface ensure that the correct data is displayed properly. 5 for for 2. Able to display string characters and numbers of 1. Verification process for item 1: a. Connect a voltmeter to analog output pin and apply variable voltage supply to Vin b. Sweep variable voltage from 4.7V to 5.5V and ensure analog output remains within the range of Vin c. Supply 5V DC in series with ammeter to Vin and ensure Imax 10mA 2. Verification process for item 2: a. Use Arduino to program and transfer information to LCD display. Pass the test if the LCD able to display the string of characters and numbers 8 Alarm + Cart Braking System 1. Loudness of alarm needs to be at least 40dB above background noise level of the shopping mall at a distance of 10m. 2. Apply enough friction to slow down the cart to less than 3 mph (Average human walking speed) when pushed by an adult male. 3. Response time less than 0.15 seconds. Database 1. Be able to store the price, weight, barcode and name of the products. 2. Be able to store the information for 1000 different products. 3. Information look up time should be O(n), where n is the number of products in the database. Wifi Module 1. Turn on the device with source supply at 3.3 Vdc (+/- 10%) 2. The current drawn by the device will not exceed 50 mA. 3. Be able to transfer data at the 5 1. Verification process for item 1: a. Measure the background noise of the shopping mall and the sound of the alarm at 10m. b. Compare amplitude of both sound waves using Audacity. 2. Verification process for item 2: a. Turn on the braking system and make sure brake is applied onto the wheels. Asks an adult male to push the shopping cart. b. Measure time taken to travel a distance of 5m. Calculate velocity. 3. Verification process for item 3: a. Hook up a wire from the trigger signal from the microcontroller and a wire from the alarm and braking system to the oscilloscope. b. Observe and capture the waveform when the trigger signal is sent. c. Measure the time difference between the pulse of the trigger signal and the pulse of the alarm and braking signal. 5 1. Verification process for item 1: a. Use a simple C/Python program to print out a random product’s information from the database. b. Check whether it has all the required information. 2. Verification process for item 2: a. Use a simple C/Python program to count the number of the products in the basebase. b. Check whether it has more than 1000 products. 3. Verification process for item 3: a. Use a simple C/Python program to do a random product look up. Check whether the lookup time is linear. 10 1. Verification process for item 1: a. Turn on the device for 5s. Then use the multimeter to test the voltage of the device. Check whether the working is stable within the 3.3Vdc(+/- 10%) range. 2. Verification process for item 2: a. Continue reading the current from the multimeter. Check whether the current is less 9 rate of at least 100 KB/s Microcontroller 1. Turn on the device with source supply in the range of 3.3 to 5 Volts 2. When mounted to PCB, the microcontroller should program the Wifi module to transfer data. 3. The processing speed should be fast enough. From receiving a barcode information from the scanner to get ready for next scanning activity, it should take less than 50 ms. than 50 mA. 3. Verification process for item 3: a. Transfer a 5 MB file via the wifi module and use a stopwatch to count whether the transfer time is less than 50s. 20 1. Verification process for item 1: a. Turn on the device for 5s. Then use the multimeter to test the voltage of the device. Check whether the working is stable within the 3.3-5 Volts range. 2. Verification process for item 2: a. Run ArduinoISP via Arduino onto microcontroller and burn bootloader. Connect the microcontroller to the PCB. b. Check on the server side(database) whether there is data being transferred. 3. Verification process for item 3: a. Use a simple C program to measure the time difference between two scanning activities. Repeat this 5 times and take the worst run time. If the worst time difference is less than 50 ms, it passes the test. 3.2 Tolerance Analysis The critical part of the design is the barcode scanner. If the barcode scanner fails to read the barcode, the data of the items (price and weight) cannot be retrieved from the database and being used in the microcontroller. The weight of the items sensed by the weight sensor has no data to compare with as the weight registered by the barcode system failed to deliver to the microcontroller. Besides, the LCD display would not be able to show the accumulated price of the shopping list to the customer. The barcode scanner requires good motion tolerance, printing tolerance and working distance. A good motion tolerance means no pauses between scans. The processing speed of the whole scanning process (from scanning the first barcode to the next barcode) needs to be at most 50 ms in order to achieve high performance. The tolerance is set at most 50 ms which should be less than human reaction time. The user should not be waiting for the barcode to be able to make the next scan. The processing process is shown as below Barcode Microcontroller wifi module database This processing speed can be tested using Arduino and C programming language. The time difference between the first barcode registered to the next barcode registered can be calculated using time library in C code. The calculated time should be below 50 ms. 10 4.0 Cost and Schedule 4.1 Cost Analysis Labor Cost Employee Kevin Kong Mei Ling Yeoh XianZe Zhan Total Hourly Rate($) Total Hours Invested (Hr) 28.50 28.50 28.50 260 260 260 780 Total Labor Cost = Hourly Rate x Total hours invested ($) 7,410.00 7,410.00 7,410.00 22,230.00 Parts Cost Item Parts Number Manufacturer Microcontroller ATmega328 Atmel 1 5.50 5.50 Wifi module adapter WRL-11395 Electric Imp 2 29.95 59.90 Wifi module shield BOB-12886 Electric Imp 2 12.95 25.90 Weight sensor SEN-10245 Sparkfun 4 10.00 40.00 Buzzer (alarm) PS1240 TDK 1 8.50 8.50 LCD display GDM1602K XIAMEN OCULAR 1 7.07 7.07 Button COM-09190 Sparkfun 1 0.50 0.50 Battery 899666N Motorola 1 8.29 8.29 RFID reader 28440 parallax inc 1 39.99 39.99 RFID tag 32399 parallax inc 1 2.49 2.49 USB shield MAX3421E MAXIM 1 24.95 24.95 Barcode scanner ELEKTR-DE8143638 SC3B 1 20.00 20.00 Total Grand Total Section Labor Parts Grand Total Qty Price per item Total Price 243.59 Total ($) 22,230.00 243.59 22473.59 11 4.2 Schedule Week Feb-8th Feb-15th Feb-22nd Feb-29th Mac-7th Mac-14th Mac-21st Mac-28th Apr-4th Apr-11th Apr-18th Apr-25th May-2nd Tasks Finalize project proposal Flow Chart of design Select & order parts Design circuit for Control system Power, weight sensor, outputs User interface, barcode scanner, RFID Run test on Control system Power, weight sensor, outputs User interface, barcode scanner, RFID Program microcontroller Assemble weight sensors Assemble barcode scanner Assemble RFID Assemble alarm + brake Assemble wifi module + microcontroller Assemble switch + LCD Assemble power Run test on control system Run test on user interface, barcode scanner Run test on weight sensor, outputs Run test on RFID Run test on power Bring all modules together Run test on project Verify functionality & durability Debugging Continue debugging Fix any issue with design Prepare for presentation Prepare for demonstration Finalize presentation Finalize demonstration Finalize presentation Prepare final papers Lab checkout Finalize final papers Responsibility Mei Ling XianZe Kevin XianZe Kevin Mei Ling XianZe Kevin Mei Ling XianZe Kevin Mei Ling Mei Ling Kevin XianZe Mei Ling Kevin XianZe Mei ling Kevin XianZe Kevin Mei Ling XianZe Mei Ling XianZe, Kevin Mei Ling XianZe, Kevin XianZe Kevin Mei Ling XianZe Mei Ling Kevin XianZe Mei Ling, Kevin 12
© Copyright 2026 Paperzz