MODE 10 — KATAPULT

Medium · 1h · Fast kostenlos

Ziel & Anwendung

Sport verdient Belohnung! Erst sammelst du dein Rep-Ziel, dann startet der Dreh-Knopf die Katapult-Sequenz: spannen, abschießen, nachladen — in klar getrennten Phasen für maximale Dramatik. Am Ende fliegt eine Süßigkeit durch den Raum, und der Förderer legt automatisch Nachschub bereit.

  • Belohnung erst nach erreichtem Trainingsziel freischalten
  • Katapult-Ablauf in klar getrennte Phasen gliedern: bereit, spannen, abschießen, abkühlen
  • Schrittmotor als automatischen Nachschub-Förderer einsetzen

Anschluss & Funktion

Motoren am Board

AnschlussMotorAufgabe
S1180°-ServoKatapult-Arm, spannt und schleudert die Süßigkeit
S2180°-ServoFortschritts-Zeiger zum Trainingsziel
S3180°-ServoZeigt das eingestellte Ziel
STEPPERSchrittmotorMunitions-Förderer, schiebt nach jedem Schuss Nachschub nach
DCDC-MotorVibration im Moment des Abschusses

Materialliste

  • Kartonbox als Katapult-Gehäuse (ca. 15×10×10 cm)
  • Löffel oder Karton-Arm als Katapult-Schaufel (an einem Servo-Horn befestigt)
  • Gummiband als Spann-Element für den Katapult-Arm
  • Kartonröhre als Magazin/Rutsche für die Süßigkeiten
  • Heißkleber

Step-by-Step Tutorial

  1. Katapult-Arm und Magazin aufbauen

    Baue eine Kartonbox als Gehäuse. Schraube das Plastik-Servo-Horn auf den Katapult-Servo und klebe einen Karton-Arm flächig darauf. Spanne ein Gummiband vom Arm zur Gehäusevorderkante. Der Servo hält den Arm zunächst zurück und lässt ihn dann in einer schnellen Bewegung nach vorne schnellen, sodass die Süßigkeit fliegt. Positioniere eine Kartonröhre als Magazin schräg über dem Arm.

    Check: Der Katapult-Arm schlägt bei Auslösung schnell durch

    Tipp: Ein Gummiband zwischen Arm und Gehäuse wirkt als Feder — der Servo hält zurück und lässt dann plötzlich los

  2. Stepper als Munitions-Förderer aufbauen

    Schraube den Stepper-Mitnehmer auf die Welle. Klebe eine Kartonscheibe mit mehreren Aussparungen für Süßigkeiten flächig auf den Mitnehmer als Drehteller. Nach jedem Abschuss dreht der Schrittmotor den Teller ein Stück weiter. Süßigkeiten oben auflegen — sie rutschen durch die Schwerkraft von selbst in Position.

    Check: Der Schrittmotor dreht nach jedem Schuss und schiebt eine neue Süßigkeit in Position

    Tipp: Ein Drehteller mit mehreren Fächern reicht für eine ganze Trainingsrunde

  3. Zähl-Logik und Katapult-Freigabe testen

    Der Dreh-Knopf stellt das Rep-Ziel ein. Eine Berührungsfläche zählt Reps hoch — der Fortschritts-Zeiger wandert auf den Ziel-Zeiger zu. Ist das Ziel erreicht, zeigt eine Klappe Bereitschaft. Erst jetzt löst ein Druck auf den Dreh-Knopf die Katapult-Sequenz aus.

    Check: Die Katapult-Sequenz startet erst, wenn das Ziel erreicht UND der Dreh-Knopf gedrückt ist

    Tipp: Eine Berührungsfläche zählt Reps, die andere setzt zurück, der Dreh-Knopf stellt das Ziel ein

  4. Leichtgängigkeitstest des Katapult-Arms vor dem Einschalten

    Katapult-Arm von Hand zurückziehen und loslassen: schwingt er frei durch? Ist das Gummiband zu straff gespannt? Den Servo von Hand in beide Endstellungen bewegen: kann er den Arm halten und wieder loslassen? Den Drehteller von Hand drehen: läuft er leicht? Erst wenn alles frei läuft, Strom einschalten.

    Check: Der Katapult-Arm schwingt frei durch — kein Widerstand, kein Haken

    Tipp: Bei einem längeren Arm die Gummiband-Spannung reduzieren, damit der Servo nicht überlastet wird

  5. Katapult-Sequenz durchführen und kalibrieren

    Strom einschalten und Reps sammeln. Ist das Ziel erreicht, zeigt eine Klappe Bereitschaft und ein Ton ertönt. Dreh-Knopf drücken: der Arm spannt sich sichtbar, schnellt dann in einer schnellen Bewegung nach vorne und schleudert die Süßigkeit, während der Förderer gleichzeitig Nachschub bereitstellt. Nach einer kurzen Abkühlphase ist alles für die nächste Runde bereit.

    Check: Nach dem Abschuss folgt eine kurze Abkühlphase, danach lädt der Förderer zuverlässig nach

    Tipp: Die kurze Spannphase vor dem eigentlichen Schuss baut spürbar Spannung auf

