What
There are three common designs for cocktail mixing machines on the web. The first use so-called peristaltic pumps for each bottle. They pump the liquid into a glass. The pumps either have a very low flow rate or are fairly expensive. Other designs use dispensers commonly seen in bars. They are attached to the bottles and the bottles are then hung upside down. The dispensers pour a fixed amount of liquid, usually 2cl or 4cl, when a glass is pushed against them from below. In such cocktail mixing machines, mechanics are required to move a glass below the dispensers and push upward against them. This can either be achieved by a rotating plate that rotates the glass under the bottles. Or by a linear slide. For my design I have chosen the third method: dispensers and the linear sliding approach. To me this approach is visually appealing and also cleaner as the liquid never touches any part of the machine except for the dispensers. Apart from that it can be easily scaled up or down depending on your requirements, as we will be using a belt drive for the linear slide and we can easily extend this. For most cocktails quite a lot of bottles and dispensers are required. This design does not scale well: A Singapore Sling for instance requires eight different ingredients. Some of which should normally be cooled. A proper Caipirinha needs ice and lemon slices which can’t be dispensed. A Tequila Sunrise requires Orange Juice. Orange Juice comes in ugly Tetra Paks. Perhaps a mixed approach with peristaltic pumps for visually less appealing ingredients or ingredients that need to be cooled is a good idea.
When
The cocktail machine was originally intended for a party, but didn’t get finished on time.
Background
In order to get the cocktail machine working in the short time frame I used a lot of components I already had and tried to cut as many corners as possible.
- geared stepper motors from a very early attempt at CNC milling
- the stepper motor controller board (Arduino UNO + GCode shield) from my CNC mill with a standard ATX computer power supply
- rooted Android Tablet running CyanogenMod, QPython, the Python-Flask micro web framework and serial port access via the QPython SL4A Android bindings to easily achieve a touchscreen UI. The UI sends GCode CNC milling commands via an USB on-the-go adapter straight to the Arduino without the need to write a custom firmware or design a protocol on the Arduino.
- industry standard aluminium profiles and right-angle brackets to build a stable light-weight frame quickly and be able to move components ever so slightly to make adjustments and reduce tension on the materials.
- linear ball bearings running on 16mm diameter aluminium tubes, terminated with hose clamps.
- very large hose clamps to fix stepper motors to the aluminium profiles
- some small hand-made wooden pieces to attach components
- and bar dispensers ordered from the web
How
The electronics and control work very similarly to a CNC mill. It uses the same motor driver board and receives the same G-Code commands as my CNC mill. The Python User-Interface sends different G-Code files to the motor driver depending the selected cocktail.
Progress
The machine was disassembled a few weeks after the build. It requires too much space to set up and the system was too slow. I might revisit this experiment some day when I have a sizable basement.