Das Ziel dieser Arbeit ist es, einen Schach-Tisch zu konstruieren und programmieren, welcher in der Lage ist, Schachfiguren autonom zu bewegen.
Der Schwerpunkt liegt dabei insbesondere auf der Programmierung des eingebettenen Systems.
Dieses besteht einerseite aus der Positionserkennung und Steuerung der Hardwarekomponenten (Schachfiguren) und andererseits aus der Kommuniktation zwischen dem Tisch selbst und einem in einer Cloud befindlichen Server.
Zum einen ist es möglich, einen Spieler gegen einen Tisch als virtuellen Gegner spielen zu lassen. Es wird somit ein Spiel für eine Einzelperson ermöglicht.
Zum anderen ist es möglich, zwei Tische miteinander zu verbinden und zwei Spieler geneinander spielen zu lassen.
Die Tische dienen dann nur als Spiegel der Schachzüge. Die Züge des ersten Spielers werden dann auf den anderen Tisch (beim zweiten Spieler) gespiegelt und umgekehrt.
So ist auch ein Spiel möglich, auch wenn sich die Spieler nicht am selben Ort befinden.
Mittels der Informatik werden diverse Technologien von verschiedenen Einzelsystemen zu einem Gesamtprodukt zusammengesetzt.
Zu diesen Einzelsystemen gehören:
Hier bietet die FH-Aachen einen breit gefächerten Wahlmodulkatalog an, welchen einen dabei Untersützt sich in verschiedenen Bereichen zu spezialisieren.
Damit ein System überhaupt erst programmiert werden kann, muss man sich Gedanken über die Elektronik und Verkabelung des Systems machen.
Welchen Hardware will ich eigentlich nutzen und warum?
Wie soll mein System später mit seiner Umwelt kommunizieren?
Auch die Frage nach der Geschwindigkeit spielt hierbei eine Rolle.
Im Laufe des Informatikstudium an der FH-Aachen wird man auch in grundlegender Elektronik unterrichtet.
Auslegen von Platinen und Bauteilen, welche Treiber benötigen die Motoren oder welche Spezifikationen müssen berücksichtigt werden.
Insgesamt zwei Schrittmotoren für die X- und die Y-Beweung sind im Schachtisch verbaut.
Zudem sind noch zwei Elektromageneten im Tisch verbaut, die die Schachfiguren wie von Geisterhand über den Tisch ziehen.
Zusätzlich befinden sich unter jeder Kachel des Schachfelds, noch Magnetsensoren, um zu erkennen, ob der Spieler eine Figur bewegt.
Neben der Verkabelung dieser Steuerungs-Komponenten, enthält das System noch ein Display zur Eingabe von Befehlen durch den Benutzer.
Mechanik ist die Lehre von der Bewegung von Körpern sowie den dabei wirkenden Kräften.
Um die Schachfiguren von einem Feld auf das nächste zu versetzten, braucht es Mechanik.
Mechanik ist nicht direkt Teil des Informatikstudiums, doch die Verwendung und das Programmieren von Motoren definitiv.
Die Bewegung im Schachtisch geht von zwei Schrittmotoren und zwei Elektromagneten aus.
Alle Schachfiguren müssen daher magnetisch sein.
Die Elektromagnete werden unter dem Tisch in X- und Y-Richtung verschoben.
Für jede Richtung ist einer der Schrittmotoren zuständig. An der gewünschten Position angekommen, wird einer der Elektromagenten anktiviert, sodass die die Figur oberhalb der Platte magnetisch an diesen gebunden ist.
Zwei Elektromagneten sind dehalb nötig, um die Ecken der Platte erreichen zu können.
Wäre nur ein Elektromagnet mittig angebracht, würde die Konstruktion des Kreuztisches verhindern, dass die Ecken des Tisches erreicht werden können.
Cloud-Computing ist die bedarfsabhängige Bereitstellung von IT-Ressourcen über das Internet.
Der Tisch benötigt eine Cloud-Verbindung, um andere Spieler zu finden und zu verbinden. Zudem wird auch die Berechnung von möglichen Zügen in der Cloud ausgeführt.
Doch was ist die Cloud? Die Cloud ist ein Computer oder mehrere Computer, welche mit dem Internet verbunden sind und für andere erreichbar sind.
Dieser kann auf bestimmte Anfragen genau definierte Antworten zurücksenden.
Im Fall der Schachcloud steht dieser in einem Rechenzentrum in Frankfurt; alle Schachtische, die sich im Internet befinden, versuchen eine Verbindung mit der Schach-Cloud herzustellen und ihren Gegenspieler nach neuen Schachzügen.
Dazu sendet der Tisch seine eindeutige Nummer und die Position aller Figuren auf dem Schachbrett.
Die Cloud führt noch andere Aktionen aus, wie das Zusammenbringen von Spielern, welche auf der Suche nach einem Spiel sind (Matchmaking).
Auch werden alle bereits geführen Spiele gespeichert und können mit anderen geteilt werden.
Eigenschaften | Atomic Chess Table |
---|---|
Feldabmessungen (LxBxH) | 57x57mm |
Abmessungen (LxBxH) | 620x620x170mm |
Gewicht | 5.7kg |
Konnektivität | WLAN,LAN,USB |
Automatisches Bewegen der Figuren | ja |
Erkennung Schachfigurstellung | ja |
Spiel Livestream | ja |
Cloud anbindung (online Spiele) | ja |
Parkposition für ausgeschiedene Figuren | ja |
Stand-Alone Funktionalität | ja |
Wenn du mehr über das Projekt erfahren möchtest, gibt es mehrere Möglichkeiten. Da diese Projekt als OpenSource-Projekt veröffentlicht wurde, stehen alle notwendigen Dateien frei zur Verfügung. Darunter zählen der Quellcode der Software, die Schaltpläne für die Elektronik und alle mechanischen Zeichnungen. All diese Dateien können HIER heruntergeladen werden.
In der Spielübersicht sind alle letzten Spiele aufgelistet. Die Spielernamen werden zufällig generiert und sind mit einem Prefix versehen. Dieser Prefix zeigt, von welchem Typ der Spieler ist. Hierbei gibt es diese Varianten:
Nein das geht leider nicht, aber wenn du handwerklich begabt bist kannst du den AtomicChess Schachtisch selber bauen. Alle notwendigen Dateien können HIER heruntergeladen werden.
Wenn du weitere Fragen hast rund um dieses Projekt, kannst du gerne eine E-Mail and die folgende Adresse schicken: info@atomicchess.de
Der Tisch signalisiert seinen Zustand nicht nur über das eigebaute Display, sondern auch über die LED-Streifen am Boden. Dieser leuchtet in verschiedenen Farben jenachdem in welchem Zustand oder welche aktion der Tisch gerade ausführt.
Bei diesem Projekt wurden mehrere verschiedene Sprachen verwendet, da diese Projekt aus vielen einzelnen unterschiedlichsten Services besteht.