Difference between revisions of "S17: Wake up Barista"
Proj user4 (talk | contribs) (→Hardware Interface) |
Proj user4 (talk | contribs) (→Hardware Interface) |
||
Line 344: | Line 344: | ||
'''PWM Interface:''' | '''PWM Interface:''' | ||
+ | |||
+ | PWM is a digit output to emulate analog output with duty cycle. | ||
{| class="wikitable" | {| class="wikitable" |
Revision as of 05:17, 25 May 2017
Contents
Grading Criteria
- How well is Software & Hardware Design described?
- How well can this report be used to reproduce this project?
- Code Quality
- Overall Report Quality:
- Software Block Diagrams
- Hardware Block Diagrams
- Schematic Quality
- Quality of technical challenges and solutions adopted.
Wake up Barista
Wake up Barista
Abstract
When you have studied all night and need to attend a meeting in 9:00am next morning, you are running out of time to get anything done but have to get your caffeine fixed. Is there anything better than wake up with coffee aroma fills the air surrounding you? We want to introduce our product, your personal Wake Up Barista. A smart coffee maker embedded with alarm clock. Brewing the coffee or other hot drink for you right away when you jump out from your bed! This device will heating and brewing the coffee or other hot drink automatically when the alarm clock begins to buzz. Enjoy the hot and fresh drink when you just open your eyes, also take a deep breath with the tempting smell, you will love it for sure!
Objectives & Introduction
- Our product has two major parts. First part is a modern alarm clock; secondly, it is able to make delicious coffee or other hot drink such as tea.
- For the alarm clock part, basically, you need to set the alarm clock time through our system by using the push button switches. The real time clock inside the SJ One board will record the data you have set and start the system. When the time reaches the setting time, SJ One board is using a PWM pin to control a singing speaker device to help you wake up under a warm and sweet environment. There is another GPIO pin is set as a reset key. Moreover, we are using an small but great LCD screen to show the needed data. These are all primary functions and theory of alarm clock part.
- For the barista side, it is relates inseparably with the alarm clock part we have, and it will start to produce hot drink 4 minutes before alarm set time, so that the drink will be ready when the setting time is up. Inside the barista, we are using many high level functions and sensors to control the whole system, includes high efficiency heater, water pump, buzzer, etc.
Team Members & Responsibilities
- Chien Wei Lan
- Mingyang Wang
- Lin Zheng
- Zhixuan Zhou
Schedule
Show a simple table or figures that show your scheduled as planned before you started working on the project. Then in another table column, write down the actual schedule so that readers can see the planned vs. actual goals. The point of the schedule is for readers to assess how to pace themselves if they are doing a similar project.
Week# | Start Date | End Date | Task | Status | Actual Completion Date |
---|---|---|---|---|---|
1 | 3/19 | 3/21 | Finalized Schedule and materials | Completed | 3/21 |
2 | 3/22 | 3/28 | Test water pump, timer, and heater | Completed | 3/28 |
3 | 3/29 | 4/10 | Design Schematics & build up prototype | Completed | 4/10 |
4 | 4/5 | 4/20 | Refine prototype & Start to order required components | Completed | 4/20 |
5 | 4/20 | 5/18 | Testing and Debug | Completed | 5/18 |
6 | 4/19 | 5/23 | Writing project report | Completed | 5/23 |
7 | 5/15 | 5/20 | Find project preparation | Completed | 5/20 |
8 | 5/20 | 5/24 | Ready for Demo | Completed | 5/23 |
Parts List & Cost
Number | Part Name | Quantity | Parts Cost |
---|---|---|---|
1 | Heater & Water Pump | 1 | $29.99 |
2 | Push Button Switch | 4 | $3.99 |
3 | LCD Module | 1 | $19.95 |
4 | Buzzer | 1 | $9.95 |
5 | Relay Module | 1 | $6.68 |
6 | PVC Board | 1 | $9.88 |
7 | Matel Stands | 50 | $7.69 |
8 | Jumper Wires | 18 | $2.69 |
9 | Power Strip | 1 | $2.88 |
10 | |||
11 |
Design & Implementation
The design section can go over your hardware and software design. Organize this section using sub-sections that go over your design and implementation.
Hardware Design
We use SJ one board as LPC1658 arm cortext-M microcontroller as the project platform, with built-in RTC module and external LCD module, we can show the time on the LCD and set up the alarm clock on it. By manipulating two GPIO pins, one is used to control the relay to turn the heater on, the other one is used to control the water pump for dripping hot water. The overall system block diagram and schematic as below.
Fig.1 Block Diagram of Wake Up Barista
Fig.2 Schematic of Wake Up Barista
In this project, we use a SPI interface LCD module. To connect the LCD with SJ one board. You have to select specific SPI ports as MOSI, SCK, SSEL(CS), RST, RS(DS), and of course VCC and GND. This LCD module can be operated from 3.3V to 5V(brighter). Choose two GPIO to control the Relay module and PWM port for activate the buzzer.
TABLE.I Pin assignment
SJ one board | Port | LCD | Port | Relay | Water Pump | Heater | Buzzer |
---|---|---|---|---|---|---|---|
MOSI1 | MOSI1 | MISO | 6 | ||||
SCK1 | SCK1 | SCK | 7 | ||||
CS | P1.19 | CS | 3 | ||||
RST | P1.20 | RST | 4 | ||||
RS | P1.22 | D/C | 5 | ||||
3V3 | VCC | 1 | VCC | ||||
GND | GND | 2 | RELAY GND | GND | |||
PWM0 | PWM0 | Buzzer PWM | |||||
5V | RELAY 5V | ||||||
RELAYCTL1 | WP_CTL | WP_CTL | |||||
RELAYCTL2 | HTR_CTL | HTR_CTL |
Hardware Interface
SPI Interface:
We use SPI interface LCD module to implement the alarm clock. SPI is a simple bus, exchange a byte via MOSI and MISO. CS pin is used for control slave device. The SPI pin assignment as below.
SJ one board | Port | LCD | Port |
---|---|---|---|
MOSI1 | MOSI1 | MISO | 6 |
SCK1 | SCK1 | SCK | 7 |
CS | P1.19 | CS | 3 |
RST | P1.20 | RST | 4 |
RS | P1.22 | D/C | 5 |
3V3 | VCC | 1 | |
GND | GND | 2 |
PWM Interface:
PWM is a digit output to emulate analog output with duty cycle.
SJ one board | Port | Buzzer | Port |
---|---|---|---|
PWM0 | PWM0 | PWM | 1 |
GPIO interface:
Software Design
Show your software design. For example, if you are designing an MP3 Player, show the tasks that you are using, and what they are doing at a high level. Do not show the details of the code. For example, do not show exact code, but you may show psuedocode and fragments of code. Keep in mind that you are showing DESIGN of your software, not the inner workings of it.
Implementation
This section includes implementation, but again, not the details, just the high level. For example, you can list the steps it takes to communicate over a sensor, or the steps needed to write a page of memory onto SPI Flash. You can include sub-sections for each of your component implementation.
Testing & Technical Challenges
- 1. Control the heater and water pump.
- 2. Work on RTC timer on SJ one Board.
- 3. Control the speaker and vibrator as alarm clock.
- 4. Display the clock time with LCD module
My Issue #1
Discuss the issue and resolution.
Conclusion
Conclude your project here. You can recap your testing and problems. You should address the "so what" part here to indicate what you ultimately learnt from this project. How has this project increased your knowledge?
Project Video
Upload a video of your project and post the link here.
Project Source Code
References
Acknowledgement
Any acknowledgement that you may wish to provide can be included here.
References Used
List any references used in project.
Appendix
You can list the references you used.