Benutzer-Werkzeuge

Webseiten-Werkzeuge


Seitenleiste

projektewise24:projekt8:planung

4 Gewinn(t)er

Wir wollen einen Roboter bauen, der das Spiel „4-Gewinnt“ gegen einen menschlichen Gegner spielen kann. Er soll das Spiel eigenständig und zuverlässig spielen können, dabei strategisch vorgehen und mit dem Spieler auf einfache Weise interagieren. Unsere Idee ist es, dass der Roboter in der Lage ist, Spielsteine präzise in das Spielfeld einzuwerfen, die aktuelle Spielsituation zu erkennen und darauf zu reagieren.

Links zu ähnlichen Projekten:

Ziele und Prioritäten

Was der Roboter können muss:

  • auslosen wer beginnt
  • Spielsteine in Spalte fallen lassen
  • Spielsteine im Spielfeld erkennen

Was der Roboter können soll:

  • gute Züge machen
  • mit dem Spieler kommunizieren

Nice to have

  • nur die besten Züge machen
  • verschiedene Schwierigkeitsstufen

Was wir bewusst weglassen:

Szenario-Skizze

Teilaufgaben und Arbeitspakete

  1. Gegnerischen Zug im Spielfeld erkennen
  2. Schienenmechanismus
  3. Reinfallmechanismus
  4. Spiellogik
  5. Kommunikation
  6. Konstuktion

1. Gegnerischen Zug im Spielfeld erkennen (GZS)

Dieser Teilbereich beschäftigt sich mit dem Erkennen der Position des vom Gegner eingeworfenen Steins. Dies wollen wir erreichen, indem wir jeder möglichen Position einen Wert zuordnen. Der Sensor misst dann, wo der Stein eingeworfen wurde und wandelt den gemessenen Wert der Sensoren in die Positionen auf dem Spielfeld um. Dadurch ist eine Reaktion auf die Züge des Gegners erst möglich. Wir sind uns noch nicht sicher welche Art von Sensoren für diese Aufgabe am besten geeignet sind. Geplant ist bis jetzt die Verwendung von Erschütterungssensoren, die unten in jeder Spalte verbaut sind. Diese sollen idealerweise nur Spielsteine registrieren, die auch wirklich in die jeweilige Spalte gefallen sind (und nicht aus versehen auch welche in anderen Spalten).

Arbeitspakete

  • Material besorgen
  • Technik für den Sensor bauen
  • Sensoren in Gestell einbauen
  • Sensordaten aufrufen können
  • die Umwandlung von Werten in Positionen programmieren

Schnittstellen zu anderen Teilaufgaben

  • das Gestell wird auch mit dem Schienensystem verbunden
  • GZS übermittelt der Spiellogik die Position

Materialliste

  • 7 Sensoren
  • (7 3D gedruckte Fassungen für die Sensoren)

Risiken

  • die Sensoren müssen sensibel und präzise genug sein

2. Schienenmechanismus

Der Roboter soll eigenständig Züge machen können. Dafür muss der Reinfallmechanismus (siehe 3.) über den richtigen Spalt des Spielfeldes gefahren werden. Der Schienenmechanismus besteht aus einer Schiene, die über dem Spielfeld verläuft, und einem Schlitten, der von einem Motor auf der Schiene fortbewegt werden kann. Auf dem Schlitten wird der Reinfallmechanismus befestigt. Der Schienenmechanismus erfüllt seine Funktion, wenn der Schlitten zuverlässig und präzise zur gewünschten Zielposition über dem Spielfeld fahren kann. Die Zielposition muss von der Spiellogik übergeben und vom Motor exakt angesteuert werden. Entscheidend ist auch, dass der Schlitten stabil bleibt und der Reinfallmechanismus erst dann auslöst, wenn die gewünschte Position erreicht ist.

Arbeitspakete

  • Gerüst bauen
  • Mechanik zur Fortbewegung des Schlittens bauen
  • Motor so programmieren, dass Schlitten an richtige Position fährt

Materialien

  • V-Slot-Schiene
  • 4 V-Slot-Räder
  • Servo-Motor
  • Metallplatte, an der der Reinfallmechanismus befestigt wird

Schnittstellen

  • Zielposition muss von Spiellogik übergeben werden
  • Reinfallmechanismus darf erst auslösen, wenn Schlitten an Zielposition ist

Risiken

  • Zielposition wird nicht präzise genug erreicht
  • Stabilität vom Mechanismus

3. Reinfallmechanismus

