Build | Fix | Re-use

Arduino Powered Shotbot

This Arduino Pump Tutorial is known as the ShotBot Project, demonstrating an easy way to build a simple shot pouring robot. Using two RobotGeek Pumping stations and some quick code to create a dual shot pouring robot. This project uses buttons to trigger the pouring as a basic example, but the buttons could be replaced with more advanced sensors, such as switches, light sensors, or IR sensors. You can follow the directions here, or find this project on the RobotGeek Learn site in two parts: The RobotGeek Pumping Station Assembly Guide, and the Arduino Pump Tutorial.


Step 1: Project Parts List

The following parts are recommended if you’d like to build as is in this guide. The idea of using a two separate types of button presses to activate a pump via relay in an arduino environment is applicable to other sets of parts, but the parts listed here will guarantee success.


Step 2: Wiring the Pumps



You can follow along in the RobotGeek Pumping Station Assembly Guide for this step.

Each pump will require its own power source, either by way of a single 6V Power Supply hooked to each, or by way of a 6V Power Supply with a Power Squid, splitting a single wall wart off to power multiple devices.

Pay attention to the wiring diagram above. We will be using the Normally Open (NO) side of the relay for regular operation. This means that the state of the circuit is broken, requiring that you activate the relay to close the circuit, activating the pump.


Step 3: Wiring the Project



You can find this information in the Arduino Pump Tutorial on the RobotGeek Learn site.

Device Sensor Shield Port
Pumping Station 1 Digital Pin 2
Pumping Station 2 Digital Pin 4
RobotGeek Push Button 1 Digital Pin 7
RobotGeek Push Button 2 Digital Pin 8

Not too hard to wire once you have the pumps assembled with their respective power supply, relay, and priming buttons. We recommend using the RobotGeek Sensor Shield with this project to keep the wiring clean, though it can be done with a breadboard with some effort and plenty of jumper cables.


Step 4: Hook up your tubing


Liquid moves out of the center tube, in from the tube on the edge. Place your input tube in the drink you would like to serve, and make the output tube into a spout that you can place a drink cup under to deliver the shot!


Step 5: ShotBot Code

You can download the code sketch here:

Mind the lines:
//Time for pumping stations to turn on in milliseconds
#define PUMP_1_TIME 2500
#define PUMP_2_TIME 2500
2500 is the time in milliseconds that the pump will be activated, determining the amount of liquid in your shot. You might need to fine tune this for the perfect shot with your pumps.

Upload your code, get some liquid, and start pressing buttons!

Leave a Reply