MODE 1 — LINKS/RECHTS

Easy · 45 min · Fast kostenlos

Ziel & Anwendung

JoystickButton startet eine zufällige Verzögerung (1–4 Sekunden), dann zeigt entweder S1 oder S2 das Signal — der Spieler muss blitzschnell die richtige Seite drücken (touch1=links, touch2=rechts). Die Bestzeit bleibt als Schleppzeiger auf S3 stehen. Falsche Seite: Buzzer SHORT_BLINK als Strafe.

  • Zufällige Wartezeit mit anschließendem Links/Rechts-Signal für Reaktionstest-Mechanik aufbauen.
  • Reaktionszeit in Millisekunden messen und als Bestzeit-Schleppzeiger auf S3 darstellen.
  • Falsche-Seite-Erkennung mit Buzzer-Penalty implementieren.

Anschluss & Funktion

Motoren am Board

AnschlussMotorAufgabe
S1180°-ServoLinks-Signal-Fahne, klappt hoch wenn links gefragt ist
S2180°-ServoRechts-Signal-Fahne, klappt hoch wenn rechts gefragt ist
S3180°-ServoBestzeit-Schleppzeiger, bleibt auf persönlichem Rekord stehen
S4360°-ServoDreht kurz als Belohnung bei jedem Treffer
S5360°-ServoDreht gegenläufig als Warnsignal bei Fehltreffer
S6180°-ServoZeigt an, ob der letzte Versuch Treffer oder Fehltreffer war
STEPPERSchrittmotorZählt jeden Versuch mechanisch mit
DCDC-MotorKurzer Vibrationsimpuls bei neuer Bestzeit

Materialliste

  • Kartonstreifen je ca. 8 × 2 cm als Flaggen-Zeiger (3 Stück)
  • Zwei Karton-Pads als touch1- und touch2-Markierungen (L und R beschriften)
  • Trennlinie aus Karton in der Mitte als optische Trennung Links/Rechts
  • Filzstift für Beschriftung
  • Klebeband und Heißkleber

Step-by-Step Tutorial

  1. Reaktions-Arena aufbauen

    Kartonplatte (25 × 15 cm) als Spielfeld. Vertikale Trennlinie aus Karton in der Mitte. Links: S1-Servo mit Flaggen-Zeiger (rot), touch1-Pad markiert als 'L'. Rechts: S2-Servo mit Flaggen-Zeiger (grün), touch2-Pad markiert als 'R'. S3 unten Mitte als Bestzeit-Zeiger.

    Check: Klare optische Trennung Links (S1) und Rechts (S2) — touch1 links, touch2 rechts eindeutig positioniert

    Tipp: Trennlinie aus einem hochkant gestellten Kartonstreifen in der Mitte — eindeutige Seiten-Zuordnung ist das A und O dieses Spiels.

  2. Signal-Flaggen auf S1 und S2 montieren

    S1 und S2 mit Plastik-Horn bestücken. Kleine Flaggen-Kartons (5 × 3 cm) flächig auf Horn kleben. In Neutral-Stellung zeigt Flagge nach unten — unsichtbar. Bei Signal: Flagge klappt nach oben — sichtbar und auffällig. Hebelarm maximal 5 cm halten.

    Check: S1 und S2 zeigen in Neutralstellung nach unten (eingeklappt) und im Signal-Moment nach oben

    Tipp: Flaggen-Zeiger aus farbigem Papier (rot links, grün rechts) für schnelle visülle Erkennung. Leuchtende Farben helfen bei hoher Reaktionsgeschwindigkeit.

  3. Bestzeit-Zeiger S3 montieren

    S3 mit Horn und Zeiger bestücken. Skala invertiert beschriften: schnell rechts, langsam links. Zeiger bleibt auf Bestzeit stehen bis eine bessere Zeit erzielt wird — Schleppzeiger-Funktion.

    Check: S3 steht ganz rechts bei der schnellsten Zeit und wandert nach links, je langsamer die Reaktion war

    Tipp: Skala invertiert beschriften — Zeiger fährt bei besserer Zeit weiter nach rechts.

  4. Leichtgängigkeits-Test ohne Strom

    S1 und S2 von Hand durchdrehen: Flagge klappt auf und zu? Keine seitliche Verdrehung? S3 von Hand drehen: kein Klemmen? Erst dann einschalten.

    Check: Alle Flaggen-Zeiger klappen frei auf und zu. S3 dreht leicht.

    Tipp: Flaggen müssen wirklich nach unten klappen — nicht waagerecht hängen bleiben. Gewicht der Flagge nach unten verlagern falls nötig.

  5. MODE 1 aktivieren — Reaktionstest spielen

    Reaktionsspiele → MODE 1. JoystickButton drücken: Countdown beginnt. Zufällig nach 1–4 Sekunden: linke oder rechte Flagge klappt auf. Sofort touch1 (links) oder touch2 (rechts) drücken. Reaktionszeit in ms im Display. S3 hält Bestzeit. Falsche Seite: Buzzer SHORT_BLINK.

    Check: JoystickButton startet Runde. Nach zufälliger Pause: Flagge klappt auf. Richtige Seite tippen = Reaktionszeit angezeigt.

    Tipp: Warten: keine Taste drücken bevor Flagge erscheint — Frühstart wird erkannt (Signal noch nicht aktiv) und gilt als Fehler.

  6. Mehrere Runden spielen und Bestzeit verbessern

    10 Runden spielen. S3 nach jeder Bestzeit-Verbesserung beobachten: rückt er weiter rechts? Durchschnittliche Reaktionszeit für Menschen beträgt 200–300 ms. Unter 200 ms: sehr gut.

    Check: S3 rückt bei jeder Bestzeit-Verbesserung weiter nach rechts

    Tipp: Bestzeit-Limit: unter 150 ms ist fast unmöglich für Menschen — Ziel ist es unter 250 ms zu kommen.

