Smart Trolley using Smart Phone and Arduino

Benefit to the customers: This system provides on spot scanning of the product and shows its price details on LCD. This allows customers to compare the total price with the budget in the pocket before billing. Whenever a customer is done with his/her shopping and near to the billing counter, the data from the LCD is going to transfer to the billing counter computer through NRF24l01. By this way, it will save the time of the customers as well.


Introduction Motivation
Benefit to the customers: This system provides on spot scanning of the product and shows its price details on LCD. This allows customers to compare the total price with the budget in the pocket before billing. Whenever a customer is done with his/her shopping and near to the billing counter, the data from the LCD is going to transfer to the billing counter computer through NRF24l01. By this way, it will save the time of the customers as well.
Benefit to the mall: This system works only for those customers which are having the membership card of the mall. This is implemented by using RFID Tag and RFID Reader. Customers require inserting the membership card which is also a RFID Tag and inserts to a place where RFID Reader is present. Once RFID Reader detects the presence of RFID Tag only then it will allow the shopping trolley or basket to become smart. Otherwise, it will act as a simple trolley.
Reason behind using Arduino: We designed the system using the Arduino Development Board. It provides complete access to functions of microcontroller or microprocessor like to program the controller, to use the input/output pins, to communicate. The system using Arduino is less bulky and it can easily transfer from one place to another. It requires less power supply and we can easily improve the system, if required, because of its easy programming.
Cost efficient and user friendly: Since we designed this system using Arduino and user Smart Mobile Phone act as Barcode Scanner, this system requires less cost to design. This system requires less power supply and it displays the total amount to the user so this system is user-friendly.

Generic approaches
Arduino Development Board provides complete access to functions of microcontroller or microprocessor like to program the controller, to use the input/output pins, to communicate. Nowadays, it requires trolley or basket for purchasing a variety of items in the super market or hypermarket. Every time customer has to put item one by one in the trolley and estimate the total price. If the budget allows then go to billing counter where mall staff member does the scanning of each product then further move to the billing process. So each customer has to wait in queue for his/her turn. Supermarket or Hypermarket looks for a strategy which attracts more and more customers. So we are introducing the concept that is "Smart Trolley System using Arduino and Smart Phone".

System description
In this system, RFID tag is attached to the membership card of the customer which is provided by the supermarket to their regular customers. RFID Reader is attached to shopping trolley or shopping basket which detects the presence of the regular customer and with this, shopping trolley will act as a Smart Trolley. The regular customer requires downloading a mobile application and then the smartphone act as a barcode scanner. With the help of barcode scanner, the barcode is generated which is send to Arduino through Bluetooth Module. Arduino interfaces with the Memory Unit where all the description about the product and its price is stored. Barcode ID is compared with the information in the memory unit and the result will display on the LCD which is attached to the shopping trolley or shopping basket. Once the user is done with his/her shopping and near to billing counter, user press the button on the trolley and data which is displays on the LCD would transfer to the computer. This is done by using NRF24L01 which is a serial peripheral interface and with this data will be transfer from the trolley to the computer at the billing counter. So this system saves the time and effort of the customer and mall staff. This smart system works only for those customers which having a membership card in which RFID is attached to it. Otherwise, it will act as a normal trolley. Supermarkets or Hypermarkets use this approach as their business sftraftegy fto increase ftThe cusftomers [1][2][3][4][5].

Abstract
A supermarket or a hypermarket is a form where wide variety of product items is available. These product items can be food, beverages or any household product. The main purpose of supermarkets is to provide availability of all the products and save the time of the customers but sometimes customer gets frustrated while waiting in the queue at billing counter and sometimes they get confused while comparing the total price of all the products with the budget in the pocket before billing. To overcome these problems, we have designed a smart trolley using a smart phone and Arduino. With this system, there is no need for customer to wait in the queue for the scanning for the product items for billing purpose. Supermarkets or Hypermarkets provide this faculty to only those customers which having membership cards. When the customer inserts the membership card in the basket or trolley only then it will work as a smart trolley. Otherwise, it will work as a normal trolley. Supermarkets and hypermarkets use this technique as a strategy to increase the number of customers.

