Introduction: Raspberry Pi Controller Automatic Drink Dispensing Robotic Bartender

Picture of Raspberry Pi Controller Automatic Drink Dispensing Robotic Bartender

This bartender uses pressurized bottles and solenoid valves controlled by a raspberry pi to dispense the beverages. The user can interact with the GUI on the pi to select their drink of choice, they will be prompted to add any required garnish, then they can put their cup under the spigot, and the correct mix of drinks and mixers will be dispensed into the cup.

This project was made for the Mechatronics class at Rowan University.

We originally planned to use peristaltic pumps to dispense the beverages, but they are expensive. We thought using the pressurized bottles was a new and innovative solution. However, several other instructables have been posted using this same method, and they have taken the concept much farther. Definitely check these out:

Step 1: Enclosure

Picture of Enclosure

When you build the enclosure, it can be as big or small as you need it to be. We made one large enough to hold five bottles. It is a five sided sort of half circle, with a bottle strapped to the outside of each side using bungee cord to hold the bottles tight to a v-channel. You should also put a cap on the top to mount all of the electronics, valves and hoses, and a spill tray on the bottom.

Step 2: Valves

Picture of Valves

We got valves from adafruit at the link below:

They are not food rated, so we probably shouldn't have used them. They were just super cheap. We did make food grade adapters to make the pipe thread small enough for the push connect fittings... which are also not food grade.

The tubing leading into and out of the bottles and valves is food grade, which is good! And zip tying the hoses together keeps them rigid enough to act as a spigot.

Step 3: Circuit

Picture of Circuit

The circuit uses the digital output pins on the Raspberry Pi do trigger an opto-isolator. This prevents the sensitive Raspberry Pi pins from coming in contact with the higher voltage solenoid side of the circuit. A diode across the solenoid is necessary to prevent damage to the N-FET from flyback voltage on closing. The circuit below is very similar to the circuit that we used.

Step 4: Program

Picture of Program

Python was used to program the GUI for the bartender because it’s simple and easy to use on the Raspberry Pi. The GUI consists of button boxes that contain The base for the GUI can be found at the link below

We edited to suit our own purposes but the basic idea is still intact. We also included our code and pictures in a zip folder. You need to make sure you have the PySerial and RPiGPIO libraries installed on your Pi. And I’m sorry for the lack of comments in the code.

The code that we used can be seen in the zip archive.