Bild 1: Beim Chess Buddy tanzen die Spielfiguren wie von Geisterhand geführt über das Schachbrett.

Bild 1: Beim Chess Buddy tanzen die Spielfiguren wie von Geisterhand geführt über das Schachbrett. Linzer Technikum

Bild 1: Innenleben des Chess Buddy mit der Drylin-Linearführung von Igus bestehend aus zwei Präzisions-Aluminiumwellen angetrieben von zwei Schrittmotoren Typ Nema 17. Die Linearführung bewegt über den Elektromagneten die Figuren. Die Position der Figuren wird über eine Hallsensorenmatrix erfasst.

Bild 2: Innenleben des Chess Buddy mit der Drylin-Linearführung von Igus bestehend aus zwei Präzisions-Aluminiumwellen angetrieben von zwei Schrittmotoren Typ Nema 17. Die Linearführung bewegt den Elektromagneten über die Figuren. Die Position der Figuren wird über eine Hallsensorenmatrix erfasst. Linzer Technikum

Bild 3: Blockschaltbild des Linearantriebs mit den wesentlichen Komponenten. Der ATmega 2560 übernimmt die Steuerung des Bewegungsablaufs. Die Schachkompetenz kommt vom PC, der über die USB-Schnittstelle angeschlossen ist.

Bild 3: Blockschaltbild des Linearantriebs mit den wesentlichen Komponenten. Der ATmega 2560 übernimmt die Steuerung des Bewegungsablaufs. Die Schachkompetenz kommt vom PC, der über die USB-Schnittstelle angeschlossen ist. Linzer Technikum

Die Idee zu einem Schachcomputer, bei dem die Figuren wie von Geisterhand auf dem Brett bewegt werden, kam Julian Krydl und Sebastian Jahn vom Linzer Technikum LiTec anlässlich einer Diplomarbeit. Es lag auf der Hand, dass beim Chess Buddy (Bild 1) für die Spielzüge ein XY-Antrieb zum Einsatz kommen muss. Versuche mit Kugelumlaufführungen für das Linearsystem erwiesen sich als zu laut. So fiel die Wahl auf zwei Präzisions-Aluminiumwellen mit Drylin-RJMP-Vollkunststofflager von Igus. Für den Antrieb des leisen und sanft regulierbaren Linearsystems werden Nema-17-Schrittmotoren verwendet. Igus hat im Rahmen seines Young Engineers Support (Yes) das Projekt unterstützt. Die magnetischen Spielfiguren werden über Elektromagnete unter dem Schachbrett auf dem zweiachsigen Linearsystem positioniert. Bild 2 zeigt das Innenleben des Chess Buddy mit den wesentlichen Komponenten.

Der Roboter muss erst mal Schach lernen

Um zu erkennen, welchen Schachzug das Gegenüber gespielt hat, erfasst der Chess Buddy mittels Hallsensoren die Züge und liest sie ein. Die Sensoren erkennen, ob ein Magnet am Feld platziert ist oder nicht und errechnen daraus den durchgeführten Zug. Daraufhin werden die anschließenden Schachzüge des Roboters durch ein PC-Programm gesteuert und durch das Linearsystem umgesetzt, dessen Blockschaltbild in Bild 3 dargestellt ist. Je nach Spielstärke des Spielers kann der Schwierigkeitsgrad des Roboters angepasst werden, sodass sich der Schachroboter auch als Trainingspartner eignet. Die Steuerung des Linearsystems übernimmt der Low-power-8-Bit-AVR-Mikrocontroller ATmega2560 mit internem Flash. Er liefert 16 MIPS bei 16 MHZ Takt. Über I2C arbeitet er mit einem ATmega328p zusammen, ebenfalls ein 8-Bit-Mikrocontroller.

Ohne Software geht nichts

Die Software teilt sich in zwei Teile: Der Atmega2560 übernimmt die Bewegungsabläufe, das Einlesen der Züge und so weiter. Für die Berechnung der Züge ist ein leistungsstärkeres Gerät erforderlich. Derzeit wird dies mit einem normalen Windows-PC realisiert. Zum Einsatz kommt eine Open-Source-Software mit dem Namen NGPlay. Diese ist kompatibel mit dem Chess Engine Communication Protocol. Der Programmcode am Arduino umfasst insgesamt 37138 Bytes. Das sind alleine im Hauptprogramm 1500 Zeilen Code.

Den Chess Buddy kann man noch nicht kaufen. Nach Angabe des Technikums wäre es aber eine gute Idee, diesen zu vermarkten. Allerdings muss dazu der Prototyp noch weiter optimiert und überarbeitet werden. Vielleicht entsteht wirklich eine kompakte Maschine, die jeder benutzen kann, oder es wird ein DIY-Bausatz für Bastler. Die Höhere Technische Lehranstalt Linz würde sich freuen, jemanden zu finden, der sie beim Vermarkten unterstützen möchte.