Date post: | 19-Dec-2015 |
Category: |
Documents |
View: | 214 times |
Download: | 0 times |
L.U.S.H.L.U.S.H.Liquor’s Ultimate Service Handler
Mike MartinPezh ShoureshiAndrew SchmidHeather BunaTaymoor Marar
EE Capstone Design LabSpring 2004
Presentation Outline Overview
Objectives Description
Hardware and Interfaces Block Diagram Processor FPGA EPROM SRAM LCD Keypad Bill Acceptor Pumps
Software Pseudo Code
Parts List Current Progress
Processor Valve and Pump Test
Schedule Milestone Goals Current Schedule Division of Labor
Conclusion
Objectives Design and implement a mixed
drink/single shot vending machine that will:• Provide a drink menu according to available
liquor / mixers
• Pour specific drinks
• Track alcohol and mixer amounts in machine
• Accept Payment (Cash or PIN debit accounts)
• Allow quick-loading with barcode reader wand
Purpose Can be used at parties to pour
drinks for guests, eliminating the need for a bartender.
Can be used at bars and sporting events to help relieve lines.
Can be used at bars/restaurants by cocktail wait staff.
Physical Description L.U.S.H will be a rectangular box
with six alcohol/mixer bottles on top
L.U.S.H. will have a bill acceptor, LCD screen, barcode reader and numeric key pad on the front side
L.U.S.H General Configuration
Block Diagram
Processor
Motorola MC68HC000 68 pin PLLC 16/-32 bit
microprocessor architecture
16-bit data bus 24-bit address bus Capable of addressing
over million bytes of memory.
8MHz clock speed
Processor Bus Schematic
U1
68000D
A129
A230
A331
A432
A533
A634
A735
A836
A937
A1038
A1139
A1240
A1341
A1442
A1543
A1644
A1745
A1846
A1947
A2048
A2150
A2251
A2352
AS6
CLK15
BG11
EN20
D05
D14
D23
D32
D41
D564
D663
D762
D861
D960
D1059
D1158
D1257
D1356
D1455
D1554
FC028
FC127
FC226
LDS8
R/W9
UDS7
VMA19
IPL025
IPL124
IPL223
BR13
BERR22
BGACK12
DTACK10
HALT17
RST18
VPA21
CLOCK
DTACK
FPGA
Data Line4.7K
5V
Reset
U2
MM74HC245A
DIR1
A89
B811B712B613B514B415B316B217B118
G19
A12
A23
A34
A45
A56
A67
A78
U3
MM74HC245A
DIR1
A89
B811B712B613B514B415B316B217B118
G19
A12
A23
A34
A45
A56
A67
A78
U4
MM74HC245A
DIR1
A89
B811B712B613B514B415B316B217B118
G19
A12
A23
A34
A45
A56
A67
A78
U5
MM74HC245A
DIR1
A89
B811B712B613B514B415B316B217B118
G19
A12
A23
A34
A45
A56
A67
A78
U6
MM74HC245A
DIR1
A89
B811B712B613B514B415B316B217B118
G19
A12
A23
A34
A45
A56
A67
A78
FPGA
Xilinx XCS10 FPGA Programmable logic using 84-pin
PLCC. Chip Select using 4/16 decoding. Using counter to time duration of
liquid dispensing.
FPGA SchematicU1
XC4005E/LCC
I/O26
I/O18
I/O19
I/O20
I/O23
I/O24
I/O25
I/O27
I/O28
I/O38
I/O39
I/O40
I/O44
I/O45
I/O46
DONE53
CCLK73
PGM55
I/O47
O/M130
O/TDO75
I/M032
I/M234
I/O/A16/PGCK113
I/O/A1714
I/O/A83
I/O/A94
I/O/A105
I/O/A116
I/O/A127
I/O/A138
I/O/A149
I/O/A15/SGCK110
I/O/A0/WS77
I/O/A1/PGCK478
I/O/A2/CS179
I/O/A380
I/O/A481
I/O/A582
I/O/A683
I/O/A784
I/O48
I/O49
I/O50
I/O62
I/O68
I/O/D0/DIN71
I/O/D169
I/O/D267
I/O/D365
I/O/D461
I/O/D559
I/O/D658
I/O/D756
I/O/CS060
I/O/DOUT/SGCK472
I/O/HDC36
I/O/INIT41
I/O/LDC37
I/O/PGCK235
I/O/PGCK357
I/O/RDY/BUSY/RCLK70
I/O/RS66
I/O/SGCK229
I/O/SGCK351
I/O/TCK16
I/O/TDI15
I/O/TMS17
A23A22
A21A20
R/W
ASDTACK
C E
CS0CS6
CS2
CS5CS1 CS4
CS3
CS7
EPROM
AMD AM27C512 EPROM 28 pin DIP 64K x 8-bit Using two chips in
order to obtain a 16-bit connection.
1 chip for low byte and 1 chip for high byte.
EPROM SchematicData Line
FPGA
Address LineU2
27512
A010
A19
A28
A37
A46
A55
A64
A73
A825
A924
A1021
A1123
A122
A1326
CE20 OE/VPP22
A1427
VCC28
A151
O011
O112
O213
O315
O416
O517
O618
O719
U3
27512
A010
A19
A28
A37
A46
A55
A64
A73
A825
A924
A1021
A1123
A122
A1326
CE20 OE/VPP22
A1427
VCC28
A151
O011
O112
O213
O315
O416
O517
O618
O719
SRAM
Samsung K6T4008C1B SRAM 32 pin DIP 512K x 8 bit Using two chips in
order to obtain a 16-bit connection.
1 chip for low byte and 1 chip for high byte.
SRAM Schematic
U3
KM681000
A012
A111
A210
A39
A48
A57
A66
A75
A827
A926
A1023
A1125
A124
A1328
A143
A1531
A162
D113
D214
D315
D417
D518
D619
D720
D821
VCC32
OE24
WE29
CS122
CS230
U4
KM681000
A012
A111
A210
A39
A48
A57
A66
A75
A827
A926
A1023
A1125
A124
A1328
A143
A1531
A162
D113
D214
D315
D417
D518
D619
D720
D821
VCC32
OE24
WE29
CS122
CS230
FPGA
Address Line
Data Line
LCD Screen
Optrex DMC20434N LCD 20 characters x 4
lines 5 x 8 dots per
character 5V DC operation Communicates
with processor via the data bus
Keypad
Grayhill Series 96 4x4 Keypad 4x4 Keyboard with
easily customized legends.
Uses a matrix circuitry. 1,000,000 operations
per button. Compatible with high
resistance logic inputs. Uses the 74922
decoder.
Bill Acceptor
MARS LE3000 Bill Acceptor Switch selectable for $1,
$2, $5, $10, $20, $50, and $100 bill acceptance.
Magazine can hold 400 bills.
65 Watts at 24 VAC, 60 Hz
Uses pulses to designate bill denomination.
Flash Diagnostic Code LEDs.
Pumps
Trico Universal Washer Pump Variable Voltage
3V-12V DC Variable Speed
Depending on voltage
On or off with power
Memory Mapping $000000 – EPROM $100000 – SRAM $200000 – LCD Screen $300000 – Keypad/Decoder (74922) $400000 – Pumps (Using a latch) $500000 – Bill Acceptor (MARS LE3000) $600000 – Barcode Reader $700000 – 16550 Serial Port (If needed)
User Interface SoftwareMain(){
Idle() {
Output to LCD “BUY A DRINK ADMIN MENU”
Wait for keypad hitIf “buy drink” selected
Sale_mode( )If “Admin menu” selected
Admin_mode( )} }
Sale Modesale_mode()
{
menu_load()
scans inventory
loads menu
select_drink()
menu is printed to LCD screen
user scrolls down menu and selects drink
user selects size
request_payment()
(only if payment mode is enabled)
Output to LCD “INSERT CASH
ENTER PIN”
User selects payment method, pays
pour_drink()
Output to LCD “THANK YOU
HIT ANY KEY WHEN READY”
User hits key, drink is poured
Loop back to main
}
Administrator ModeAdmin_mode(){
select_option()output to LCD “LOAD ALCOHOL/MIXERS
PIN ACCOUNTS PAYMENT MODE
EXIT ADMIN. MODE”User selects option
Load_alcohol()
Use bar code reader to scan bottle barcodeIf no barcode, scroll through list of alcohols/mixers
Pin_account()Output to LCD “LOAD NEW PIN
MODIFY PINS”If user wants to load a new pin:
Enter 4 digit pinEnter number of credits
If user wants to modify existing pinsScroll through a list of pinsSelect proper pin, modify credits/delete
Payment_mode()
Output to LCD “ CASH ONLY PIN ACCOUNTS CASH/PINS ON THE HOUSE”
User selects payment typeLoop back to select_option()}
Parts list Embedded System Hardware
Motorola 68HC000 Two AMD AM27C512 EPROMS Two Samsung K6T4008C1B SRAMs One Xilinx XCS10 FPGA Five 74HC245 Drivers Many Analog Components
(resistors, capacitors, etc) 8 MHZ clock User Interface Components
DMC20434N LCD screen Barcode Reader Wand Grayhill Series 96 4x4 Keypad MARS LE3000 Bill Acceptor
Frame Hardware Wooden Cube 3.5’ x 2’ x 2’ with
2”x4” studs 6 feet plastic tubing 5/16”
diameter Tubing connectors Plexiglass covering for all sides 6 wiper fluid pumps
Current Progress Tested the solenoid valve idea and
decided it was unfeasible. Tested the pump idea and verified
the feasibility. Started wire-wrapping the proto-
board. Verified that the processor and
reset switch are working properly.
Solenoid Valve Test Built a test setup to
determine the feasibility of using the one-valve and two-valve systems.
Found that both systems had too much vacuum pressure to produce accurate liquid dispensing.
Pump Test Built a test set-up to
verify that a windshield washer pump will give us accurate pours.
Determined that the pumps will work in our system.
At 4V input voltage, one shot takes 7 seconds to pour.
At 6V input voltage, 8 oz. Of mixer takes 17 seconds to pour.
Proto Board
Processor and Reset Switch Test Hooked up our proto
board to the logic analyzer.
Tested that the stack pointer and program counter were working properly.
Verified that the reset switch was working.
Milestone goals Milestone 1
Rough Draft of Code All Hardware hooked up Bill Accepter/LCD screen/Scanner
wired up Milestone 2
Prototype box Working code
Current schedule
Division of Labor Programming: Heather and Andrew Bill Acceptor/Scanner/LCD screen: Pezh
and Andrew EPROM/SRAM/FPGA: Mike and Heather Pumps: Taymoor and Mike Building the LUSH exterior: Pezh and
Andrew Testing: Everyone User Manual: Everyone
Questions