Troubleshooting

  • Signal erscheint nie — Flagge klappt nicht auf — JoystickButton muss gedrückt werden um Runde zu starten (active=true). Dann warten bis signalTime erreicht ist. Display zeigt targetSide (0=warte, 1/2=aktiv).
  • Reaktionszeit wird als 0 ms angezeigt — Signal wurde gedrückt bevor Flagge erschien (Frühstart). signalOn prüfen: nur wenn (millis() >= signalTime) wird Zeit gemessen. reactionMs = millis() - signalTime.

Modifikationen & Sicherheit

  • Pro-Tipp: Zufallsverzögerung auf 500–6000 ms erhöhen für höheren Überraschungseffekt.
  • Erweiterung: Punktezähler auf Display — nach 10 Runden Gesamtpunktzahl ausgeben.
  • Sicherheit: Frühstart-Penalty klar kommunizieren — Spieler der vor dem Signal drückt muss Runde wiederholen.

Wichtige Code-Teile

// JoystickButton: Runde starten
if(isButtonPressed(JoystickButton, lastJoyBtn0) && !active) {
    active = true;
    targetSide = random(1, 3); // 1=links, 2=rechts
    signalTime = millis() + random(1000, 4000); // Zufällige Pause
}
// Signal-Flaggen
bool signalOn = active && millis() >= signalTime;
servocontroller.setServoPulse(1, (signalOn && targetSide == 1) ? 2000 : 1000);
servocontroller.setServoPulse(2, (signalOn && targetSide == 2) ? 2000 : 1000);
// Bestzeit-Schleppzeiger
servocontroller.setServoPulse(3, map(constrain(bestMs, 0, 2000), 0, 2000, 2000, 1000));
// Reaktion auswerten
if(signalOn) {
    bool hit = (targetSide == 1 && touch1) || (targetSide == 2 && touch2);
    bool wrong = (targetSide == 1 && touch2) || (targetSide == 2 && touch1);
    if(hit) { reactionMs = millis() - signalTime; if(reactionMs < bestMs) bestMs = reactionMs; }
    if(wrong) Buzzer.setMode(SHORT_BLINK);
}

Ähnliche Projekte

  • MODE 2 — DOSIER-STOPP — Der Stepper dreht mit konstanter Geschwindigkeit auf eine Zielposition zu — touch1 stoppt ihn. Je näher man am Ziel stoppt, desto besser der Score. Encoder setzt die Zielposition (100–1000 Schritte), JoystickButton startet die Fahrt. S1 zeigt Stepper-Position, S2 die Ziel-Markierung, S3 den Score-Zeiger (kleiner Wert = besser).
  • MODE 4 — STICK CATCH — Drei Servos halten gemeinsam einen Stab in der Luft. JoystickButton startet die Sequenz: 500 ms Vorwarnung (Buzzer), dann lassen alle drei gleichzeitig los. Der Spieler muss den fallenden Stab innerhalb von 800 ms mit touch1 oder touch2 fangen. Reaktionszeit wird gemessen und die Bestzeit gespeichert.
  • MODE 10 — ALL-IN-ONE — Der ultimative Reaktionstest kombiniert drei Sinne nacheinander: Erst ein optisches Signal, dann ein Ton, dann heißt es blitzschnell die richtige Taste treffen. Wer alle drei Phasen sauber durchläuft und trotzdem schnell reagiert, holt sich die Bestzeit.