Flipper in action:
One design goal of the robot were to use as little hardware as possible per ingredient while being able to have a two digit number of ingredients. As the robot is built in a semi circle it houses only 15 ingredients. But it could be built with a more complete arc with up to 24 ingredients for the full circle.
The second design goal was to actually cool the drink and not just to pour liquids into a glass. I had tried pouring the cocktail ingredients over ice cube some years ago. This works better as one might think because the ice is to some extend self cleaning. When in contact with liquids containing sugar or - even more so - alcohol the ice melts creating even more cold and cleaning the surface. The cocktail bot uses a huge funnel filled with ice cubes to both catch the poured liquids and cooling them. To keep the ice clean it would be better it it was stacked higher and narrower to have more of the ice's surface get in contact and be cleaned up by the spirits.
The top half of the robot is created with the help of Boxes.py and a laser cutter. As it consists of many identical parts it lends itself to be CNC cut. The base is build by hand. The white parts are particle board and the pillars in front are made from left over acrylic tubes. In the left pillar you can see the motor for the ice dispenser that is not working yet. There is room in the back for a big plastic box that will store the ice. I will return to this sub project at some later point.
The arm on top is basically just a box housing the two steppers and the electronics. One stepper directly drives the box around by acting against fixed 200 teeth gear. The second stepper moves the arm with rack and pinion that is geared down 3:1. All gears are laser cut from (birch) plywood as all the other parts of the mechanics.
The steppers are controlled by an Arduino Nano running Grbl. It thinks that the bot is rectangular. So the rotary axis uses degrees instead of millimeters without grbl knowing. The Arduino is currently directly hooked up to a Laptop via USB. In the long run this is to be replaced by a tablet. The laptop run a smallish Python program that offers a simply web interface with Flask and stores recipes and the ingredients mounted in a sqlite database.