Block diagram
The block diagrams of trolley system and receiver side were explained in Figures 1 and 2.

Methodology
Barcode Scanner: Customer's Smartphone acts as the barcode scanner. A barcode is used to encode information in a visual pattern readable by the machine. Customers have a mobile application on their smartphone. A number of white and black color zebra strips are there on the barcode. Whenever smartphone camera gets nearer to the bar code, it will decode the code of the barcode and the code will accept by Arduino Uno through Bluetooth Module. Each Barcode has a unique identity and gives total information about the product related data. It is easy to generate barcode and they are cheaper as compare to RFID tags. So it is better to work with barcode when we have a number of products in supermarket or hypermarket.
RFID Tags and RFID Reader: The Smart Trolley can be used by those customers who are having the membership card. In general, RFID Tag is attaching with membership card. RFID Reader is attached to the trolley. Whenever a customer put RFID Tag near to RFID Reader, RFID Reader detects the RFID Tag and trolley act as Smart Trolley. All this process going to works using radio frequency.

Hardware design
Arduino Uno: Arduino Uno is open source, microcontroller board based on the ATmega328P. It performs its functionalities with its 14 digital input/output pins, 6 analog inputs, a 16 MHz quartz crystal, a USB connection, a power jack and a reset button. We can simply connect it to a computer with the help of a USB cable or we can use battery to get started. We can also power it with an AC to DC adapter. We require two Arduino Uno. One is at the transmitter which is attached to the trolley and another is at the receiver at which computer at billing counter is present.

NRF24L01:
Once the shopping is done, the data transfer from the trolley to the computer at the billing counter is done through NRF24L01. The NRF24L01 is a half-duplex transceiver in which the data can transfer in both the directions but simultaneously data transfer in both the directions cannot be possible. The NRF24L01 is a simple chip which is designed for wireless applications and it operate on low power. It operates on ISM band (Industrial, Scientist and Medical) at 2.400-2.4835 GHz. We used this module for one way communication only. It means data is going to transfer from trolley to computer at the billing counter.

20*4 LCD display:
A liquid-crystal display (LCD) is a flat display which is used to display the description of the product. 20*4 means we can display total 20 characters at any instance of time and we have total 4 rows and in each row, we can represent 20 characters. We display the product item's name and price on the LCD. The LCD is attached to the trolley.
Bluetooth Module: The barcode scanned from the smartphone is transferred to Arduino Uno through Bluetooth Module. We used HC 05 Bluetooth module in which data is serially transfer to the Bluetooth receiver. In smart trolley system, the android app is used to send barcode data serially to the Arduino Bluetooth module when a button is pressed on the application. The Receiver Bluetooth module at other end receives the data and sends it to the Arduino Uno through the receiver pin of the Bluetooth module.

Software design
Arduino programming can be written in C or C++ programming language for the compiler which converts the programming language to binary machine code for the target processor. Minimal Arduino C/ C++ programs consist of two functions: setup function which is used to initialize variables and other libraries needed in the program. We can also initialize the input and output pin modes. After setup function, we have loop function in which function loop is executed in the main program in the repeatedly manner [1][2][3].

Result and Conclusion
In Smart Trolley System, now there is no need for the customers to wait in the queue and wait for his/her turn for the scanning of the product items. Especially during weekends or festivals season, there is not time wastage in waiting in the queue. The customer has to do only billing at the billing counter and only those customers can use the smart trolley who are having membership card where RFID Tag is inserted in it. So, supermarkets or hypermarkets use this concept as their business strategy to attract more number of customers.

Future Scope
We have to update the details of the product items in the memory unit of trolley time to time. We take the help of Internet of Things and some software with the help of which all information will be updated regularly. Also, with the help of optical sensor, motors, and motor drivers, we will make trolley in such a way that it will follow the customer which purchasing items and it maintains the safe distance between customer and itself.