RobotGeek TeamWade Filewich
Published © CC BY-NC-SA

6-Shooter: Arduino Drink Mixing Station

Want to mix drinks with a push of a button? The 6-Shooter can mix and match combinations of 6 different drinks with a single pump!

IntermediateFull instructions provided4 hours10,898
6-Shooter: Arduino Drink Mixing Station

Things used in this project

Hardware components

RobotGeek Geekduino
RobotGeek Geekduino
×1
RobotGeek Sensor Shield
RobotGeek Sensor Shield
×1
RobotGeek Duino Mount
×1
RobotGeek Mega Workbench
×1
RobotGeek 4 Line I2C LCD Control Panel
×1
RobotGeek Drink Station
×1
RobotGeek NeoPixel Ring - 16 x WS2812 5050 RGB LED
×1
RobotGeek 12V DC Liquid Pump
×1
RobotGeek Solenoid Valve
×7
RobotGeek Relay
RobotGeek Relay
×8
RobotGeek 12V/10A Power Supply
×1
RobotGeek 6V/2A Power Supply
×1
RobotGeek DC Power Squid
×2
RobotGeek Silicone Tubing
×1
RobotGeek 3-Pin Coupler
×1
RobotGeek Standoff Variety Pack
×1
RobotGeek 3-Pin Sensor Cable
×1
Check Valve
×1
6 Outlet Splitter Distributor Valve
×1
Arduino UNO
Arduino UNO
OPTION: In place of the Geekduino, you can use any standard Arduino UNO/Duemilanove board.
×1

Software apps and online services

Arduino IDE
Arduino IDE

Story

Read more

Code

Code snippet #2

Plain text
// Selections
String selectionLine[14] = {
                   "                   ",  //buffer line. Leave here or experience terror.
                   "1. Red             ", 
                   "2. Green           ",
                   "3. Blue            ",
                   "4. Yellow          ",
                   "5. White           ",
                   "6. Black           ",
                   "7. Red & Yellow    ", 
                   "8. Green & Blue    ",
                   "9. Black & White   ",
                   "10. Black & Yellow ",
                   "                   ",  //buffer line. Leave here or experience terror.
                   "                   ",  //buffer line. Leave here or experience terror.
                   "End of List        "   //buffer line. Leave here or experience terror.
                   };

Code snippet #5

Plain text
  if ( debounce[2].fell() )
  {
    switch (drinkSelectCounter)
    {
      case 1: // Red
      lcd.setCursor(0, 0);
      lcd.print(promptLine[2]);
      colorWipe(strip.Color(255, 0, 0), 50); // Red
      digitalWrite(PUMP_RELAY_PIN, HIGH); // Turn on the pump
      digitalWrite(SELECTED_RELAY_PIN[0], HIGH); // Open Solenoid valve 1
      delay(PUMP_TIME); // Run for the set amount of time
      digitalWrite(SELECTED_RELAY_PIN[0], LOW); // Close Solenoid valve 1
      digitalWrite(CLEAN_RELAY_PIN, HIGH); // Open Solenoid valve 7
      delay(PUMP_TIME); // Run for the set amount of time
      digitalWrite(CLEAN_RELAY_PIN, LOW); // Close Solenoid valve 7
      digitalWrite(PUMP_RELAY_PIN, LOW); // Turn off the pump
      break;

Github file

https://github.com/robotgeek/robotGeekLibrariesAndtools/archive/master.zip

Credits

RobotGeek Team

RobotGeek Team

35 projects • 208 followers
The RobotGeek team is a 6-man operation that wants to make it even easier to use Arduino to make electronics and robots.
Wade Filewich

Wade Filewich

35 projects • 102 followers
I make technology that makes plants grow

Comments