Download presentation
Presentation is loading. Please wait.
Published byEmory Adams Modified over 8 years ago
1
QuickBev Group 29: Phillip Nielsen & Michael Perreux TA: Braedon Salz ECE445 Spring 2016 May 4, 2016
2
Introduction Pay by volume beverage dispenser Order and pay for beverage on Android smartphone and submit via NFC to system which dispenses the exact amount
3
Objectives Eliminate waiting for simple beverage orders Prepayment via phone/NFC Supply monitoring for owners of dispenser
4
System Overview Hardware 12V DC Power Supply, 5V Voltage Regulator, 3.3V Voltage Regulator, WiFi Module, NFC Module, Pressure Sensor, Flow Meter, Solenoid Valve, ATMega328P-pu Microcontroller Smartphone with NFC running Android 4.4+ Software Microcontroller code Android Application code for processing order and handling NFC communication
5
Block Diagram
6
Schematic LEGEND: RED: Power -- GREEN: NFC -- GREY: Wi-Fi -- BLUE: Level Shifters – ORANGE: Pressure Sensor – PURPLE: Flow Meter – BROWN: Solenoid Valve and Relay – BLACK: Microcontroller
8
Power Supply (Main Idea) Purpose: convert 120V AC to 12V DC, 5V DC, & 3.3V DC Components have different voltage requirements 12V DC5V DC3.3V DC Solenoid ValveATMega328P-pu Microcontroller ESP8266 WiFi Module ElecHouse PN532 NFC Module Swissflow SF800 Flowmeter Honeywell 24PCDFG6G Pressure Sensor Table 1: Components grouped by required voltage
9
Power Supply (Schematic) Barrel Jack Connector 5V Voltage Regulator 3.3V Voltage Regulator 120V AC to 12V DC adapter connects to standard US outlet and barrel jack connector on our PCB LM7805 used for 5V Voltage Regulator LD1117V33 used for 3.3V Voltage Regulator
10
Microcontroller Code Flow
11
Microcontroller Integration Wireless Communication Requirement: Interface with Wi-Fi module to connect to server (Unsuccessful) Requirement: Interface with NFC module to connect to Phone (Success) Sensor IO Requirement: Read Pressure Sensor Data and send to Wi-Fi Module (Partial Success) Requirement: Read Flowmeter Data and process order correctly (Success) Requirement: Send open signals to Solenoid relay at correct times to start and stop the flow of liquid (Success)
12
Flow Meter – Measuring Volume Output
13
Utilizing Flow Meter Data Requirement: Flowmeter produces correct raw output for test flow outputs with accuracy to +/-%5 (SUCCESS: 5 Points) 1.Total milliliters of liquid dispensed reported by flowmeter 2.Interrupt is broken when desired amount of liquid is reached 3.Reports to Wi-Fi module of success/failure to dispense
14
Pressure Sensor – Detecting Empty CO2 Connected 24PCDFG6G Pressure Sensor output to the analog pins of ATmega328 Reads a value of 0 to 330 mV which is then mapped to the values of 0 – 30 psi in the microcontroller
15
Using Pressure Sensor Data Requirement: Pressure sensor produces correct raw output for test pressure outputs with accuracy to +/-5% (SUCCESS: 5 Points) – only partially working 1.Pressure data is checked on completion of each dispense 2.An interrupt is sent if reading indicates low pressure 3.Reports problem to server via Wi-Fi to send notification to Admin users
16
Solenoid Valve – Dispense Correctly Relay circuit provides 12V to the solenoid when it receives 5V output from ATmega328 Solenoid valve opens when it gets 12V from relay Requirement: Flow Valve opens with the correct amount of voltage excitation (SUCCESS: 5 Points)
17
PCB Sensor AttachmentsFlow Meter & Solenoid Valve
18
Level Shifting Circuit ATmega328’s TX and RX pins talk on 5V signals ESP8266’s TX and RX pins talk on 3.3V signals Requires Bi-directional operation
19
Wi-Fi – Server Communication Must be able to send data to and from the server Determine valid token and then find amount to dispense –HTTP GET quickbev.firebaseio.com/Orders/%2D[token]/processed.json –HTTP GET quickbev.firebaseio.com/Orders/%2D[token]/milliliters.json Update that transaction so that it is marked complete –HTTP PATCH -d {"processed":true} quickbev.firebaseio.com/Orders/%2D[token].json Requirement: Must be able to properly send and receive messages from the server (Partially Successful)
20
NFC Module Purpose: communication between smartphone and system Communicates with ATMega328P using I2C (SDA and SCL data lines) 13.56 MHz frequency Requirement: Must be able to properly send and receive messages from the phone (Success)
21
How it works: System & Smartphone Communication 1.System is actively sending SELECT command 2.Smartphone app passively detects this command when placed in proximity 3.Smartphone app sends data to system 4.System sends SET STATUS command to smartphone indicating data transfer complete
22
Android Application Purpose: User interface of our system Allows user to pay for and place an order Allows admin to monitor supplies
23
Android Application: Order Screen 1.User enters desired amount of beverage in the text box 2.User taps “process order” 3.Beverage request information is sent to database and a unique token is generated 4.User places smartphone near NFC reader 5.Token is sent to system via NFC 6.System dispenses beverage using token
24
Android Application: Admin Screen Data is pulled from our database and is automatically updated with each new order Displays: Number of orders processed Total volume dispensed in both mL and US Fl. Oz
26
Ethical Considerations System processes beverages for human consumption –Flow meter, solenoid valve, and tubing are all food safe User pays by volume for beverage –Flow meter is verified to be accurate so that users do not overpay and owners are correctly compensated System can be used to dispense alcoholic beverages in a commercial setting –Comply with local legislature by requiring human ID verification of age before usage of device –Supervise device users to ensure safety
27
Conclusions and Further Work Make the system more user friendly by adding a display with visual feedback Add gamification to the Android application to encourage return visits Design a case to house the components Shrink PCB design to be more compact
28
Thank you! Questions?
Similar presentations
© 2025 SlidePlayer.com Inc.
All rights reserved.