Home     Contact     Projects     Experiments     Circuits     Theory     BLOG     PIC Tutorials     Time for Science     RSS     Terms of services     Privacy policy  
 Home      Projects     Experiments     Circuits     Theory     BLOG     PIC Tutorials     Time for Science   

24 May 2010
Author: Giorgos Lazaridis
Instant Cold Coffee Machine

Worklog - More boards, more electronics... (March 21 2011)

So, after many hours of mind job, i came up with the final (hopefully) architecture of the system. I really did not expect it to be so complicated. Although this is not the most complicated project that i have design, it is certainly the most complicated project that i will finally make :D. Here is the architecture (click image to enlarge):

The CPU will be a simple board with a PIC 16F1937 and multiple connectors for the other modules to connect. The CPU will be in charge to control all other modules.

The LCD with the GPU board is based on my previous experiment titled "Reverse engineering an LCD", It will receive serial commands from the CPU. The commands will be converted into 8-bit parallel before they are loaded onto the PIC.

The UI is the User Interface. It will control the touch buttons and the LEDs required. The UI module will be connected to the CPU with a bi-directional SPI interface, using the internal MSSP module of the PICs. Meanwhile, i will test the coffee maker without this module, and i will use the 4 wires as direct buttons.

For the ICSP, i will use the 3 pins required, and because one of these pins is the MCLR, i will have a microswitch for reset as well.

Originally, i had the relay card and the digital output card as 2 different modules. But then,i decided to make one unified module that has both 6 relays and 10 digital outputs.

The Digital Input module is the most simple one. It has a PISO shift register made with the 74LS166. Both this module and the Output module, are cascadable. Multiple modules can be connected in series to extend I/O ports.

The 4 motor controllers for the mechanical modules are interfaced to the CPU in 2 different ways: The I/O ports of the modules that require either a pulse signal (like for example the clock input) or it has a reference signal (like for example the Zero Set), are directly interfaced to the CPU for increased precision and controllability. All other I/O ports are interfaced through the digital I/O modules. The orange labels indicate a signal from the output module, while the green label indicates a signal from the input module.

There are 9 remaining pins on the PIC. Instead of leaving them unrouted, i will route them to some auxiliary connectors for future usage.

As far as the ICD module is concerned, this is something that i will explain in future pages.

The CPU circuit schematic diagram

To make this think work, there are some modules that are absolutely essential to operate. These are the 4 motor controllers (which are made already), the CPU, the input and the output modules. So, i need to make the CPU and the I/O modules first, starting with the CPU. Here is the schematic diagram: (click to enlarge)

I use bus wires instead of connection wires to avoid the mess. Near each bus wire i have the name of the bus. The CPU has only the main microcontroller (PIC 16F1937) which will eventually control all other modules. Therefore, the board has only connectors for the peripheral modules. It took me a lot of time to decide which port will be used for each connector pin, to avoid a very complicated PCB.

The Input Card schematic diagram

The Input Card will have 8 digital inputs. A 74LS166 8-bit parallel to serial shift register will be used. Here is the schematic:

I wired also the SER pin of the chip. This way, if i need more than 8 inputs, i can cascade more of these cards in series with this pin. All inputs are pulled high with the RN1 resistor network.

The Output Card schematic diagram

Originally, the relay card and the digital output card were two different PCBs, but i finally decided to make them one single PCB. That is because, i need more digital outputs than relay outputs. So, i will use 16-bits to control the outputs, 6 of which are for the relays and the other 10 for the transistor outputs. Here is the schematic diagram: (click to enlarge)

I use 2 4094 CMOS serial to parallel shift registers to interface the card with the CPU. The CPU sends the data in 16-bit serial. 6 of these bits are interfaced through a ULN2003 to the 6 relays. I decided to use only 2 relays with NO and NC contacts. From the other 4 relays i utilize only the NO contacts. The other 10 bits are driven to 10 transistors and those transistors finally are driven to 10 digital outputs with pull-down resistors. All outputs are equipped with LEDs.

The eagle PCB files

Here are the sch files from the above 3 schematics. I used eagle PCB lite to make them:

 Coffee maker - CPU circuit schematic - V1.0

 Coffee maker - Input Card circuit schematic - V1.0

 Coffee maker - Output Card circuit schematic - V1.0



  Email (shall not be published)


Notify me of new posts via email

