Brauche Hilfe beim Cocktailspender, Relais machen nicht das was sie sollen

Hallo,

habe ein kleines Problem, habe mit einem Freund einen Cocktailspender gebaut.
Es gibt zwei Knöpfe (Taster), bei einem soll nur ein Shot rauskommen beim anderen ein "Cocktail" oder Longdrink.
Es gibt zwei Pumpen. Eine für den Alkohol und eine für die beliebige andere Zutat.
Optional soll bei dem betätigen eines Tasters noch eine LED angehen.
Die Pumpen werden über Relais mit Strom versorgt, die LED's und die Relais über den Arduino, es gibt also zwei getrennte Stromkreise.

Ich bin noch recht frisch in der Arduino-Scene, Grundkenntnisse sind aber eigentlich vorhanden, aber irgendwie komme ich nicht weiter, hab den Code jetzt schon mehrfahr geändert und Sachen probiert, irgendwas stimmt aber nicht.

Verkabelt ist alles richtig, habe ich bereits mehrfach geprüft.

Habe es auch mit #define anstatt int probiert und natürlich auch schon google gefragt..
Problem ist das die Relais entweder dauernd an sind oder die einfach so schalten ohne das der Taster betätigt wird.

INFO: Relais schaltet auf LOW

Danke schon mal für eure Hilfe!

Code ist so:

int LEDBoden = 2;
int LEDFlasche = 3;

int TasterShot = 10;
int TasterCocktail = 11;

int PumpeOben = 12;
int PumpeUnten = 9;

int SchalterzustandShot;
int SchalterzustandCocktail;

void setup() {

pinMode (TasterShot, INPUT);
pinMode (TasterCocktail, INPUT);

pinMode (LEDBoden, OUTPUT);
pinMode (LEDFlasche, OUTPUT);
pinMode (PumpeOben, OUTPUT);
pinMode (PumpeUnten, OUTPUT);

digitalWrite (LEDBoden, HIGH);
digitalWrite(LEDFlasche, LOW);

}

void loop() {
  
	SchalterzustandShot = digitalRead (TasterShot);
	SchalterzustandCocktail = digitalRead (TasterCocktail);

if (SchalterzustandShot == 1)
{
	digitalWrite(LEDFlasche, HIGH);

	digitalWrite(PumpeOben, LOW);
		delay(2000);
	digitalWrite(PumpeOben, HIGH);
}
if (SchalterzustandCocktail == 1)
{
	digitalWrite(LEDFlasche, HIGH);

	digitalWrite(PumpeOben, LOW);
	delay(2000);
  digitalWrite(PumpeOben, HIGH);
	digitalWrite(PumpeUnten, LOW);
	delay(6000);
	digitalWrite(PumpeUnten, HIGH);
}
}

Du solltest auch besser beschreiben, was wofür ist.
Eine bessere Dokumentation ist für uns immer wichtig !

LEDFlasche ?
LEDBoden ?

LEDFlasche bleibt z.B. immer HIGH.

Und hast du Pulldown-Widerstände an den Tastereingängen ?

habt ihr an den Tastern Pulldown Widerstände verbaut?
Edit: zu Spät
sonst so:

const int LEDBoden = 2;
const int LEDFlasche = 3;

const int TasterShot = 10;
const int TasterCocktail = 11;

const int PumpeOben = 12;
const int PumpeUnten = 9;

bool SchalterzustandShot;
bool SchalterzustandCocktail;

void setup() {

pinMode (TasterShot, INPUT_PULLUP);
pinMode (TasterCocktail, INPUT_PULLUP);

pinMode (LEDBoden, OUTPUT);
pinMode (LEDFlasche, OUTPUT);
pinMode (PumpeOben, OUTPUT);
pinMode (PumpeUnten, OUTPUT);

digitalWrite (LEDBoden, HIGH);
digitalWrite(LEDFlasche, LOW);

}

void loop() {
 
  SchalterzustandShot = digitalRead (TasterShot);
  SchalterzustandCocktail = digitalRead (TasterCocktail);

if (!SchalterzustandShot)
{
  digitalWrite(LEDFlasche, HIGH);

  digitalWrite(PumpeOben, LOW);
    delay(2000);
  digitalWrite(PumpeOben, HIGH);
  digitalWrite(LEDFlasche, LOW);
}
if (!SchalterzustandCocktail)
{
  digitalWrite(LEDFlasche, HIGH);

  digitalWrite(PumpeOben, LOW);
  delay(2000);
  digitalWrite(PumpeOben, HIGH);
  digitalWrite(PumpeUnten, LOW);
  delay(6000);
  digitalWrite(PumpeUnten, HIGH);
  digitalWrite(LEDFlasche, LOW);
}
}

Verkabelt ist alles richtig, habe ich bereits mehrfach geprüft.

Entnommen aus: How to use this forum...
If you want to receive good answers to your questions in the Arduino forums - be sure to provide us with your complete source code, your schematic and/or hookup diagram (we much prefer a schematic if you have one), as well as clear pictures relating to your project (ie - with a schematic and a clear picture of your breadboard, we can easily spot bad connections, for instance).

I cannot tell you how many times questions have gone round and round with people seeking help, only to find out that they had made a wiring mistake, which we could have spotted fairly quickly had they originally provided us with pictures, etc of their project.