Seitenpfad:

Kartenspielroboter

Wie kann ich watten, wenn mir ein Mitspieler fehlt?

 
Elektrotechnik RaspberryPi Systems Engineering
Niryo One als Kartenspielroboter / Foto: Michael Prinz
01.10.2019 - 14.03.2020

Projektbeschreibung

Kartenspiele stellen eine beliebten Zeitvertreib für Jung und Alt dar. Je nach Kartenspiel ist eine bestimmte Anzahl oder eine Mindestanzahl an Spielern notwendig, sonst kann das Spiel nicht gespielt werden. Da nicht immer die benötigte oder gewünschte Anzahl an Spielern verfügbar ist, sollte im Rahmen von Systems Engineering 1 ein Robotersystem entwickelt werden, das einen menschlichen Mitspieler für das Spielen verschiedener Kartenspiele mit echten Spielkarten ersetzen kann.

 

Beteiligte Personen

Studierendengruppe   
 
Zentrale Spielsteuerung:Markus Wagner, Marco Westermair, Dominik Ziegler
Mensch-Maschine-Interaktion:Tobias Ertle, Manuel Mikschl, Alexander Markidonow
Kartenerkennung:Benedikt Degenstein, Ali Gözen, Thomas Henning, Dennis Religa, Burak Saglam
Roboteransteuerung:Michael Durach, Thomas Höger, Jan Sigg, Nikolas Voss
  
Betreuer:Prof. Dr. Martin Bayer, Prof. Dr. Claudia Meitinger

Veranstaltung

Systems Engineering 1 (E5-IK)

Laufzeit

WS 2019/2020

Zielsetzung

 

Entwicklung eines funktionsfähigen Prototypen eines Kartenspielroboters,

  • der einen menschlichen Mitspieler beim bayrischen Kartenspiel "Watten" für zwei  ersetzen kann.
  • der mit echten Spielkarten spielen kann.
  • der einfach erweitert bzw. modifiziert werden kann (z.B. auf andere Kartenspiele, andere Technologien zur Kartenerkennung und/oder Kartenhandhabung, etc.).

Systemüberblick

 

Umzusetzende Funktionalitäten

Zur Realisierung der Zielsetzung sollten folgende technische Funktionalitäten umgesetzt werden:

  • Zentrale Spielsteuerung zur Ansteuerung der anderen Spielkomponenten
    • Interaktion mit menschlichen Mitspielern, wann immer sinnvoll/nötig
    • Bestimmen und Ausspielen einer Karte, sofern Roboterspieler an der Reihe ist (mindestens regelkonform, nach Möglichkeit mit einer einfachen Taktik)
  • Interaktion mit dem/n menschlichen Mitspieler(n) über verschiedene Modalitäten
  • Identifizieren von Spielkarten
    • verdeckte, d.h. eigene, noch nicht ausgespielte Karten des Roboterspielers, die für menschliche Mitspieler nicht sichtbar sein sollen
    • offene, d.h. die zuletzt ausgespielte Karte (egal von welchem Spieler)
  • Aufnehmen und Bewegen von Spielkarten des Roboterspielers
    • zu Spielbeginn vom Stapel
    • während des Spiels aus einer Kartenhalterung
 

Anordnung Systemkomponenten

Folgende Abbildung zeigt die gewählte Spieleranordnung sowie definierte Ablageorte für Spielkarten vor und während des Spiels.

Spieleranordnung und Kartenablageorte
Spieleranordnung und Kartenablageorte

Modularisierung

Entsprechend der umzusetzenden technischen Funktionalitäten wurde das Projekt im Rahmen von vier Teilprojekten realisiert. Jede Funktionalität wurde für einen Raspberry Pi als Teil eines MQTT-Netzwerks umgesetzt.

Systemaufbau
Systemaufbau

Wir benutzten ...

 

Roboter Niryo One, ROS, Vakuum-Sauger, MQTT, Raspberry Pi 3B+, Raspi-Camera, Python, eSpeak, SNIPS, KI, QR Codes, 3D-Druck, YOLO, ...

Impressionen

 
Impressionen
Impressionen / (c) Michael Prinz
Brain denkt nach ...
Brain denkt nach ... / (c) Michael Prinz
 
Who beats me?
Who beats me?