Wie der Name schon sagt, ist die Aufgabe des Reinfallmechanismus, einen Stein ins Spielfeld fallen zu lassen. Dazu werden die Spielsteine des Roboters horizontal in einem Magazin gestapelt. Beim Auslösen des Mechanismus schiebt ein Motor jeweils den untersten Stein aus dem Magazin. Dieser fällt dann in eine Art Rutsche, sodass er vertikal im richtigem Spalt landet. Der Reinfallmechanismus ist erfolgreich, wenn die Spielsteine zuverlässig und präzise in den richtigen Spalt des Spielfeldes fallen. Dafür muss der Mechanismus sicherstellen, dass nur ein Stein zur richtigen Zeit ausgeworfen wird und er so gestaltet ist, dass der Stein exakt geführt wird. Zudem muss der Reinfallmechanismus genau mit dem Schienenmechanismus und der Spiellogik zusammenarbeiten. Der Mechanismus darf erst ausgelöst werden, wenn die Zielposition auf dem Spielfeld erreicht ist und die Spiellogik den Auslösebefehl gegeben hat.

Arbeitspakete

  • Material besorgen
  • Schlitten / Fahrmodul / Magazin bauen
  • programmieren des Servomoters (Stein richtig reinfallen lassen)

Materialien

  • Servomoter
  • andere Komponenten 3D-drucken

Schnittstellen

  • erst muss der Schlitten zur richtigen Position fahren und dann kann erst der Stein eingeworfen werden

Risiken

  • Stein fällt nur ungenau in den richtigen Spalt

4. Kommunikation

Die Kommunikation besteht aus einer visuellen und einer akustischen Komponente. Über zwei verschiedenfarbige LEDs soll der Roboter anzeigen können, wer am Zug ist. Besonders wichtig ist das am Anfang des Spiel, damit man überhaupt weiß wer vom Roboter als Startspielerin ausgelost wurde. Dieser Aufgabenbereich ist abgeschlossen, wenn die LEDs den aktuellen Spieler anzeigen und die akustischen Signale passend zum Ausgang des Spiels abgespielt werden. Dabei muss sichergestellt sein, dass die Signale fehlerfrei von der Spiellogik ausgelöst und auch richtig ausgegeben werden.

  • Sounds für „gewonnen“ , „verloren“ und „unentschieden“ (Piezo Piepser)
  • Sounds werden ausgelöst, wenn die Spiellogik das Ende vom Spiel registriert

Arbeitspakete

  • Blinken der LEDs programmieren
  • Sounds designen
  • Komponenten einbauen

Materialien

  • ein Piezo Piepser
  • zwei LEDs
  • Kabel

Schnittstellen

  • Komponenten erhalten Befehle von Spiellogik

Risiken

  • fehlerhafte Kommunikation

5. Spiellogik

  • Auslosung wer beginnt
  • Verarbeitung der x Positionen (Sensorsignale) zur Erkennung des Spielzuges des Spielers
  • Überprüfung (Gewonnen o. Verloren)
  • Systematische Schlussfolgerung zum eigenen Spielzug
  • Damit ein individuelle Spiellogik / Spielerlebnis

Arbeitspakete

  • Programmieren
    • Auslosverfahren
    • Verarbeitung
    • Überprüfung
    • Systematische Schlussfolgerung
    • Individuelle Spiellogik
    • Versuch künstliche Intelligenz zu integrieren
    • Befehle an die Hardware

Schnittstellen

  • Kommunikation mit den physischen Komponenten des Roboters
    • Eigene Spielzüge setzten können
    • Kommunikation mit dem Spieler
  • Zugriff auf die Programmierklasse, wo verarbeiteten Sensorsignale (x Positionen) liegen

Risiken

  • Verarbeitet x Positionen zu falschen Zügen des Spielers
  • Künstliche Intelligenz versteht das Spiel zum Teil oder ganz falsch
  • Fehlerhafte Kommunikation mit der Hardware

6. Konstruktion

Die Konstruktion bildet die Grundlage des gesamten Roboters. Ziel ist es, ein stabiles und funktionales Gerüst zu bauen, das die anderen Teilbereiche wie den Schienenmechanismus und den Reinfallmechanismus integrieren kann, wenn diese Komponenten fertig sind. Der Aufgabenbereich ist erfolgreich abgeschlossen, wenn das Gerüst alle mechanischen und elektronischen Komponenten stabil hält.

Arbeitspakete

  • Gerüst bauen

Materialien

  • Holz
  • V-Slot-Schiene
  • 3D-Druck

Schnittstellen

  • überschneidet sich mit der Konstruktion des Schienenmechanismus

Risiken

  • instabil

Gantt-Diagramm

online_gantt_20241215.pdf

erstellt auf https://www.onlinegantt.com/#/gantt

Legende:

  • Rot / Pink - Alle
  • Orange - Julius
  • Türkis - Clara
  • Grün - Jonathan
  • Dunkelblau - Julia
  • Blau - Julia, Clara
projektewise24/projekt8/planung.txt · Zuletzt geändert: 2024/12/15 23:56 von jf155