Write your comments below:
BEFORE you post a comment:You are welcome to comment for corrections and suggestions on this page. But if you have questions please use the forum instead to post it. Thank you.


  • At 3 July 2015, 6:23:11 user Alex wrote:   [reply @ Alex]
    • Still watching this space every other month only to find the project still not being updated. Hoping to see some progress soon. :)

  • At 28 March 2014, 3:28:25 user Nikos wrote:   [reply @ Nikos]
    • re si, nomizo the "redux" version should have an optional milk stage too for those of us who prefer it a bit easier to drink :)

      subscribed on YT, keep up the good work!

  • At 18 January 2014, 7:31:43 user Giorgos Lazaridis wrote:   [reply @ Giorgos Lazaridis]
    • @Alex In Greece during the Ancient times there was this saying: "Oyden monimoteron ek toy prosorinoy" which means that "nothing is more permanent than the temporary".
      But now that you said that again, i think i should restart this project, shouldn't I? Hopefully within this year.

  • At 17 January 2014, 19:59:52 user Alex wrote:   [reply @ Alex]
    • Dude what happened with this project, there hasn't been any updates for quite some time now. Looking forward to see the end result :)

  • At 13 November 2013, 17:56:48 user Robert wrote:   [reply @ Robert]
    • This is a great invention! I especially like the straw delivery, it is perfect. how wonderfully useless! you are a genious!

  • At 16 September 2013, 15:38:37 user praveen wrote:   [reply @ praveen]
    • excellent job......

  • At 14 June 2013, 17:45:35 user Amir wrote:   [reply @ Amir]
    • Hi ,

      Great work . From where did you buy the worm gear extruder ? Can you give me a website for that .

      Many thanks

  • At 29 March 2012, 21:03:02 user alex wrote:   [reply @ alex]
    • Hi you have a nice coffee Instant Cold Coffee Machine but you wanted to use a fridge for cold water but no water cooler that you use waron also in coffee automaaten is where you can get I know old water out of if not the name but it can look for you we have that built-in devices greetings alex
      mail alex.heijkens@kpnmail.nl

  • At 6 March 2012, 10:25:13 user Giorgos Lazaridis wrote:   [reply @ Giorgos Lazaridis]
    • @steve salvaged from an old photo copier. it was used to push the toner

  • At 5 March 2012, 13:56:29 user steve wrote:   [reply @ steve]
    • Where did you found the worm gear for the sugar and coffee supply?And awesome project.Good Job

  • At 9 January 2012, 9:40:16 user qwerty wrote:   [reply @ qwerty]
    • Tromeri i frapediera sou.bravo sou

  • At 24 August 2011, 11:38:08 user a.mira@vmcogulf.com wrote:   [reply @ a.mira@vmcogulf.com]
    • niccccccce i like this machine :) did you manufacuter it ???

  • At 26 July 2011, 17:53:16 user Sergio wrote:   [reply @ Sergio]
    • Excelent Job! Very good videos an explanations.


      Segio from Argentina

  • At 24 May 2011, 15:00:24 user Kammenos wrote:   [reply @ Kammenos]
    • @Fung no of course not. i will have different programs for different sizes. there are 4 sizes of cups (in respect to the volume)

  • At 24 May 2011, 14:24:55 user Fung wrote:   [reply @ Fung]
    • Do the cups which being used are restricted to the same size and same volume? (ie other cups are not allowed?)

  • At 14 May 2011, 19:27:58 user Ivan wrote:   [reply @ Ivan]
    • Great work.....

  • At 27 April 2011, 4:54:19 user Kammenos wrote:   [reply @ Kammenos]
    • @Dimitris it was part of an old photo copier, used to push the toner.

  • At 26 April 2011, 20:23:01 user Dimitris wrote:   [reply @ Dimitris]
    • Congratulations man!
      Awesome machine!
      Can you tell me, where did you find the 'worm' thing
      for the dispenser mechanisms?

  • At 27 March 2011, 6:16:30 user Kammenos wrote:   [reply @ Kammenos]
    • Hello George. Regarding the elements, these are hardware wiring to indicate wire connections between the modules. The orange boxes indicate wires coming from the output module (Digital Output Module - DOM), and the green indicate wires going to the Digital Input Modules. Notice that for example, from module "Rotary table", 4 wires comes out, then 2 of them arrive from the DOM and 2 goes to the CPU.
      As far as the diode is concerned, this is only for polarity protection. It is the same as the D2. But you are right, It is not necessary and i may not put it after all.

  • At 27 March 2011, 5:57:10 user George Hadley wrote:   [reply @ George Hadley]
    • I think your architecture diagram (first figure) is slightly confusing, because it seems to include elements of code (the elements above the CPU) with hardware elements. Ideally, you would have a system-level block diagram detailing your hardware and a separate functional block diagram to describe your code. If I'm misreading your architecture diagram, feel free to ignore this.

      Secondly, looking at your reset circuitry, I see you have a 1N4148 diode between your microcontroller pin and your ICSP header (pin 1). I'm fairly certain this diode is not necessary, so you may want to double check that.


  • At 25 March 2011, 11:45:30 user Fung wrote:   [reply @ Fung]
    • Why does PIC16F1937 have 2 Vdd's and 2 Vss's?

  • At 12 March 2011, 16:40:13 user de.das.dude wrote:   [reply @ de.das.dude]
    • you are sooooo awesome!!!

      there are no words to describe your awesomeness!

      i hope i can be as awesome as you!

  • At 25 May 2010, 1:53:39 user Tom Hargrave wrote:   [reply @ Tom Hargrave]
    • Frappé has become very popular here in the States. The difference is we use fresh coffee grounds to make coffee then we chill the hot coffee. But we tend to make more fresh coffee here while Europeans tend to make more instant coffee.

      To serve we pour some in a glass and add chipped ice.

      We also tend to add flavors to our frappé in the States. We can't leave a good thing alone - we have to tinker with it to make it more sellable.

    reddit this Reddit this

     HOT in heaven!

    NEW in heaven!

    New Theory: AC electric motor working principle

     Contact     Forum     Projects     Experiments     Circuits     Theory     BLOG     PIC Tutorials     Time for Science     RSS   

    Site design: Giorgos Lazaridis
    © Copyright 2008
    Please read the Terms of services and the Privacy policy