AUTOMATIC CHOCOLATE VENDING MACHINE (AVCM) USING μC/OS-II RTOS ACVM Specifications
Alphanumeric keypad and Display
* Alphanumeric keypad on the top of the machine. A child interaction with it when buying a chocolate. * Owner commands and interaction with the machine. Three line LCD display unit on the top of the machine. * Displays menus, entered text, pictograms, and welcome, thank messages, and time and date. * Child as well as the ACVM owner GUIs with the machine using keypad and display. Coin insertion and delivery slots, and Internet port
* 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-Internet connection port so that owner can interact with ACVM from remote. RTOS
* An RTOS has to schedule the buying tasks from start to finish. * Let μC/OS-II be the RTOS used in ACVM
The machine has a slot for inserting the coin.
* There is a slot into which a child (buyer) inserts the coins for buying a chocolate. The chocolate costs Rs. 8. A coin can be in one of the three possible denominations: Rs. 1, 2 and 5. Whenever a coin is inserted, a mechanical system directs each coin to its appropriate port, Port_1, Port_2 and Port_5. * The machine should have an LCD display matrix as ‘User Interface’. Let the interface be called Port_Display. It displays the message strings in three lines. * It should have a bowl from where the buyer collects the chocolate through a port for delivery. Let this port be called Port_Deliver. All ports, Port_Deliver, Port_Refund and Port_Excess Refund communicate to Port_Collect. This port is a common mechanical interface to the bowl. * An RTOS has to schedule the processes (tasks) for buying from start to finish. * It should also be possible to reprogram the codes and relocation of the codes in the system ROM of flash or EPROM whenever the following happens: * The price of chocolate increases
* The message lines need to be changed or
* Machine features changes.
Fig.1. a)Basic system(ACVS) of an Automatic Chocolate Vending Machine Fig .1. b)Input and Output Ports at the ACVM
Reprogram of the codes and relocation of the codes
* The system ROM or flash or EPROM whenever the following happens: (i) the price of chocolate increases, (ii) the message lines or menus or advertisement graphics needs to be changed or (iii) machine features change.
Features| 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.| Inputs| Coins of different denominations through a coin slot. User commands| 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.| 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.| 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.|
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...