Troubleshooting

  • Katapult-Arm schleudert nicht weit genug — Gummiband-Spannung erhöhen oder den Arm etwas kürzen — der Servo muss den gespannten Arm sicher halten können
  • Doppelabschuss direkt hintereinander — Prüfen, ob die Abkühlphase vollständig abgewartet wird, bevor eine neue Runde beginnt
  • Der Förderer dreht nicht nach dem Schuss — Prüfen, ob der Drehteller frei läuft und nicht durch verklemmte Süßigkeiten blockiert wird

Modifikationen & Sicherheit

  • Pro-Tipp: Rep-Ziel höher stellen für eine echte Sport-Session vor der Belohnung
  • Pro-Tipp: Mehrere Süßigkeiten-Sorten im Drehteller mischen, sodass die Sorte bei jedem Schuss überrascht
  • Sicherheit: Nur leichte Süßigkeiten verwenden — das Katapult ist für kleine, leichte Objekte ausgelegt, nicht für schwere Projektile

Wichtige Code-Teile

// touch1 zählt Reps, Encoder setzt Ziel
if(isButtonPressed(touch1, lastT1_9)) {
    taskCnt++;
    Buzzer.setValue(120);
    stepper.move(15);
}
if(touch2) { taskCnt = 0; launched = false; launchStep = 0; }

bool readyToLaunch = (taskCnt >= taskGoal);

// Katapult starten wenn Ziel erreicht + JoystickButton
if(readyToLaunch && JoystickButton && !launched) {
    launched = true; launchStep = 1; launchTimer = millis();
}

// 4-Phasen State-Machine
switch(launchStep) {
    case 1: // Spannen
        if(!ismoving[1]) servocontroller.startMove(1, 1200, 400);
        if(millis() - launchTimer > 500) { launchStep = 2; launchTimer = millis(); }
        break;
    case 2: // Abschuss!
        servocontroller.startMove(1, 2000, 80); // Schneller Schlag
        Buzzer.setMode(HEARTBEAT);
        setMotorspeed(100);
        stepper.move(200); // Munitions-Förderer
        if(millis() - launchTimer > 300) { launchStep = 3; launchTimer = millis(); }
        break;
    case 3: // Cooldown
        setMotorspeed(0); Buzzer.setValue(0);
        if(millis() - launchTimer > 1500) { launched = false; launchStep = 0; taskCnt = 0; }
        break;
}

// S2: Fortschritt, S3: Ziel
servocontroller.setServoPulse(2, map(constrain(taskCnt, 0, taskGoal), 0, taskGoal, 1000, 2000));
servocontroller.setServoPulse(3, map(constrain(taskGoal, 1, 30), 1, 30, 1000, 2000));

stepper.run();

Ähnliche Projekte

  • MODE 1 — PUSH-UPS — Schluss mit dem Mitzählen im Kopf! Ein Abstandssensor unter deiner Brust erkennt jede Auf- und Ab-Bewegung und zählt nur echte, vollständige Liegestütze. Der Fortschritts-Zeiger wandert Richtung Ziel — und wenn du ankommst, legt die Maschine einen kleinen Sieges-Tanz hin.
  • MODE 4 — SQUATS — Kniebeugen richtig zählen — mit doppelter Sicherheit! Ein Lage-Sensor am Oberschenkel und ein Abstandssensor am Boden bestätigen gemeinsam jede vollständige Bewegung. Nur wenn beide zustimmen, zählt die Wiederholung — der Fortschritts-Zeiger wandert Richtung Ziel, der Zähler rückt mechanisch vor.
  • MODE 6 — HAMPELMANN — Hampelmann — aber mit Style! Nur ein echter, vollständiger Sprung mit Armbewegung zählt als Wiederholung, reines Hüpfen oder Armwedeln allein wird ignoriert. Zwei Tänzer-Servos drehen bei jeder Rep gegenläufig, und alle paar Sprünge gibt's eine kleine Jubel-Pause.