Case Study of An Automatic Chocolate Vending Machine (ACVM

Download as pdf or txt
Download as pdf or txt
You are on page 1of 22

Case study Of An Automatic

Chocolate Vending Machine(ACVM)


presented by:
Mohammed Ahmed (7858)
Basic block diagram of chocolate
vending machine
ACVM Specifications
• Alphanumeric keypad and display
– Three line LCD display unit on the top of the machine.
– Displays menus, entered text, pictograms, and welcome,
thank and other messages, and time and date.
– Child as well as the ACVM owner GUIs with the machine
using keypad and display.
• Multicoin module
– Coin insertion slot so that the child can insert the
coins to buy a chocolate
– Delivery slot to collect the chocolate, and coins if
refunded.
ACVM Requirements
Purpose:To sell chocolate through an ACVM
from which children can automatically
purchase the chocolates. The payment is by
inserting the coins of appropriate amount into
a coin-slot. To refund the coins.
• Inputs
– Coins of different denominations through a coin
slot.
– User commands
• Outputs
– Chocolate and signal (IPC) to the system that
subtracts the cost from the value of amount
collected.
– Display of the menus for GUIs, time and date,
advertisements, welcome and thank messages
Signals, Events and Notifications
• A mechanical system directs each coin to its
appropriate port − Port_1, Port_2 or Port_5.
•Each port generates an interrupt on receiving
the coin at input.
• Each port interrupt starts an ISR, which increase
value of amount collected by 1 or 2 or 5 and
posts an IPC to a waiting task the system.
• Each selected menu choice gives a notification
to the system
Input and Output Ports
Functions of the system
• A child sends commands to the system using a
GUI (graphic user interface).
• GUI consists of the LCD display and keypad units.
• The child inserts the coins for cost of chocolate
and the machine delivers the chocolate.
• If the coins are not inserted as per the cost of
chocolate in reasonable times then all coins are
refunded.
• If the coins are inserted of amount more than
the cost of chocolate, the excess amount is
refunded along with chocolate.
• The coins for the chocolates purchased collect
inside the machine in a collector channel, so
that owner can get the money, again through
appropriate commands using the GUI.
• USB wireless modem enables communication
through Internet to the ACVM owner
Design metrics
• Power Dissipation: As required by mechanical
units, display units and computer system
• Performance: One chocolate in two minutes
and 256 chocolates before next filling of
chocolates into the machine. [Assumed]
• Process Deadlines: Machine waits for
maximum 30 s for the coins and machine
should deliver the chocolate within 60 s.
• User Interfaces: Graphic at LCD or touch
screen display on LCD and commands by
children or machine owner through fingers on
keypad or touch screen
• Engineering Cost: US$ 50000 (assumed)
• Manufacturing Cost: US$ 1000 (assumed)
Test and validation conditions
• All user commands must function correctly
• All graphic displays and menus should appear
as per the program.
• Each task should be tested with test inputs
• Tested for 60 users per hour
Class diagram
Classes Display_Output and
User_Keypad_Input
Objects Task_Display and
TaskUser_KeypadInput
State diagram
Hardware architecture
• ACVM specific hardware to sort the coins of
different denomination and each
denomination Main Power supply 220 V 50
Hz or 110 V 60 Hz. Internal circuits drive by
supply of 5 V 50mA for electronic and 12 V 2 A
for mechanical systems.
• A TCP/IP port A 1 s resolution timer is
obtained by programming 8051 timer Flash
memory part of ROM and RAM for storing
temporary variables and stack 8 MB ROM for
application codes and RTOS codes
Microcontroller 8051MX
Software Architecture
• ISR_keypadInput, ISR_TimeDate, ISR_Ad,
ISR_Port1, ISR_Port2, ISR_Port3 are the ISR
which service the device interrupt.
• Task_GUI, Task_Display, TaskUser_KeypadInput,
Task_Communications, Task_ReadPorts,
Task_Refund, Task_ExcessRefund, Task_Collect,
Task_Delieverand Task_Display are the task
which kernel schedules.
RTOS
• An RTOS has to schedule the buying tasks
from start to finish.
• Let µC/OS-II be the RTOS used in ACVM

You might also like