F16: I2Coffee

From Embedded Systems Learning Academy
Revision as of 20:14, 20 December 2016 by 146 user7 (talk | contribs) (Hardware Design)

Jump to: navigation, search

Abstract

UART-Coffee is a coffee maker machine that allows its user to pick from different types of coffee powders. UART-Coffee will also allow the users to choose their ideal coffee temperature.

Objectives & Introduction

Show list of your objectives. This section includes the high level details of your project. You can write about the various sensors or peripherals you used to get your project completed.

Team Members & Responsibilities

  • Man Hin Wong
  • Emil: wongmanhin@msn.com


  • Mauricio Rivera
  • Email: mauricio.rivera1993@yahoo.com


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# Date Task Actual
1 11/4 Finalize schedule and materials. Done
2 11/11 Design schematic with slave and master board. Done
3 11/18 Test code and enhance it. Done
4 11/25 Debug and enhance code. Done
5 12/2 Start building project. Done
6 12/9 Test prototype. Pending.
7 12/16 Finalize project and demo. Pending.

Parts List & Cost

Give a simple list of the cost of your project broken down by components. Do not write long stories here.

Item Quantity Cost (1)
SJSU One Board 2 $60
5V DC Motors 2 $2
5V Servos 2 $3
Shoe Box 1 $0
12V Fan 1 $2
Transistor (ST953) 2 $1

Design & Implementation

Hardware Design

Block diagram

File:CoffeeBlockDiagram.PNG
Figure 1. i2coffee block diagram

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.

The coffee making machine uses UARTto establish communication between two boards using their Tx and Rx pins. The SJSUOne receiver board is also used to control the different I/O components used in this project shown in the list below. Since the boards can only supply 3.3V, a transistor connected to 5V was used so that the different I/O components can receive their appropriate voltage.

Hardware Used

  • Transistor
  • Resistors
  • 5v DC Motor
  • 12V Fan
  • 5v Step Motor
  • Water Valve
  • Bread Board
  • Jumper Cables



Hardware Pin Out

I/O Pin(s) Name
Step Motor 1 P0.29, P0.30 GPIO
Step Motor 2 P1.22, P1.23 GPIO
Cooling Fan P0.1 GPIO
DC Motor P0.0 GPIO

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.

The software of this machine is designed to interact with the user so that the user's needs are met. The buttons on the board are programmed to control the options for coffee beans, temperature, and the mixing.





Implementation

Inserting a transistor between the SJSUOne board and the I/O component helped to control the component and activate it when needed.

Motors and Transistor Interface

File:I2coffeeTransistorMotor.PNG
Figure 2. Transistors and Motors connected.

Connecting Transitor to I/O component

  1. Connect power supply (5V) to bread board
  2. Emmitter is connected to resistor (<200 Ohms)
  3. Resistor connects to board's GPIO pin
  4. Base pin Connected to component's ground
  5. Component's Vcc connected to power supply
  6. Collector pin goes to power supply's ground














Testing & Technical Challenges

My Issue #1

Some of the GPIO Pins cannot support enough current or voltage for our I/O devices. For example, when wanting to control a motor by the board, we couldn't get it done by simply connecting directly to the board because the pin supplies 3.3V and 0.1A.

Solution: Connecting a transistor between the motor and the SJSUOne board allowed the board to have control over the device and activate it when needed.

My Issue #2

Our coffee machine encountered a problem when wanting the coffee powder to slide down to the cup. This did not let the powder get to the cup, so our design could not function correctly.

Solution: We tilted our design to a 45-degree angle to that our ramp is steep enough to get the coffee powder into the cup.

My Issue #3

We wanted to have a water control system so that our coffee machine can provide water. Adding liquids to the design can be dangerous because it can cause a short circuit and mess the entire project up.

Solution: We added a water valve to the opposite side of the circuit. This allowed enough space between any wire and the water.

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

We would like to thank Preet and Professor Ozemek for helping us throughout the class. Also, thank Emmet and Amy for supporting us during the days that we worked on this project. Finally, we want to thank professor Harry Li for allowing us to use Engr 268 as a working space.

References Used

List any references used in project.

Appendix

You can list the references you used.