Difference between revisions of "S17: Wake up Barista"

From Embedded Systems Learning Academy
Jump to: navigation, search
(Hardware Design)
(Design & Implementation)
Line 144: Line 144:
 
Fig.1 Block Diagram of Wake Up Barista
 
Fig.1 Block Diagram of Wake Up Barista
  
[[File:block_diagram.png|400px]]
+
[[File:Schem.png|500px]]
  
 
Fig.2 Schematic of Wake Up Barista
 
Fig.2 Schematic of Wake Up Barista

Revision as of 03:26, 25 May 2017

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 for you right away when you leave your bed! This device will heating and brewing the coffee automatically when the alarm clock begins to vibrate and ring. Enjoy the hot and fresh coffee 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 tea.
For the alarm clock part, basically, you need to set the alarm clock time through our system, 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 and also using a GPIO pin to control some LED lights to help you wake up under a warm and sweet environment. In addition, the system support one other GPIO pin to set as a snooze key to push 10 minutes delay, and 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 10 minutes before alarm set time, so that the drink will be ready when the setting time is up. In side the barista, we are using many high level functions and sensors to control the whole system, includes high efficiency heater, water pump, vibrator, etc. Even if you choose to use snooze key multiple time, the system has a heat preserve equipment to keep the drink warm all the time.

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/4 Design Schematics & build up prototype Completed 4/4
4 4/5 4/11 Refine prototype & Start to order required components In process
5 4/12 4/18 Testing and Debug Plan
6 4/19 4/25 Finish project report Plan
7 4/26 5/2 Find project presentation Plan
8 5/3 End Ready for Demo Plan

Parts List & Cost

Number Part Name Cost
1 Heater N/A
2 Water pump N/A
3 LCD Module $19.95
4 Buzzer N/A
5 vibrator N/A
6 Relay Module $10

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.

Block diagram.png

Fig.1 Block Diagram of Wake Up Barista

Schem.png

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

In this section, you can describe how your hardware communicates, such as which BUSes used. You can discuss your driver implementation here, such that the Software Design section is isolated to talk about high level workings rather than inner working of your project.

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.