Professional Documents
Culture Documents
Certification.
I declare that this report and work described in it are my own work, with any contribution from
others expressly acknowledged and/or cited.
I declare that the work in this report was carried out in accordance with the regulations of the
University of Dar es salaam and has not been presented to any other university for examination
either in Tanzania or overseas. Any views expressed in the report are those of the author and in
no way represent those of the University of Dar es salaam.
SIGNED……………………………
DATE………………………………
This report may proceed for submission for assessment for the award of BSc. In Electrical
Engineering at the University of Dar es salaam.
i
ABSTRACT
The growing number of restaurants and population of restaurant-goers have emphasized the need
to enhance the working of hospitality industry. This research work aims at improving the quality
of services and business of the hospitality industry by incorporating technology. Detailed research
on the integration and utilization of technology in hospitality industries showcased that, various
applications based on wireless technologies are already in use enabling partial automation of the
food ordering process. In this project, we will discuss about the integration of touch technology
in restaurants using android. The tablet at the customer table contains the android application with
all the restaurant and menu details. The customer tablet and kitchen display connect directly with
each other through radio frequency modules. This wireless application is user-friendly, improves
efficiency and accuracy for restaurants by saving time, reduces human errors and provides
customer feedback. This system successfully overcomes the drawbacks in earlier automated food
ordering systems and is less expensive as it requires a one-time investment for gadget
ii
ACKNOWLEDMENT
First and foremost, I would like to humbly acknowledge the almighty GOD for he is every reason
for my accomplishment of this report (progressing report). I would like to acknowledge my
supervisor Dr. Nelson Lujara and Eng.Mr. Stampinus Stephano for their time and cooperation for
the accomplishment of this project. Also, I would like to acknowledge all staff of electrical
engineering department for their comments and advices during oral presentation. Last but not least
I would also like to acknowledge My entire family for their material support.
iii
LIST OF ABBREVIATIONS
LED Light Emitting Diode
LCD Liquid Crystal Display
PC Personal Computer
RF Radio-frequency
iv
TABLE OF CONTENTS
LIST OF ABBREVIATIONS ....................................................................................................... iv
v
CHAPTER FOUR: IMPLEMENTATION OF THE PROPOSED SYSTEM. ............................ 26
REFERENCES ............................................................................................................................. 32
APPENDICES. ............................................................................................................................. 33
vi
LIST OF TABLES
vii
LIST OF FIGURES
Figure 2. 1 Block Diagram Showing the Proposed System (Sending Unit). .................................. 7
Figure 2. 2 Block Diagram Showing the Proposed System (Receiving Unit). ............................... 8
Figure 3. 1 Circuit Diagram of DC Power Supply. ....................................................................... 13
Figure 3. 2 DC Power Supply. ...................................................................................................... 13
Figure 3. 3 A liquid crystal display. .............................................................................................. 14
Figure 3. 4 Arduino Uno with a microcontroller .......................................................................... 15
Figure 3. 5 A 4x4 Matrix Keypad. ................................................................................................ 16
Figure 3. 6 Transceiver RF module. .............................................................................................. 18
Figure 3. 7 System Flow chart. ..................................................................................................... 19
Figure 3. 8 The Simulation Circuit Diagram of a Proposed System. ............................................ 20
Figure 3. 9 Customer Unit Display. .............................................................................................. 21
Figure 3. 10 Food Simulation Results. .......................................................................................... 22
Figure 3. 11 Drink Simulation Results. ......................................................................................... 23
Figure 3. 12 Others Simulation Results. ....................................................................................... 24
Figure 3. 13 Kitchen Display ........................................................................................................ 25
Figure 4. 1 Prototype Setup (Customer Unit). .............................................................................. 27
Figure 5. 1 Prototype Results of Ordering Food, Drinks and Others. ........................................... 28
Figure 5. 2 Add an Order Option. ................................................................................................. 29
Figure 5. 3 Kitchen Unit. ............................................................................................................... 29
viii
CHAPTER ONE: GENERAL INTRODUCTION
1.1 Introduction.
Restaurant is a place that provides services for customers to enjoy the food and drinks available
in that premises. Most of the restaurants will do anything to provide the best services for their
customers. Therefore, ways to effectively improve the service quality for customers by using
advanced technologies has received much attention in recent years. Restaurants only provide
passive services where the waiter can only deal with customer's order by asking customer's
requirements, transferring the order to kitchen and finally cash counter. In a medium to the large
and busy restaurant, this coordination is a challenge and requires an efficient ordering system.
Different approaches have been used to achieve a whole new level of satisfaction among the
customers. In traditional restaurants, orders are taken by waiters and they bring the food when it
is ready, later the customers pay the bill to the waiter or to the accountant at the reception area. A
lot of the restaurants come with different ideas and some of them have a really positive impact on
their business (Ashwini J, April-2018).
In this busy world no one prefers to wait for long time in restaurant. It takes a lot of time for the
process of ordering the food than waiting for food in the queue, also waiters make the same
mistake when it comes to taking their customers order. Miscommunication is the most common
reason why this problem happens. Hence, to reduce the amount of time getting wasted for the
ordering process, and the mistakes made by waiters when taking customers’ orders, we have
planned to create an automatic food ordering system. Herein, in the restaurant, the order will be
placed digitally through touch screen module (tablet). This order will be communicated through a
wireless medium to the kitchen as well as will be updated in the central database. This similar
display will be present in the kitchen and according to the customer's order, the catering staff will
prepare the food. Once the order is ready in the kitchen, the waiter will be notified about it being
ready to be served. The automation in this process involves the easiest way of sending the
information when ordering foods and requesting of waiter services. Many restaurants suffer from
difficult ways of sending the information when ordering foods and requesting of waiter services,
simply because, waiters make mistake when it comes to taking their customers’ orders.
1
These difficulties in sending the information can be reduced by design and implementation of
automatic food ordering system (Mahendra, et al., 2017).
1.2 Problem Statement.
Difficulties in Ordering foods and requesting for the waiter services are the problems which
customers face in restaurants. The design of Automatic food ordering system will reduce the time
taken to receive the ordered food and disturbance of calling the waiters for other services.
Therefore, there is a need to design an automatic food ordering system.
1.3 Objectives.
Below are the main and specific objectives which are clearly stated showing the
different aims to be achieved.
The main objective is to design and implement an automatic food ordering system.
After the project is accomplished, the following are some of the advantages
2
1.5 Project Organization
In this chapter, the meaning of the project was introduced, the problem statement was stated
together with objectives and significance of the project. Which gives the clear picture to the reader
about the aim of designing and implementing automatic food ordering system.
In this chapter the review of the project was done by passing through other similar projects
(systems) which are already in use. Also, the proposed system was introduced by trying to
overcome the drawbacks of the previous similar projects.
In this chapter detailed analysis of each component involved in the proposed system were
determined. Also, the reasons of selecting a component out of other components. But also, gives
a description of the system simulation model and simulation results. The simulation result was
checked to make sure system work as intended before implementation
This chapter provides a description of all the processes involved in the prototype building. Testing
and checking if the expected performance is achieved. First step in this implementation involves
software design, which involves writing of codes and uploading them into the microcontroller.
After software design all circuit components are connected as shown in simulation schematics.
Finally, the system was checked.
3
5. Chapter Five; Results and Discussion.
In this chapter, the outcomes of the proposed system were explained depending on the expected
results Why such results? Brief discussion of the results in relation to the simulation results were
also explained.
This chapter concluded that the proposed system is the best system among the available ones, by
comparing the advantages and disadvantages of each system.
4
CHAPTER TWO: LITERATURE REVIEW
2.1 Introduction.
This chapter is aimed at providing different information of the project. This information includes
details of the existing system in the world, drawbacks of the existing system, details of the
proposed system, advantages and disadvantages of the proposed system.
The systems below are available systems which are used right now in the industry, the systems
are explained detailed, together with their drawbacks.
The traditional paper-based system is one of the most extensively used systems worldwide. In this
system all records are stored on paper (Shweta Shashikant Tanpure, February 2013). However,
there are some problems faced by using this system. Below are some of the drawbacks faced when
this system is used.
1. The most common problem is waiters making mistakes with customer’s orders. At times, a
waiter can forget to add a specific item, make a change because a customer is allergic to certain
substance, or forget to give the order to the kitchen.
2. Customers also call over the waitress frequently to find out the status of their orders,
hence wasting the waiter’s service time.
3. The food may take longer to be prepared and served if the waiter has multiple tables.
Customers may also get wrong bills since they cannot see their bill amount until their meal is
complete.
4. Waiters need to constantly check with the chefs to determine when food is ready. Conversely,
chef needs to make sure waiters know that food is ready.
5. Managers have to analyse hundreds of paper receipts to determine best-selling items, popular
hours and customer satisfaction. They also require re-printing of menus when food is not
available or a price needs to be changed. This can be costly and time consuming to a restaurant.
5
2.2.2 QORDER
The next improvement in the food industry was the “QORDER”. The waiters now no longer took
the orders on paper. Instead, all the orders were taken on a handheld device called the “QORDER”.
It was a portable android device where the waiter enters order information on touch screen and
then sends it to the kitchen for processing. Simultaneously, the POS (PointOf-Sale) system
receives the sales information for later billing. QORDER utilizes Wi-Fi to easily reach to the most
remote corner spot in the restaurant. Once the guests are done, the waiter prints the receipt out and
processes payment with the handheld unit ( Soon, Wei, & Wen, 2010). Below are some of the
drawbacks faced when this system is used.
With new technologies and approaches being introduced to automate the food ordering process, a
number of wireless systems like I-menu, FIWOS, WOS were developed. All these systems were
PDA- based. The feature of PDA systems was that customers or waiters key in ordering process.
Communication between the PDA’s and server became feasible and simple due to wireless
technology (Soon Nyean Cheong, December - 2010). Below are some of the drawbacks faced
when this system is used.
Nowadays android-based technology has dominated the mobile application technology, it’s about
time for researchers incorporate it in the food industry, with interactive pictures it gives additional
information about the food item. Tablets are said to eliminate ordering errors from the waiters.
Tablet with android technology is really fragile and the hardware is expensive so there is a risk
for any establishment would not want to adopt this idea. Perhaps in the future tablet technology
6
will improve and the hardware will be easier to obtain then this proposal can flourish but right
now no establishment would want to invest in the technology. The motivation of the work is
because the customers keep feeling unsatisfied about the services offered and being entertained
late in terms of order taking by the waiter (V. Swapna, December- 2012).
Below are some of the drawbacks faced when this system is used.
To overcome the limitations of above systems, we propose this integration of touch technology in
restaurants based on android technology. The architecture attempts at a full coverage of the two
main areas of restaurant, the Serving area and the Kitchen. Figure 2.1 which shows the block
diagram of the proposed system-sending unit, also Figure 2.2 which shows the block diagram of
the proposed system-receiving unit.
7
Figure 2. 2 Block Diagram Showing the Proposed System (Receiving Unit).
8
CHAPTER THREE: DESIGN OF THE PROPOSED SYSTEM
The proposed system aims to assist the customer to order food without calling the waiters at
restaurant, Thus, the customer will order food through touch screen placed on the customer’s table.
This system will reduce the disturbance which customers face when ordering food, since in the
current systems, the customer needs to call the waiter when he/she needs to order food. This
system also reduces the time which the customer has to wait for food to be delivered to the table.
The system uses Arduino Uno as the main controller which receives and sends information through
RF modules The system has one microcontroller with two RF modules, one at sending unit and
another at the receiving unit, where by the two modules are installed about 30m away from one
another. The idea is that, when the customer inserts his/her order at the sending unit which is 30m
away from the receiving unit, his/her information will be sent and received at sending unit and
received unit respectively, this is because RF module does both sending and receiving signals.
The system essentially consists of two units which are sending unit as well as receiving unit, the
working of these two units depends on each other. Each of the units will require its own circuitry
which when put together through RF module they will work as single system. Hence, the approach
will be of two parts.
1. Sending Unit.
This is the unit where by the transferring of the information begins when the customer arrives in
the restaurant, thus why it is called the sending unit simply because it sends information to the
other unit (receiving unit). Sending unit contains Microcontroller, Keypad, Liquid Crystal Display
(LCD), RF module and Source of power. This unit will be powered from the power source, and
when the customer arrives in the restaurant, he/she will be able to see the available menu and order
the food through keypad and LCD. The inserted information by the customers will be processed
in the microcontroller to a signal needed by the RF module, hence the signal will be transferred to
the other unit. This transferring of signals will be done by RF module.
9
2. Receiving Unit.
This is the unit where by the receiving of the information begins when the customer arrives in the
restaurant, thus why it is called receiving unit simply because it receives information from the
other unit (sending unit). Receiving unit contains RF module, MAX232 which is the part of RF
module and the PC. This unit will receive information from the sending unit through RF module
and the received information will be displayed in the PC with help of the software installed in the
PC. When the chef in the kitchen receives the order from the customer through PC, he/she will be
able to inform the customer whether the ordered food is available or not. When the ordered food
is already prepared, the chef will send the ordered food to the respective table through the waiter.
3.3. Methodology.
This involves searching and evaluating the available literature on a chosen project. It helps in
gathering information about previous established system highlighting their respective strengths
and shortcomings.
3.3.2. Consultation.
Consultations to project supervisor are scheduled every week for guidance. These meetings help
to correcting and solidifying ideas pertaining the chosen project. Challenges encountered in each
stage are also discussed here.
Here the proposed system is summarized in a block diagram displaying different system
components. It also explains how components link with each other and how they collectively
work.
10
3.3.4 Simulation of the Design.
The designed circuit will be tested through circuit programs in order to determine the response of
the design before the stage of implementation
3.3.5 Implementation of the Design.
The prototype will be according to the designed circuit and the selection of material will depend
on the specifications of simulation results, and the designed prototype will have to be
demonstrated.
3.4 Main Components of the Proposed System.
For this project to be accomplished, the following components together with their characteristics
are explained below.
3.4.1 Power Supply.
A DC power supply is the one which gives a constant DC voltage to the load irrespective of the
load. Depending on its design it may be powered directly from a DC supply or from an AC supply
such as power mains. Basically, it is a device that converts an alternating current from utility
supply to low regulated direct current is a DC power supply. Dc supply is used over AC supply
simply because, most of modern electronics operate at very low voltages, and DC is used as low
voltage. DC power supply consists of different components such as transformer, rectifier, filters
and regulators
1. Transformer.
It can be defined as the static device that transfer electrical energy from one circuit to another
through electromagnetic induction. Controls the incoming voltage by either stepping up or
stepping down. In this project, a step-down transformer will be used because the amount of voltage
needed is 12V, while the supply voltage is 230V.
2. Rectifier.
Rectifier is a device that is used to change the alternating current power into pulsating direct
current (dc) power. The rectifier circuits include; half wave, full wave centre-tapped and full wave
11
bridge type. The difference among the three is based on how many AC half cycles each converts
to a pulsating DC output. Half wave rectifiers only convert one of the half cycles whereas full
wave rectifiers convert both half cycles. In this project, Full wave bridge rectifier will be used
because is most efficient as it uses four diodes connected in bridge so as to convert AC voltage to
DC voltage.
3. Filters.
The filter of the power supply is used to smoothen the output; it is designed to convert pulsating
DC from the rectifier circuit into a suitable smooth DC level. The two basic types of power supply
filters are the capacitance filter (C-filter) and RC-filter. The C-filter is the simplest and most
economical filter available, on the other hand RC-filter is used to reduce the amount of ripple
voltage across a capacitor. Its primary function is to pass most of the dc component of the signal.
4. Voltage Regulator.
Since the power supply from the mains varies overtime, the rectified and filtered DC output is still
not stable due to such fluctuations. This is bad situation to the electronic components in the circuit
as it may lead to malfunctioning. Thus, a voltage regulator is applied so as to maintain a constant
voltage level. The common voltage regulator used is transistor voltage regulator which can either
be series voltage regulator or shunt voltage regulator.
The choice of a particular power supply for an application is determined by various attributes of
the power supply, which are typically listed in the power supply's specification. Commonly
specified attributes for a power supply include:
12
Figure 3.1 and Figure3.2 below shows circuit diagram of dc power supply and the
picture of dc supply respectively.
13
3.4.2 Liquid Crystal Display (LCD).
This is the thin display device made of any coloured or monochrome pixel array in front of the
light or reflector. Each pixel consists a column of liquid crystal molecules suspended between two
transparent electrode and two polarizing filters, the axes of polarity of which are perpendicular to
each other. The liquid crystal twists the polarization of light entering one of the filters to allow it
pass through the other. This helps the human being to interact with the common controllers being
used in the devices or any operating circuit as it displays some of information which are due to
program output (micro-controller output) or even simulation of the circuit. Some of the most
commonly used LCDs are 16X1, 16X2, 20X4 and 128X16 Displays which means that 16
characters per line by 1 line, 16 characters per line by 2 lines, 20 characters per line by 4 lines and
128 characters per line by 16 lines respectively. The LCD display offers the following advantages;
14
3.4.3 Microcontroller.
A microcontroller is an integrated circuit that acts as the brain of electronic systems. A single chip
microcontroller constitutes of CPU’s, internal memory, timer, input/output ports and other
associated programmable peripherals. A single chip microcontroller constitutes of CPU’s, internal
memory, timer, input/output ports and other associated programmable peripherals. A
microcontroller can be considered as computer on a chip but unlike a normal computer, it is
designed to perform only few tasks whose mode of operation relies on the set of instructions stored
in a memory. In this project, Arduino Uno has been selected as the board to hold the micontroller
for this system. The microcontroller selected for this project is ATmega328P which has four ports
(A, B, C, D) with 8 pins each, hence gives the total of 32 pins.
The reason of choosing this type of microcontroller is obtain sufficient number of ports, as required
by the project. Port A will be used for keypad, port B and C will be used for LCD and port D for
RF module. Figure 3.4 below shows Arduino Uno with a microcontroller.
15
Reasons for the selection of Arduino Uno;
The microcontroller in this project acts as the centre of all the controlling processes. It receives
regulated power of +5V from the regulated supply. It is interlinked with several interfaces by using
RF modules, that are useful for signal transmission and reception through its pins so as to receive
information from one unit then send a proper signal to other unit.
3.4.4 Keypad.
Is the collection of keys that used for the operation of the portable electronic devices. Keypad
made of pushbuttons connected in rows and columns, rows and columns have some lines which
are connected to pushbuttons contacts, for instance 4x4 matrix keypad has the total number of 16
pushbutton which are connected to row and column lines. The microcontroller has the ability scan
these lines for a respective pressed button. Keypad specifically 4x4 matrix keypad will be used as
medium to interact with the computer using finger to push the buttons, because there will be a lot
of options to select while ordering food in the restaurant. Figure 3.5 below shows keypad.
16
3.4.5 RF Module.
RF module (Radio-frequency module) is a small electronic device used to transmit and/or receive
radio signals between two devices. In an embedded system it is often desirable to communicate
with another device wirelessly. This wireless communication may be accomplished through
optical communication or through radio frequency (RF) communication. For many applications,
the medium of choice is RF since it does not require line of sight. RF communications incorporate
a transmitter and a receiver. They are of various types and ranges. Some can transmit up to 500
feet.
The term RF module can be applied to many different types, shapes and sizes of small electronic
sub assembly circuit board. It can also be applied to modules across a huge variation of
functionality and capability. RF modules typically incorporate a printed circuit board, transmit or
receive circuit, antenna, and serial interface for communication to the host processor. Most
standard, well known types are covered here.
1. Transmitter module.
2. Receiver module.
3. Transceiver module.
The first two types of Rf module performs only single type of operation, either receiving or
sending of signals from or to another device. And the last one performs both receiving and sending
operations between two devices.
Hence transceiver module is most commonly used due to its multiple operations, but it is costly
compared to other two types. Figure 3.6 below is the diagram showing Rf module.
17
Figure 3. 6 Transceiver RF module (Mahendra, et al., 2017).
3.5 System Flowchart.
The operation of the system will be between two units i.e Transmitting unit and the receiving unit,
as discussed before, the transmitting unit transfers information to the receiving unit, while the
receiving unit receives the information from the transmitting unit.
The information flows, starts from the customer unit (transmitting unit) and ends to the receiving
unit. Figure 3.7 below shows the flow of the information from one unit to the other.
18
Figure 3. 7 System Flow chart.
Before building the prototype of this proposed system, the circuit of the project was simulated, to
check if the system will work as expected. A simulation software tool named Proteus 8 profession
(version 8.13) was used to develop the project simulation model. Consider Figure 3.8 below shows
the simulation circuit of the proposed system.
19
Figure 3. 8 The Simulation Circuit Diagram of a Proposed System.
Initially, when the system is powered, the customer unit will display different food options and
the kitchen unit will display nothing (waiting for the order from the customer unit). The customer
will have three different options for selections i.e. F for food, D for drinks and O for others. The
system guarantees the customer to add order when he/she needs to do so. According to the
simulation results observed, the system works as expected. Figure 3.9 below shows the customer
unit display.
20
Figure 3. 9 Customer Unit Display.
3.6.2 Ordering Food (F) Simulation Results.
As explained above, the system will guarantee the customer the three options of selections, on
food selection the customer will have the access to choose or to select between rice, ugali and
banana, which are categorized in food section. But still, in rice section the customer will be offered
some options to select which are rice beans (RB), rice meat and rice chicken. Also, in the ugali
section the customer will be offered some options to select like ugali choma, ugali makange and
ugali chicken. But also, in banana section the customer will be offered some option to select which
21
are banana meat, banana fish and rice banana (mixer). The figure 3.10 below shows the clear
picture of one of the sections on food simulation results.
Once the customer selects drinks section, he/she have the access on selection of three different
categories i.e soda, juice and smoothie. On soda section he/she will find other options between
Coca-Cola, Pepsi and Fanta. Also in juice section, the customer will be able to choose between
22
mango juice, avocado juice and mixer (mango-avocado). But also, in smoothie section the
customer will have a guarantee to choose among the three options which are banana smoothie
(without milk), banana smoothie (with milk) and smoothie mixer. The figure 3.11 below shows
the clear picture of drink simulation results.
Once the customer selects others section, he/she have the access on selection of three different
categories i.e chips, cake and fruits. On chips section he/she will find other options between chips
23
kavu, chips zege and chicken chips. Also in cake section, the customer will be able to choose
between vanilla cake, chocolate cake and plain cake. But also, in fruits section the customer will
have a guarantee to choose among the two options which are fruits (1 plate) and fruits ( plate).
The figure 3.12 below shows the clear picture of others simulation results.
24
3.6.5 Kitchen Display Simulation Results.
The display in the kitchen shows the items ordered by the respective customer in the respectively
table. Also, the display shows the amount of food ordered in terms of plate numbers for example,
when the customer in table number one orders two plates of rice beans, one plate of banana meat,
one plate of ugali choma and the other plate of ugali makange, the display in the kitchen shows as
figure 3.13 below.
25
CHAPTER FOUR: IMPLEMENTATION OF THE PROPOSED SYSTEM.
4.1 Introduction.
The process of Implementation of the Prototype involves actual building of the designed project
solution so that it performs its prescribed tasks according to the requirements. Initialy, before this
implementation software designing involved, which deals with uploading of the codes to the
microcontrollers. Then comes the second part which is the hardware designing which involved building
and connecting of the circuit components.
Different tools and equipments which were used in the construction process of making this project
prototype together with their functions are explained below
These two components were used in making hardboard which all the connections of the customer
unit were inserted inside it.
2. Breadboard.
This was the device used to make all the connections of the control circuit
Software implementation involved the uploading of the codes into the microcontrollers in both Arduino
uno and Arduino nano. C++ Programming language was used in software implementation of this project.
Arduino IDE (Integrated Development Environment) software were used for code compilation. Before
upload/burn them into the microcontroller through USB, they were checked to be error-free.
4.4 Hardware Implementation.
26
3. Connection of Arduino nano (microcontroller) together with other associative interfaces like rf
module and PC (kitchen display). All together to make a waiter unit.
4. Then the circuit was ready to be powered and tested.
Figure 4.1 below shows the prototype setup (customer unit) after building and fixing all
components of the circuit.
27
CHAPTER FIVE: RESULTS AND ANALYSIS.
5.1 Introduction.
Since the connection of the circuit was made completely, the circuit was power and tested so
that to ensure if the connected circuit works satisfactorily as in the simulation. The following
results were observed.
5.2 Customer Unit.
When the system was powered on, the customer unit display (LCD) shows the options to choose
which are F for food, D for drinks and O for others. Figure 5.1 below shows the prototype results of
ordering food, drinks and others.
28
Figure 5. 2 Add an Order Option.
The kitchen unit which is made of the kitchen display (PC), will display the table number which
the customer unit is allocated, and the respective order ordered. Figure 5.3 below shows the kitchen
unit.
29
CHAPTER SIX: CONCLUSION.
6.1 Conclusion.
In this paper, there are comparisons between automation tools of food ordering system in
restaurant and hotels, such tools are, Traditional paper-based system, Personal Digital Assistants
(PDA) based System, and QORDER system. The speed of processing of an Automatic food
ordering system is almost the same as that QORDER system whereas the speed of processing of
Traditional paper-based system is much slower than PDA based systems, QORDER system and
Automatic food ordering system. So, it is clearly that Automatic food ordering system is the
cheapest solution for the restaurant and hotels owners. Thus, a wireless communication automated
food ordering system is presented.
An Automatic food ordering system is ease, effective and convenient to use thereby leads to the
improvement of performance of the restaurant/hotel’s staff. But also, this system ensures customer
satisfactions and quality of services. Therefore, the proposed system has the potential to add
working efficiency of the restaurant staffs and to attract customers.
6.2 Challenges.
Towards the completion of this project several challenges were encountered throughout.
6.3 Recommendations.
1. Prototype-level was the last achievement of this project. The prototype made for low power
application with one customer table only (customer unit), however this concept can be used
for high power applications with more than one tables.
30
2. In order to improve the system, rf modules to be used has to be the transceiver rf modules
so that to simplify the communication between the two units (transmitter and receiver).
Some limitations and unavoidable challenges led to failure to accomplish the expected work
hundred percent. So, in future some works has to be done so as to improve the performance and
quality of this proposed system. Below are future works to be performed so that the expected
performance and quality to be accomplished.
1. The use of transceiver rf modules with higher frequency range, so that so improve the
communication between the customer and the waiter in the longer distance (wireless).
2. The use of touchscreen in place of keypad. This will increase the comfortability of the
customer while ordering food.
31
REFERENCES
Soon, N. C., Wei, W. C., & Wen, J. Y. (2010). Design and Development of Multi-Touchable
ERestaurant . International Conference on Science and Social Research. Kuala Lumpur.
Ashutosh, B., Niranjan, J., & Apurva, J. (2013, April). Digital Ordering for Restaurant using
Android. Internal Journal of Scientific, 3(4).
Mahendra, C., Ankit, T., Neha, A., Priyanka, P., Namrata, K., & Kulkarni, P. P. (2017). Automated
Table Ordering System. International Journal of Advance Research and Development, 75-
74.
Shweta Shashikant Tanpure, P. R. (February 2013). Automated Food Ordering System with Real-
Time Customer Feedback. International Journal of Advanced Research in Computer
Science and Software Engineering, 200-220.
32
APPENDICES.
Appendix A: Work Done So Far.
2. Literature review.
33
Appendix B: Time Schedule.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
1 Literature
review
2 Consultation
with supervisor
3 Progress report
submission
4 First oral
presentation
5 Report writing
6 Submission of
report
7 Second oral
presentation
8 Prototype
testing
KEY
2. Work to be done
34
Appendix C: Budget Estimation.
S/N Component Quantity Cost per piece (Tshs) Total cost (Tshs)
35
Appendix D: Arduino codes.
#include <Wire.h>
#include <VirtualWire.h>
#include<LiquidCrystal_I2C.h>
#include <SoftwareSerial.h>
#include <Keypad.h>
SoftwareSerial serial(12,11);
LiquidCrystal_I2C lcd(0x27, 20, 4);
int i=0;
char *controller;
char *controller1;
//const int buttonPin1 = 8;
//int buttonState1 = 0;
const byte ROWS = 4; //four rows
const byte COLS = 4; //four columns
//define the cymbols on the buttons of the keypads
char hexaKeys[ROWS][COLS] = {
{'1','2','3','A'},
{'4','5','6','B'},
{'7','8','9','C'},
{'*','0','#','D'}
};
byte rowPins[ROWS] = {13,4,3,6}; //connect to the row pinouts of the keypad
byte colPins[COLS] = {10,5,8,7}; //connect to the column pinouts of the keypad
36
String cart[6];
int count=0;
int menuState=0;
void setup()
{
// put your setup code here, to run once:
//Serial.begin(9600);
//pinMode(buttonPin1, INPUT);
//pinMode(7,OUTPUT);
//vw_set_ptt_inverted(true); //
//vw_set_tx_pin(12);
//vw_setup(8000);// speed of data transfer Kbps
serial.begin(9600);
delay(100);
lcd.begin(20,4);
lcd.backlight();
lcd.setCursor(2,0);
lcd.print(" WELCOME ");
lcd.setCursor(2,1);
lcd.print("COET RESTAURANT");
delay(100);
lcd.setCursor(0,2);
lcd.print(" F D 0");
lcd.setCursor(0,3);
lcd.print(" FOOD DRINKS OTHERS ");
}
void loop() {
//buttonState1 = digitalRead(buttonPin1);
//Serial.println(controller);
37
if(menuState==0){
zero ();
menuState=1;
}
else if (customKey =='1'){
one ();
menuState=1;
}
}
else if(menuState==1){
38
char customKey = customKeypad.getKey();
if (customKey){
if (customKey == '4'){
menu11();
menuState=11;
}
else if (customKey =='7'){
menu21();
menuState=21;
}
else if (customKey =='*'){
menu31();
menuState=31;
}
}
}
else if(menuState==2){
if (customKey){
if (customKey == '5'){
menu41();
menuState=41;
39
else if (customKey =='8'){
menu51();
menuState=51;
}
else if (customKey =='0'){
menu61();
menuState=61;
}
}
}
else if(menuState==3){
if (customKey){
if (customKey == '6'){
menu71();
menuState=71;
}
else if (customKey =='9'){
menu81();
menuState=81;
}
else if (customKey =='#'){
menu91();
menuState=91;
}
}
40
}
else if(menuState==11){
char customKey = customKeypad.getKey();
if (customKey)
{
if (customKey == '4'){
}
else if(customKey == '7'){
}
else if(customKey == '*'){
41
else if(menuState==21){
char customKey = customKeypad.getKey();
if (customKey)
{
if (customKey == '4'){
}
else if(customKey == '7'){
}
else if(customKey == '*'){
cart[count++]= "RICE-BANANA";
addOrder();
menuState=40;
}
else if(menuState==31){
42
char customKey = customKeypad.getKey();
if (customKey)
{
if (customKey == '4'){
}
else if(customKey == '7'){
}
else if(customKey == '*'){
else if(menuState==41){
char customKey = customKeypad.getKey();
43
if (customKey)
{
if (customKey == '5'){
cart[count++]= "COCA-COLA";
addOrder();
menuState=40;
}
else if(customKey == '8'){
cart[count++]= "PEPSI";
addOrder();
menuState=40;
}
else if(customKey == '0'){
cart[count++]= "FANTA";
addOrder();
menuState=40;
else if(menuState==51){
char customKey = customKeypad.getKey();
if (customKey)
44
{
if (customKey == '5'){
}
else if(customKey == '8'){
}
else if(customKey == '0'){
cart[count++]= "MIXER";
addOrder();
menuState=40;
else if(menuState==61){
char customKey = customKeypad.getKey();
if (customKey)
{
45
if (customKey == '5'){
}
else if(customKey == '8'){
}
else if(customKey == '0'){
cart[count++]= "SMOOTHIE-MIXER";
addOrder();
menuState=40;
else if(menuState==71){
char customKey = customKeypad.getKey();
if (customKey)
{
if (customKey == '6'){
46
cart[count++]= "CHIPS KAVU";
addOrder();
menuState=40;
}
else if(customKey == '9'){
}
else if(customKey == '#'){
else if(menuState==81){
char customKey = customKeypad.getKey();
if (customKey)
{
if (customKey == '6'){
cart[count++]= "VANILLA CAKE";
47
addOrder();
menuState=40;
}
else if(customKey == '9'){
}
else if(customKey == '#'){
else if(menuState==91){
char customKey = customKeypad.getKey();
if (customKey)
{
if (customKey == '6'){
48
menuState=40;
}
else if(customKey == '9'){
else if(menuState==40){
char customKey = customKeypad.getKey();
if (customKey)
{
if (customKey == '1'){
home();
menuState=0;
}
else if (customKey =='2'){
waitMessage();
home();
menuState=0;
sendOrder();
}
49
else if (customKey =='3'){
home();
menuState=0;
count=0;
}
}
void home(){
lcd.clear();
lcd.setCursor(2,0);
lcd.print(" WELCOME ");
lcd.setCursor(2,1);
lcd.print("COET RESTAURANT");
lcd.setCursor(0,2);
lcd.print(" F D O");
lcd.setCursor(0,3);
lcd.print(" FOOD DRINKS OTHERS");
}
void addOrder(){
lcd.clear();
lcd.setCursor(2,0);
lcd.print("DO YOU WANT TO ADD");
lcd.setCursor(2,1);
lcd.print(" AN ORDER? ");
lcd.setCursor(0,2);
50
lcd.print(" F D O");
lcd.setCursor(0,3);
lcd.print(" YES NO EXIT");
}
void menu11(){
lcd.clear();
lcd.setCursor(1,0);
lcd.print("F1- RICE BEANS");
lcd.setCursor(1,1);
lcd.print("F2- RICE MEAT");
lcd.setCursor(1,2);
lcd.print("F3- RICE CHICKEN");
lcd.setCursor(1,3);
lcd.print("#- EXIT");
void menu21(){
lcd.clear();
lcd.setCursor(1,0);
lcd.print("F1- BANANA FISH ");
lcd.setCursor(1,1);
lcd.print("F2- BANANA MEAT");
lcd.setCursor(1,2);
lcd.print("F3- RICE-BANANA ");
lcd.setCursor(1,3);
lcd.print("#- EXIT");
}
void menu31(){
51
lcd.clear();
lcd.setCursor(1,0);
lcd.print("F1- UGALI CHOMA ");
lcd.setCursor(1,1);
lcd.print("F2- UGALI MAKANGE");
lcd.setCursor(1,2);
lcd.print("F3- UGALI CHICKEN");
lcd.setCursor(1,3);
lcd.print("#- EXIT");
void waitMessage(){
lcd.clear();
lcd.setCursor(1,0);
lcd.print(" ORDER SENT ");
lcd.setCursor(1,2);
lcd.print(" PLEASE WAIT ");
lcd.setCursor(0, 3);
lcd.print("."); delay(15);
lcd.setCursor(1, 3);
lcd.print("."); delay(15);
lcd.setCursor(2, 3);
lcd.print("."); delay(15);
lcd.setCursor(3, 3);
lcd.print("."); delay(15);
lcd.setCursor(4, 3);
lcd.print("."); delay(15);
lcd.setCursor(5, 3);
lcd.print("."); delay(15);
lcd.setCursor(6, 3);
52
lcd.print("."); delay(15);
lcd.setCursor(7, 3);
lcd.print("."); delay(15);
lcd.setCursor(8, 3);
lcd.print("."); delay(15);
lcd.setCursor(9, 3);
lcd.print("."); delay(15);
lcd.setCursor(10,3);
lcd.print("."); delay(15);
lcd.setCursor(11, 3);
lcd.print("."); delay(15);
lcd.setCursor(12, 3);
lcd.print("."); delay(15);
lcd.setCursor(13, 3);
lcd.print("."); delay(15);
lcd.setCursor(14, 3);
lcd.print("."); delay(15);
lcd.setCursor(15, 3);
lcd.print("."); delay(15);
lcd.setCursor(16, 3);
lcd.print("."); delay(15);
lcd.setCursor(17, 3);
lcd.print("."); delay(15);
lcd.setCursor(18, 3);
lcd.print("."); delay(15);
lcd.setCursor(19, 3);
lcd.print("."); delay(15);
void zero()
53
{
controller="0" ;
//vw_send((uint8_t *)controller, strlen(controller));
//vw_wait_tx(); // Wait until the whole message is gone
//digitalWrite(7, HIGH);
lcd.clear();
lcd.setCursor(2,0);
lcd.print(" WELCOME ");
lcd.setCursor(2,1);
lcd.print("COET RESTAURANT");
delay(100);
lcd.setCursor(0,2);
lcd.print(" F D O");
lcd.setCursor(0,3);
lcd.print(" FOOD DRINKS OTHERS");
//digitalWrite(led9,LOW);
// i=0;
}
void one()
{
lcd.clear();
lcd.setCursor(1,0);
lcd.print("F1- RICE");
lcd.setCursor(1,1);
lcd.print("F2- BANANA");
lcd.setCursor(1,2);
lcd.print("F3- UGALI");
lcd.setCursor(1,3);
54
lcd.print("#-EXIT");
//digitalWrite(led9,LOW);
//i=1;
}
void two()
{
lcd.clear();
lcd.setCursor(1,0);
lcd.print("D1- SODA");
lcd.setCursor(1,1);
lcd.print("D2- JUICES");
lcd.setCursor(1,2);
lcd.print("D3- SMOOTHIE");
lcd.setCursor(1,3);
lcd.print("#-EXIT");
//digitalWrite(led9,LOW);
i=2;
}
void menu41()
{
lcd.clear();
lcd.setCursor(1,0);
lcd.print("D1- COCA-COLA");
lcd.setCursor(1,1);
lcd.print("D2- PEPSI");
lcd.setCursor(1,2);
lcd.print("D3- FANTA");
lcd.setCursor(1,3);
55
lcd.print("#-EXIT");
//digitalWrite(led9,LOW);
i=2;
}
void menu51()
{
lcd.clear();
lcd.setCursor(1,0);
lcd.print("D1- MANGO JUICE");
lcd.setCursor(1,1);
lcd.print("D2- AVOCADO JUICE");
lcd.setCursor(1,2);
lcd.print("D3- MIXER");
lcd.setCursor(1,3);
lcd.print("#-EXIT");
//digitalWrite(led9,LOW);
i=2;
}
void menu61()
{
lcd.clear();
lcd.setCursor(1,0);
lcd.print("D1- MILKY");
lcd.setCursor(1,1);
lcd.print("D2- NO-MILK");
lcd.setCursor(1,2);
56
lcd.print("D3- MIXER");
lcd.setCursor(1,3);
lcd.print("#-EXIT");
//digitalWrite(led9,LOW);
i=2;
}
void menu71()
{
lcd.clear();
lcd.setCursor(1,0);
lcd.print("O1- CHIPS KAVU");
lcd.setCursor(1,1);
lcd.print("O2- CHIPS ZEGE");
lcd.setCursor(1,2);
lcd.print("O3- CHICKEN CHIPS");
lcd.setCursor(1,3);
lcd.print("#-EXIT");
//digitalWrite(led9,LOW);
i=2;
}
void menu81()
{
lcd.clear();
lcd.setCursor(1,0);
lcd.print("O1- VANILLA CAKE");
lcd.setCursor(1,1);
lcd.print("O2- CHOCOLATE CAKE");
57
lcd.setCursor(1,2);
lcd.print("O3- PLAIN CAKE");
lcd.setCursor(1,3);
lcd.print("#-EXIT");
//digitalWrite(led9,LOW);
i=2;
}
void menu91()
{
lcd.clear();
lcd.setCursor(1,0);
lcd.print("O1- FRUITS (1)");
lcd.setCursor(1,1);
lcd.print("O2- FRUITS (1/2)");
lcd.setCursor(1,2);
lcd.print(" ");
lcd.setCursor(1,3);
lcd.print("#-EXIT");
//digitalWrite(led9,LOW);
i=2;
}
void three()
{
lcd.clear();
lcd.setCursor(1,0);
lcd.print("O1- CHIPS");
lcd.setCursor(1,1);
58
lcd.print("O2- CAKES");
lcd.setCursor(1,2);
lcd.print("O3- FRUITS");
lcd.setCursor(1,3);
lcd.print("#- EXIT");
//digitalWrite(led9,LOW);
// i=3;
}
void four()
{
lcd.clear();
lcd.setCursor(1,0);
lcd.print("Order yako imetumwa");
lcd.setCursor(1,2);
lcd.print("Tafadhari subiri");
lcd.setCursor(0, 3);
lcd.print("."); delay(15);
lcd.setCursor(1, 3);
lcd.print("."); delay(15);
lcd.setCursor(2, 3);
lcd.print("."); delay(15);
lcd.setCursor(3, 3);
lcd.print("."); delay(15);
lcd.setCursor(4, 3);
lcd.print("."); delay(15);
lcd.setCursor(5, 3);
lcd.print("."); delay(15);
lcd.setCursor(6, 3);
lcd.print("."); delay(15);
59
lcd.setCursor(7, 3);
lcd.print("."); delay(15);
lcd.setCursor(8, 3);
lcd.print("."); delay(15);
lcd.setCursor(9, 3);
lcd.print("."); delay(15);
lcd.setCursor(10,3);
lcd.print("."); delay(15);
lcd.setCursor(11, 3);
lcd.print("."); delay(15);
lcd.setCursor(12, 3);
lcd.print("."); delay(15);
lcd.setCursor(13, 3);
lcd.print("."); delay(15);
lcd.setCursor(14, 3);
lcd.print("."); delay(15);
lcd.setCursor(15, 3);
lcd.print("."); delay(15);
lcd.setCursor(16, 3);
lcd.print("."); delay(15);
lcd.setCursor(17, 3);
lcd.print("."); delay(15);
lcd.setCursor(18, 3);
lcd.print("."); delay(15);
lcd.setCursor(19, 3);
lcd.print("."); delay(15);
controller="1" ;
serial.print("TABLE ONE UGALI");
// vw_send((uint8_t *)controller, strlen(controller));
60
/// vw_wait_tx(); // Wait until the whole message is gone
void five()
{
lcd.clear();
lcd.setCursor(1,0);
lcd.print("Order yako imetumwa");
lcd.setCursor(1,2);
lcd.print("Tafadhari subiri");
lcd.setCursor(0, 3);
lcd.print("."); delay(15);
lcd.setCursor(1, 3);
lcd.print("."); delay(15);
lcd.setCursor(2, 3);
lcd.print("."); delay(15);
lcd.setCursor(3, 3);
lcd.print("."); delay(15);
lcd.setCursor(4, 3);
lcd.print("."); delay(15);
lcd.setCursor(5, 3);
lcd.print("."); delay(15);
lcd.setCursor(6, 3);
lcd.print("."); delay(15);
lcd.setCursor(7, 3);
lcd.print("."); delay(15);
lcd.setCursor(8, 3);
lcd.print("."); delay(15);
lcd.setCursor(9, 3);
61
lcd.print("."); delay(15);
lcd.setCursor(10,3);
lcd.print("."); delay(15);
lcd.setCursor(11, 3);
lcd.print("."); delay(15);
lcd.setCursor(12, 3);
lcd.print("."); delay(15);
lcd.setCursor(13, 3);
lcd.print("."); delay(15);
lcd.setCursor(14, 3);
lcd.print("."); delay(15);
lcd.setCursor(15, 3);
lcd.print("."); delay(15);
lcd.setCursor(16, 3);
lcd.print("."); delay(15);
lcd.setCursor(17, 3);
lcd.print("."); delay(15);
lcd.setCursor(18, 3);
lcd.print("."); delay(15);
lcd.setCursor(19, 3);
lcd.print("."); delay(15);
controller1="1" ;
serial.print("TABLE ONE WALI");
//vw_send((uint8_t *)controller1, strlen(controller1));
//vw_wait_tx(); // Wait until the whole message is gone
void six()
{
62
lcd.clear();
lcd.setCursor(1,0);
lcd.print("Order yako imetumwa");
lcd.setCursor(1,2);
lcd.print("Tafadhari subiri");
lcd.setCursor(0, 3);
lcd.print("."); delay(15);
lcd.setCursor(1, 3);
lcd.print("."); delay(15);
lcd.setCursor(2, 3);
lcd.print("."); delay(15);
lcd.setCursor(3, 3);
lcd.print("."); delay(15);
lcd.setCursor(4, 3);
lcd.print("."); delay(15);
lcd.setCursor(5, 3);
lcd.print("."); delay(15);
lcd.setCursor(6, 3);
lcd.print("."); delay(15);
lcd.setCursor(7, 3);
lcd.print("."); delay(15);
lcd.setCursor(8, 3);
lcd.print("."); delay(15);
lcd.setCursor(9, 3);
lcd.print("."); delay(15);
lcd.setCursor(10,3);
lcd.print("."); delay(15);
lcd.setCursor(11, 3);
lcd.print("."); delay(15);
lcd.setCursor(12, 3);
63
lcd.print("."); delay(15);
lcd.setCursor(13, 3);
lcd.print("."); delay(15);
lcd.setCursor(14, 3);
lcd.print("."); delay(15);
lcd.setCursor(15, 3);
lcd.print("."); delay(15);
lcd.setCursor(16, 3);
lcd.print("."); delay(15);
lcd.setCursor(17, 3);
lcd.print("."); delay(15);
lcd.setCursor(18, 3);
lcd.print("."); delay(15);
lcd.setCursor(19, 3);
lcd.print("."); delay(15);
controller="1" ;
serial.print("TABLE ONE NDIZI");
//vw_send((uint8_t *)controller, strlen(controller));
// vw_wait_tx(); // Wait until the whole message is gone
}
void seven()
{
lcd.clear();
lcd.setCursor(1,0);
lcd.print("Order yako imetumwa");
lcd.setCursor(1,2);
lcd.print("Tafadhari subiri");
lcd.setCursor(0, 3);
64
lcd.print("."); delay(15);
lcd.setCursor(1, 3);
lcd.print("."); delay(15);
lcd.setCursor(2, 3);
lcd.print("."); delay(15);
lcd.setCursor(3, 3);
lcd.print("."); delay(15);
lcd.setCursor(4, 3);
lcd.print("."); delay(15);
lcd.setCursor(5, 3);
lcd.print("."); delay(15);
lcd.setCursor(6, 3);
lcd.print("."); delay(15);
lcd.setCursor(7, 3);
lcd.print("."); delay(15);
lcd.setCursor(8, 3);
lcd.print("."); delay(15);
lcd.setCursor(9, 3);
lcd.print("."); delay(15);
lcd.setCursor(10,3);
lcd.print("."); delay(15);
lcd.setCursor(11, 3);
lcd.print("."); delay(15);
lcd.setCursor(12, 3);
lcd.print("."); delay(15);
lcd.setCursor(13, 3);
lcd.print("."); delay(15);
lcd.setCursor(14, 3);
lcd.print("."); delay(15);
lcd.setCursor(15, 3);
lcd.print("."); delay(15);
65
lcd.setCursor(16, 3);
lcd.print("."); delay(15);
lcd.setCursor(17, 3);
lcd.print("."); delay(15);
lcd.setCursor(18, 3);
lcd.print("."); delay(15);
lcd.setCursor(19, 3);
lcd.print("."); delay(15);
controller="1" ;
vw_send((uint8_t *)controller, strlen(controller));
vw_wait_tx(); // Wait until the whole message is gone
}
void eight()
{
lcd.clear();
lcd.setCursor(1,0);
lcd.print("Order yako imetumwa");
lcd.setCursor(1,2);
lcd.print("Tafadhari subiri");
lcd.setCursor(0, 3);
lcd.print("."); delay(15);
lcd.setCursor(1, 3);
lcd.print("."); delay(15);
lcd.setCursor(2, 3);
lcd.print("."); delay(15);
lcd.setCursor(3, 3);
lcd.print("."); delay(15);
lcd.setCursor(4, 3);
66
lcd.print("."); delay(15);
lcd.setCursor(5, 3);
lcd.print("."); delay(15);
lcd.setCursor(6, 3);
lcd.print("."); delay(15);
lcd.setCursor(7, 3);
lcd.print("."); delay(15);
lcd.setCursor(8, 3);
lcd.print("."); delay(15);
lcd.setCursor(9, 3);
lcd.print("."); delay(15);
lcd.setCursor(10,3);
lcd.print("."); delay(15);
lcd.setCursor(11, 3);
lcd.print("."); delay(15);
lcd.setCursor(12, 3);
lcd.print("."); delay(15);
lcd.setCursor(13, 3);
lcd.print("."); delay(15);
lcd.setCursor(14, 3);
lcd.print("."); delay(15);
lcd.setCursor(15, 3);
lcd.print("."); delay(15);
lcd.setCursor(16, 3);
lcd.print("."); delay(15);
lcd.setCursor(17, 3);
lcd.print("."); delay(15);
lcd.setCursor(18, 3);
lcd.print("."); delay(15);
lcd.setCursor(19, 3);
lcd.print("."); delay(15);
67
controller="1" ;
serial.print("TABLE ONE juice");
// vw_send((uint8_t *)controller, strlen(controller));
// vw_wait_tx(); // Wait until the whole message is gone
void sendOrder(){
serial.println("***********NEW ORDER**************");
serial.println("********* TABLE ONE**************");
String sentItems = "";
//serial.println(item);
//serial.println(count);
for(int i=0;i<count;i++){
String item = cart[i];
if(sentItems.indexOf(item)== -1){
int vl = isInCart(item);
serial.print(item);
serial.print(" (");
serial.print(vl);
serial.println(")");
sentItems.concat(" "+item + " ");
//serial.println( sentItems);
}
68
int isInCart(String item){
int vl=0;
for(i=0;i<count;i++){
if(item.equalsIgnoreCase(cart[i])) vl++;
}
return vl;
69